Best JavaScript code snippet using cypress
testing-widgets.js
Source:testing-widgets.js
...177 function(actions, assertions) {178 return QUnit.assertOnEvent($table, 'filterEnd', actions, assertions);179 }180 ).nextTask(181 function(){ ts.setFilters( table, ['', 'e'] ); },182 function(){ assert.cacheCompare( table, 1, ['Peter', 'Bruce', 'Alex', 'Bruce Lee', 'Brenda Dexter', 'Dennis'], 'search regular', true ); }183 ).nextTask(184 function(){ ts.setFilters( table, ['', '~bee'] ); },185 function(){ assert.cacheCompare( table, 1, ['Bruce Lee', 'Brenda Dexter'], 'search fuzzy', true ); }186 ).nextTask(187 function(){ ts.setFilters( table, ['', '~piano'] ); },188 function(){ assert.cacheCompare( table, 1, ['Philip Aaron Wong'], 'search fuzzy2', true ); }189 ).nextTask(190 function(){ ts.setFilters( table, ['', 'john='] ); },191 function(){ assert.cacheCompare( table, 1, ['John'], 'search exact', true ); }192 ).nextTask(193 function(){ ts.setFilters( table, ['', '', 'a?s'] ); },194 function(){ assert.cacheCompare( table, 2, ['Dumass', 'Evans'], 'search wildcard, one character (?)', true ); }195 ).nextTask(196 function(){ ts.setFilters( table, ['', '', 'a*s'] ); },197 function(){ assert.cacheCompare( table, 2, ['Dumass', 'Evans', 'McMasters'], 'search wildcard, multiple characters (*)', true ); }198 ).nextTask(199 function(){ ts.setFilters( table, ['', '/r$/'] ); },200 function(){ assert.cacheCompare( table, 1, ['Peter', 'Brenda Dexter'], 'search regex', true ); }201 ).nextTask(202 function(){ ts.setFilters( table, ['', '', '', '', '>10'] ); },203 function(){ assert.cacheCompare( table, 4, [42.29, 19.99, 15.89, 153.19, 14.19, 13.19, 55.2, 123, 22.09], 'search operator (>10)', true ); }204 ).nextTask(205 function(){ ts.setFilters( table, ['', '', '', '', '>100'] ); },206 function(){ assert.cacheCompare( table, 4, [153.19, 123], 'search operator (>100); ensure search filtered gets cleared', true ); }207 ).nextTask(208 function(){ ts.setFilters( table, ['', '', '', '', '', '>=20'] ); },209 function(){ assert.cacheCompare( table, 5, [22, 20, 25, 44, 44], 'search operator (>=)', true ); }210 ).nextTask(211 function(){ ts.setFilters( table, ['', '', '', '', '', '<10'] ); },212 function(){ assert.cacheCompare( table, 5, [5, 4], 'search operator (<10)', true ); }213 ).nextTask(214 function(){ ts.setFilters( table, ['', '', '', '', '', '<100'] ); },215 function(){ assert.cacheCompare( table, 5, [22, 5, 18, 20, 25, 44, 44, 4, 14, 11, 15, 17], 'search operator (<100); ensure search filtered gets cleared', true ); }216 ).nextTask(217 function(){ ts.setFilters( table, ['', '', '', '', '', '<=20'] ); },218 function(){ assert.cacheCompare( table, 5, [5, 18, 20, 4, 14, 11, 15, 17], 'search operator (<=)', true ); }219 ).nextTask(220 function(){ ts.setFilters( table, ['', '!a'] ); },221 function(){ assert.cacheCompare( table, 1, ['Peter', 'John', 'Bruce', 'Jim', 'Bruce Lee', 'Dennis'], 'search not match', true ); }222 ).nextTask(223 function(){ ts.setFilters( table, ['', '!aa'] ); },224 function(){ assert.cacheCompare( table, 1, ['Brandon Clark', 'Peter', 'John', 'Clark', 'Bruce', 'Alex', 'Jim', 'Bruce Lee', 'Brenda Dexter', 'Dennis', 'Martha'], 'search not match; ensure search filtered gets cleared', true ); }225 ).nextTask(226 function(){ ts.setFilters( table, ['', '', '', '', '', '', '', '', '!3'] ); },227 function(){ assert.cacheCompare( table, 0, [1, 11, 111, 9], 'search not any match', true ); }228 ).nextTask(229 function(){ ts.setFilters( table, ['', 'br && c'] ); },230 function(){ assert.cacheCompare( table, 1, ['Brandon Clark', 'Bruce', 'Bruce Lee'], 'search and match', true ); }231 ).nextTask(232 function(){ ts.setFilters( table, ['', 'br && cl'] ); },233 function(){ assert.cacheCompare( table, 1, ['Brandon Clark'], 'search and match; ensure search filtered gets cleared', true ); }234 ).nextTask(235 function(){ ts.setFilters( table, ['', 'c* && l && a'] ); },236 function(){ assert.cacheCompare( table, 1, ['Brandon Clark', 'Clark'], 'search "c* && l && a"', true ); }237 ).nextTask(238 function(){ ts.setFilters( table, ['', 'a && !o'] ); },239 function(){ assert.cacheCompare( table, 1, ['Clark', 'Alex', 'Brenda Dexter', 'Martha'], 'search "a && !o"', true ); }240 ).nextTask(241 function(){ ts.setFilters( table, ['', '', '' , '>20 && <40'] ); },242 function(){ assert.cacheCompare( table, 3, [25, 28, 33, 24, 22, 25], 'search ">20 && <40"', true ); }243 ).nextTask(244 function(){ ts.setFilters( table, ['', '', '' , '<15 or >40'] ); },245 function(){ assert.cacheCompare( table, 3, [12, 51, 45, 13, 65], 'search "<15 or >40"', true ); }246 ).nextTask(247 function(){ ts.setFilters( table, ['', 'alex|br*'] ); },248 function(){ assert.cacheCompare( table, 1, ['Brandon Clark', 'Bruce', 'Alex', 'Bruce Lee', 'Brenda Dexter'], 'search OR match', true ); }249 ).nextTask(250 function(){ ts.setFilters( table, ['', '/(Alex|Aar'] ); },251 function(){ assert.cacheCompare( table, 1, [], 'Partial OR match, but invalid regex', true ); }252 ).nextTask(253 function(){ ts.setFilters( table, ['', '/(Alex && '] ); },254 function(){ assert.cacheCompare( table, 1, [], 'Partial AND match, and way messed up regex', true ); }255 ).nextTask(256 function(){ ts.setFilters( table, ['', '', '', '', '5 - 10'] ); },257 function(){ assert.cacheCompare( table, 4, [5.95, 9.99, 5.29], 'search range', true ); }258 ).nextTask(259 function(){ ts.setFilters( table, ['', '', '', '', '5 - 100'] ); },260 function(){ assert.cacheCompare( table, 4, [5.95, 42.29, 9.99, 19.99, 15.89, 5.29, 14.19, 13.19, 55.2, 22.09], 'search range; ensure search filtered gets cleared', true ); }261 ).nextTask( // test filter_startsWith (false by default)262 function(){263 wo.filter_startsWith = false;264 ts.setFilters( table, ['', 'aa'], true );265 },266 function(){ assert.cacheCompare( table, 1, ['Philip Aaron Wong', 'Aaron'], 'search - filter_startsWith : false', true ); }267 ).nextTask( // test filter_startsWith (false by default)268 function(){269 wo.filter_startsWith = true;270 c.$table.trigger('search', false);271 },272 function(){273 assert.cacheCompare( table, 1, ['Aaron'], 'search - filter_startsWith : true', true );274 wo.filter_startsWith = false;275 }276 ).nextTask( // test filter_ignoreCase (true by default)277 function(){278 wo.filter_ignoreCase = false;279 c.$table.trigger('search', false);280 },281 function(){282 assert.cacheCompare( table, 1, [], 'search - filter_ignoreCase : false', true );283 wo.filter_ignoreCase = true;284 }285 ).nextTask( // test filter-match class (added in the example code)286 function(){ ts.setFilters( table, ['', 'alex|br*|c'] ); },287 function(){ assert.cacheCompare( table, 1, ['Brandon Clark', 'Clark', 'Bruce', 'Alex', 'Bruce Lee', 'Brenda Dexter'], 'search - filter-match', true ); }288 ).nextTask( // test filter-match class289 function(){290 c.$table.find('.tablesorter-header').eq(1).removeClass('filter-match');291 c.$table.trigger('search', false);292 },293 function(){ assert.cacheCompare( table, 1, ['Bruce', 'Alex'], 'search - filter-match removed', true ); }294 ).nextTask( // filter reset295 function(){ c.$table.trigger('filterReset'); },296 function(){ assert.cacheCompare( table, 5, [22, 5, 18, 20, 25, 44, 44, 4, 14, 11, 15, '', 17], 'filterReset', true ); }297 ).nextTask( // filter parsed class298 function(){299 wo.filter_startsWith = false;300 ts.setFilters( table, ['', '', '', '', '', '', '< 1/1/2001'], true );301 },302 function(){ assert.cacheCompare( table, 6, [ new Date('Oct 13, 2000 1:15 PM').getTime() ], 'search - filter-parsed', true ); }303 ).promise();304 });305 QUnit.test( 'Filter: function & selectSource', function(assert) {306 expect(3);307 var $t, opts = [];308 $t = this.c.$table.find('.tablesorter-filter-row select:last');309 assert.equal ( $t.length !== 0, true, 'filter_functions: true working' );310 this.c.$table.find('.tablesorter-filter-row select:first option').each(function(){311 opts.push( $.trim( $(this).text() ) );312 });313 assert.equal ( 'len=' + opts.length + ',' + opts.join(''), 'len=3,< 10> 10', 'filter_functions set' );314 opts = [];315 $t.find('option').each(function(){316 opts.push( $.trim( $(this).text() ) );317 });318 assert.equal ( 'len=' + opts.length + ',' + opts.join(''), 'len=4,abcdefzyx', 'filter_selectSource set' );319 });320 QUnit.test( 'Filter: select & matching (table2)', function(assert) {321 var self = this,322 ts = this.ts,323 $table = this.$table,324 table = this.table;325 expect(3);326 return QUnit.SequentialRunner(327 function(actions, assertions) {328 return QUnit.assertOnEvent($table, 'filterEnd', actions, assertions);329 }330 ).nextTask(331 function(){ ts.setFilters( table, ['abc 1'] ); },332 function(){ assert.cacheCompare( table, 0, ['abc 1'], 'select exact search', true ); }333 ).nextTask(334 function(){335 $table.find( '.filter-select' ).eq(0).addClass( 'filter-match' );336 ts.setFilters( table, [ 'abc 1' ] ); },337 function(){ assert.cacheCompare( table, 0, ['abc 1', 'abc 11', 'ABC 10'], 'select match search', true ); }338 ).nextTask(339 function(){ ts.setFilters( table, ['', '1'] ); },340 function(){ assert.cacheCompare( table, 1, [ 1, 111, 123, 155], 'select match seach', true ); }341 ).promise();342 });...
Filter.js
Source:Filter.js
1import React, { useContext, useEffect, useState } from 'react';2import './Filter.css';3import { Store } from "../../contextStore";4import 'bootstrap/dist/css/bootstrap.min.css'5import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'6import { faSearch, faRedoAlt } from '@fortawesome/free-solid-svg-icons'7import axios from 'axios';8import ReactTooltip from 'react-tooltip'9import { Link, NavLink, useLocation } from 'react-router-dom';10import { baseUrl } from '../../config/url';11const Filter = () => {12 const [selectRegion, setSelectRegion] = useState('All Regions');13 const [selectFGM, setSelectFGM] = useState('All Modes');14 // const [selectDuration, setSelectDuration] = useState('Duration');15 const [selectTier, setSelectTier] = useState('All Tiers');16 const [selectRole, setSelectRole] = useState('All Roles');17 const [selectAllchamp, setSelectAllchamp] = useState('All Champions');18 const [champions, setChampions] = useState([]);19 const [championsAlt, setChampionsAlt] = useState([]);20 const { state, dispatch } = useContext(Store);21 const location = useLocation();22 useEffect(() => {23 axios.get(`${baseUrl}/lol/champs`)24 .then(response => {25 const sortedChampions = sortData(response.data?.champions || []);26 setChampions(sortedChampions);27 setChampionsAlt(sortedChampions);28 })29 .catch(error => {30 console.log(error);31 setChampions([]);32 });33 }, []);34 useEffect(() => {35 if (location.pathname === '/') {36 let filters = {37 region: 1,38 tier: 1,39 fgm: 1,40 duration: 1,41 champion: 'All'42 }43 44 setSelectRegion('All Regions');45 setSelectFGM('All Modes');46 setSelectTier('All Tiers');47 setSelectRole('All Roles');48 setSelectAllchamp('All Champions');49 50 dispatch({51 type: "UPDATE_FILTERS",52 payload: filters,53 });54 55 } else {56 let champId = location.pathname.split('/')[2];57 setSelectAllchamp(champId);58 }59 }, [location, dispatch]);60 const sortData = (championsData) => {61 let sortedChampions = [];62 sortedChampions = championsData.sort((a, b) => {63 let fa = a.name.toLowerCase(),64 fb = b.name.toLowerCase();65 66 if (fa < fb) {67 return -1;68 }69 if (fa > fb) {70 return 1;71 }72 return 0;73 });74 return sortedChampions;75}76 const searchChampions = (event) => {77 console.log(event.target.value);78 let filter = event.target.value.toLowerCase();79 let filteredChampions = championsAlt.filter(item => item.id.toLowerCase().includes(filter));80 setChampions(filteredChampions);81 }82 const resetFilters = () => {83 let filters = {84 region: 1,85 tier: 1,86 fgm: 1,87 duration: 1,88 champion: 'All'89 }90 setSelectRegion('All Regions');91 setSelectFGM('All Modes');92 setSelectTier('All Tiers');93 setSelectRole('All Roles');94 setSelectAllchamp('All Champions');95 dispatch({96 type: "UPDATE_FILTERS",97 payload: filters,98 });99 }100 const setfilters = (filters) => {101 dispatch({102 type: "UPDATE_FILTERS",103 payload: filters,104 });105 }106 const championStyle = {107 display: 'grid',108 gridColumnTemplate: `repeat(4,1fr)`,109 columnGap: '.4rem'110 }111 const champImg = {112 width: '35px',113 height: '35px'114 }115 return (116 <React.Fragment>117 <ul className="nav">118 <li className="nav-item">119 <a className="nav-link dropdown-toggle" style={{ fontSize: 12, color: '#fff' }}>120 {selectAllchamp}121 </a>122 <ul className="drop-menu listchamps">123 <li>124 <form>125 <input className="form-control" type="search" 126 placeholder="Champion" aria-label="Search" onChange={searchChampions} />127 <FontAwesomeIcon icon={faSearch} className="searchicon" />128 </form>129 </li>130 <div className="listchamp">131 132 {133 champions && champions.length > 0 &&134 champions.map((champ, index) => {135 return (136 <NavLink to={{pathname: `/championstats/${champ?.id}`}} key={index}>137 <li className="nav-link" key={index} onClick={()=> setSelectAllchamp(champ?.name)}>138 139 <img src={champ?.image} alt={champ?.id} style={champImg} /> <span>{champ?.name}</span>140 141 </li>142 </NavLink>143 )144 })145 }146 </div>147 </ul>148 </li>149 <li className="nav-item">150 <a className="nav-link dropdown-toggle" style={{ fontSize: 12, color: '#fff' }}>151 {selectRegion}152 </a>153 <ul className="drop-menu grid-section reg">154 <div className="listregion">155 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, region: 1 }); setSelectRegion('All Regions'); }}>All Regions</li>156 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, region: 2 }); setSelectRegion('BR'); }}> BR</li>157 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, region: 3 }); setSelectRegion('RU'); }}>RU</li>158 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, region: 4 }); setSelectRegion('EUW'); }}>EUW</li>159 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, region: 5 }); setSelectRegion('EUN'); }}>EUN</li>160 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, region: 6 }); setSelectRegion('LA'); }}>LA</li>161 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, region: 7 }); setSelectRegion('NA'); }}>NA</li>162 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, region: 8 }); setSelectRegion('KR'); }}>KR</li>163 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, region: 9 }); setSelectRegion('TR'); }}>TR</li>164 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, region: 10 }); setSelectRegion('JP'); }}>JP</li>165 </div>166 </ul>167 </li>168 {/* <li className="nav-item">169 <a className="nav-link dropdown-toggle" style={{ fontSize: 12, color: '#fff' }}>170 {selectFGM}171 </a>172 <ul className="drop-menu">173 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, fgm: 1 }); setSelectFGM('All Modes'); }}><span>All Modes</span></li>174 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, fgm: 2 }); setSelectFGM('ARAM'); }}><span>ARAM</span></li>175 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, fgm: 3 }); setSelectFGM('URF'); }}><span>URF</span></li>176 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, fgm: 4 }); setSelectFGM('CLASSIC'); }}><span>CLASSIC</span></li>177 </ul>178 </li> */}179 <li className="nav-item">180 <a className="nav-link dropdown-toggle" style={{ fontSize: 12, color: '#fff' }}>181 {selectTier}182 </a>183 <ul className="drop-menu">184 <div className="listregion">185 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, tier: 1 }); setSelectTier('All Tiers'); }}>All Tiers</li>186 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, tier: 2 }); setSelectTier('Challenger'); }}> Challenger</li>187 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, tier: 3 }); setSelectTier('Grandmaster'); }}>Grandmaster</li>188 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, tier: 4 }); setSelectTier('Master'); }}>Master</li>189 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, tier: 5 }); setSelectTier('Diamond'); }}>Diamond</li>190 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, tier: 6 }); setSelectTier('Platinum'); }}>Platinum</li>191 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, tier: 7 }); setSelectTier('Gold'); }}>Gold</li>192 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, tier: 8 }); setSelectTier('Silver'); }}>Silver</li>193 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, tier: 9 }); setSelectTier('Bronze'); }}>Bronze</li>194 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, tier: 10 }); setSelectTier('Iron'); }}>Iron</li>195 </div>196 </ul>197 </li>198 <li className="nav-item">199 <a className="nav-link dropdown-toggle" style={{ fontSize: 12, color: '#fff' }}>200 {selectRole}201 </a>202 <ul className="drop-menu grid-section">203 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, role: 1 }); setSelectRole('All Roles'); }}>All Roles</li>204 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, role: 2 }); setSelectRole('Top'); }}> Top</li>205 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, role: 3 }); setSelectRole('Mid'); }}>Mid</li>206 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, role: 4 }); setSelectRole('Jungler'); }}>Jungler</li>207 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, role: 5 }); setSelectRole('Support'); }}>Support</li>208 <li className="nav-link" onClick={() => { setfilters({ ...state?.filters, role: 6 }); setSelectRole('Bot'); }}>Bot</li>209 </ul>210 </li>211 <li>212 <div className="refreshIcon" data-tip data-for="refresh" onClick={resetFilters}>213 <FontAwesomeIcon icon={faRedoAlt} className="refresh" />214 <ReactTooltip id="refresh">215 <span>Reset Filters</span>216 </ReactTooltip>217 </div>218 </li>219 </ul>220 </React.Fragment>221 )222}...
index.js
Source:index.js
...28 }29 const filteredRestaurant = (id) => {30 if(id === "Ãrabe") {31 if(filters !== "Ãrabe") {32 setFilters(id)33 } else {34 setFilters("")35 }36 } if(id === "Asiática") {37 if(filters !== "Asiática") {38 setFilters(id)39 } else {40 setFilters("")41 }42 } if(id === "Hamburguer") {43 if(filters !== "Hamburguer") {44 setFilters(id)45 } else {46 setFilters("")47 }48 } if(id === "Italiana") {49 if(filters !== "Italiana") {50 setFilters(id)51 } else {52 setFilters("")53 }54 } if(id === "Sorvetes") {55 if(filters !== "Sorvetes") {56 setFilters(id)57 } else {58 setFilters("")59 }60 } if(id === "Baiana") {61 if(filters !== "Baiana") {62 setFilters(id)63 } else {64 setFilters("")65 }66 } if(id === "Carnes") {67 if(filters !== "Carnes") {68 setFilters(id)69 } else {70 setFilters("")71 }72 } if(id === "Petiscos") {73 if(filters !== "Petiscos") {74 setFilters(id)75 } else {76 setFilters("")77 }78 } if(id === "Mexicana") {79 if(filters !== "Mexicana") {80 setFilters(id)81 } else {82 setFilters("")83 }84 }85 }86 return (87 <>88 <RestContainer>89 <Header>90 <p>Ifuture</p> 91 </Header>92 <MainContainer>93 <Form onClick={goToSearchPage}>94 <Button><SearchIcon /></Button>95 <Input type="search" placeholder="Restaurante" />96 </Form>...
useFilter.js
Source:useFilter.js
...27 if (!price.includes(result.price))28 price.push(result.price);29 }30 });31 return setFilters(({32 ...filters,33 categories: cats,34 catsSelected: cats,35 price36 }));37 }38 };39 //type can be price, categories40 const filterClick = ({ type, value }) => {41 if (type === 'categories')42 type = "catsSelected";43 if (filters[type].length <= 1) {44 if (type === 'price') {45 if (filters.price.includes(value))46 return setFilters({ ...filters, price: ['$', '$$', '$$$', '$$$$'], allPrice: true });47 else if (filters.allPrice) {48 return setFilters({ ...filters, price: [value], allPrice: false });49 } else50 return setFilters({ ...filters, price: [...filters.price, value], allPrice: false });51 } else if (type === 'catsSelected') {52 if (filters.catsSelected.includes(value))53 return setFilters({ ...filters, catsSelected: [...filters.categories], allCats: true });54 else55 return setFilters({ ...filters, catsSelected: [...filters.catsSelected, value], allCats: false });56 }57 }58 if (type === 'catsSelected') {59 if (filters.catsSelected.length === filters.categories.length) {60 return setFilters({ ...filters, catsSelected: [value], allCats: false });61 }62 }63 else if (type === 'price' && filters.allPrice)64 return setFilters({ ...filters, price: [value], allPrice: false });65 else if (type === 'catsSelected' && filters.allCats)66 return setFilters({ ...filters, catSelected: [value], allCats: false });67 if (type === 'price' && filters.price.length === 3 && !filters.price.includes(value))68 return setFilters({ ...filters, price: [...filters.price, value], allPrice: true });69 if (type === 'price' && filters.price.length === 4)70 return setFilters({ ...filters, price: [value], allPrice: false });71 if (filters[type].includes(value)) {72 const cpy = [...filters[type]];73 // cpy[value] = !cpy[value];74 cpy.splice(cpy.indexOf(value), 1);75 if (type === 'price')76 return setFilters({ ...filters, [type]: cpy, allPrice: false });77 else if (type === 'catsSelected')78 return setFilters({ ...filters, [type]: cpy, allCats: false });79 } else {80 const cpy = [...filters[type]];81 cpy.push(value);82 if(type === "catsSelected")83 return setFilters({ ...filters, [type]: [...cpy], allCats: false});84 else if(type === 'price')85 return setFilters({ ...filters, [type]: [...cpy], allPrice: false });86 }87 };88 const distanceFilterClick = (value) => {89 setFilters({ ...filters, distance: value });90 };91 // const openFilterClick = () => {92 // setFilters({...filters, isOpen: !filters.isOpen})93 // }94 const resetFilters = () => {95 setFilters(initFilter);96 };97 const getPriceFilterMode = (results) => {98 results.forEach((result) => {99 if (result.price) {100 setFilters(prev => ({ ...prev, mode: true }));101 }102 });103 };104 const toggleFilterShow = () => {105 setFilters({ ...filters, show: !filters.show });106 };107 const resetFiltersHandle = () => {108 setFilters({...filters, 109 allPrice: true,110 allCats: true,111 distance: 50000,112 price:['$','$$','$$$','$$$$'],113 catsSelected:[...filters.categories]114 })115 }116 const setCategoriesSelected = () => {117 setFilters({ ...filters, catsSelected: [...filters.categories] });118 };119 const expandCategories = () => {120 setFilters({ ...filters, expandCats: !filters.expandCats });121 };122 return {123 filters,124 filterClick,125 resetFilters,126 distanceFilterClick,127 populateCategories,128 getPriceFilterMode,129 setCategoriesSelected,130 toggleFilterShow,131 expandCategories,132 resetFiltersHandle133 // openFilterClick134 };...
filters-page.js
Source:filters-page.js
1/*global browser:false, element:false, by:false */2'use strict';3function Filters(id){4 this.id = id;5 this.filterTooGenericWarning = element.all(by.id('filter-too-generic'));6 // left set filters panel7 this.setFilters = {};8 this.setFilters.entity = element(by.model('entityName'));9 this.setFilters.tags = element.all(by.repeater('t in tags'));10 this.setFilters.sic = element(by.model('sicCode'));11 this.setFilters.fiscalYears = element.all(by.repeater('y in years'));12 this.setFilters.fiscalPeriods = element.all(by.repeater('p in periods'));13 // right selected filters panel14 this.selectedFilters = {};15 this.selectedFilters.cik = element.all(by.repeater('c in selection.cik'));16 this.selectedFilters.tag = element.all(by.repeater('tag in selection.tag'));17 this.selectedFilters.sic = element.all(by.repeater('s in selection.sic'));18 this.selectedFilters.fiscalYear = element.all(by.repeater('y in selection.fiscalYear'));19 this.selectedFilters.fiscalPeriod = element.all(by.repeater('p in selection.fiscalPeriod'));20 this.selectedFilters.fiscalPeriodTypeYTD = element(by.id('btn-YTD'));21 this.selectedFilters.fiscalPeriodTypeQTD = element(by.id('btn-QTD'));22 this.selectedFilters.reset = element(by.xpath('//a[./text() = "RESET"]'));23}24Filters.prototype.visitPage = function(){25 return browser.get('/' + this.id + '/filters');26};27Filters.prototype.resetSelectedFilters = function() {28 return this.selectedFilters.reset.click();29};30var ARROW_DOWN = '\uE015';31var ENTER = '\uE007';32var closeSelectedFiltersBox = function(boxes, text) {33 boxes34 .filter(function(box){35 return box.getText().then(function(t){36 return (t.indexOf(text, t.length - text.length) !== -1);37 });38 })39 .then(function(foundBoxes){40 foundBoxes.forEach(function(box){ box.element(by.css('a')).click();});41 });42 return browser.waitForAngular();43};44Filters.prototype.closeSelectedFiltersTag = function(text) {45 return closeSelectedFiltersBox(this.selectedFilters.tag, text);46};47Filters.prototype.closeSelectedFiltersEntity = function(text) {48 return closeSelectedFiltersBox(this.selectedFilters.cik, text);49};50Filters.prototype.closeSelectedFiltersSIC = function(text) {51 return closeSelectedFiltersBox(this.selectedFilters.sic, text);52};53Filters.prototype.closeSelectedFiltersYear = function(text) {54 return closeSelectedFiltersBox(this.selectedFilters.fiscalYear, text);55};56Filters.prototype.closeSelectedFiltersPeriod = function(text) {57 return closeSelectedFiltersBox(this.selectedFilters.fiscalPeriod, text);58};59Filters.prototype.setFiltersEntityName = function(entityName, typeaheadPosition){60 this.setFilters.entity.clear();61 this.setFilters.entity.sendKeys(entityName);62 while(typeaheadPosition > 1){63 this.setFilters.entity.sendKeys(ARROW_DOWN);64 typeaheadPosition -= 1;65 }66 this.setFilters.entity.sendKeys(ENTER);67 return browser.waitForAngular();68};69Filters.prototype.clickFiltersTag = function(tag){70 this.setFilters.tags71 .filter(function(item){72 var a = item.element(by.css('a'));73 return a.getText().then(function(text){74 return (text === tag);75 });76 })77 .then(function (foundItems){78 foundItems.forEach(function(item){ item.element(by.css('a')).click(); });79 });80 return browser.waitForAngular();81};82Filters.prototype.setFiltersIndustryGroup = function(industryGroup, typeaheadPosition){83 this.setFilters.sic.clear();84 this.setFilters.sic.sendKeys(industryGroup);85 while(typeaheadPosition > 1){86 this.setFilters.sic.sendKeys(ARROW_DOWN);87 typeaheadPosition -= 1;88 }89 this.setFilters.sic.sendKeys(ENTER);90 return browser.waitForAngular();91};92var clickFiltersSelectors = function(list, value){93 list94 .filter(function(item){95 return item.getText().then(function(text){96 return (text === '' + value);97 });98 })99 .then(function (foundItems){100 foundItems.forEach(function(item){ item.click(); });101 });102 return browser.waitForAngular();103};104Filters.prototype.clickFiltersYear = function(year){105 return clickFiltersSelectors(this.setFilters.fiscalYears, year); 106};107Filters.prototype.clickFiltersPeriod = function(period){108 return clickFiltersSelectors(this.setFilters.fiscalPeriods, period); 109};...
ProductsList.js
Source:ProductsList.js
1import {StyleSheet, Text, View, Dimensions, ScrollView} from 'react-native';2import React, { useState } from 'react';3import {4 FilterItem,5 Navbar,6 Announcement,7 Newsletter,8 Footer,9 Products,10} from '../components';11const ProductsList = (props) => {12 const [cat,setCat] =useState( props?.route?.params?.cat === undefined ? "" : props?.route?.params?.cat)13 const [filters, setFilters] = useState({});14 const [sort, setSort] = useState("newest");15 16 17 return (18 <ScrollView>19 <Navbar navigate = {props.navigation.navigate} />20 <Announcement />21 <Text style={styles.title}>Dresses</Text>22 <View style={styles.buttonContainer}>23 <Text style={styles.text}>Sizes</Text>24 <FilterItem size="XS" value="xs" name="size" setFilters={setFilters}/>25 <FilterItem size="S" value="s" name="size" setFilters={setFilters}/>26 <FilterItem size="M" value="m" name="size" setFilters={setFilters}/>27 <FilterItem size="L" value="l" name="size" setFilters={setFilters}/>28 <FilterItem size="XL" value="xl" name="size" setFilters={setFilters}/>29 </View>30 <View style={styles.buttonContainer}>31 <Text style={styles.text}>Colors</Text>32 <FilterItem color="blue" value="blue" name="color" setFilters={setFilters}/>33 <FilterItem color="yellow" value="yellow" name="color" setFilters={setFilters}/>34 <FilterItem color="white" value="white" name="color" setFilters={setFilters}/>35 <FilterItem color="black" value="black" name="color" setFilters={setFilters}/>36 <FilterItem color="green" value="green" name="color" setFilters={setFilters}/>37 <FilterItem color="red" value="red" name="color" setFilters={setFilters}/>38 </View>39 <View style={styles.buttonContainer}>40 <Text style={styles.text}>Filters</Text>41 <FilterItem size="NEW" width value="newest" setSort={setSort}/>42 <FilterItem size="Price(asc)" width value="asc" setSort={setSort}/>43 <FilterItem size="Price(desc)" width value="desc" setSort={setSort}/>44 </View>45 <Products cat={cat} filters={filters} sort={sort} navigate={props.navigation.navigate}/>46 <Newsletter />47 <Footer />48 </ScrollView>49 );50};51export {ProductsList};52const styles = StyleSheet.create({53 buttonContainer: {54 flexDirection: 'row',55 marginHorizontal: 10,56 marginVertical: 10,57 alignItems: 'center',58 },59 title: {60 fontSize: 24,61 fontWeight: 'bold',62 },63 text: {64 width: Dimensions.get('screen').width * 0.13,65 },66 filter: {67 width: Dimensions.get('screen').width * 0.4,68 },...
filterToggle.js
Source:filterToggle.js
...5 className={6 'toggle__option ' + (activeFilters[filter] ? 'is-toggled' : '')7 }8 onClick={() =>9 setFilters({10 ...activeFilters,11 [filter]: !activeFilters[filter]12 })13 }14 >15 {children}16 </button>17 );18}19module.exports = function FilterToggle({ activeFilters, setFilters }) {20 return (21 <div className="toggle">22 <div className="toggle__label">Filter:</div>23 <div className="toggle__options">...
Filters.js
Source:Filters.js
1import './Filters.css';2import FilterTypeOptions from './Components/FilterTypeOptions';3import FilterTypeRange from './Components/FilterTypeRange';4function Filters({ setFilters }) 5{6 return (7 <div className='filters'>8 <FilterTypeOptions name='Shape' options={[ 'ROUND', 'OVAL', 'PEAR' ]} setFilters={ setFilters } />9 <FilterTypeRange name='Carat' setFilters={ setFilters }/>10 <FilterTypeOptions name='Color' options={[ 'E', 'F' , 'G', 'H', 'D', 'FANCY', 'I', 'S-T', 'Q-R' ]} setFilters={ setFilters } />11 <FilterTypeOptions name='Clarity' options={[ 'VVS1', 'VVS2' , 'SI1', 'VS1', 'I2', 'VS2', 'SI2', 'IF' ]} setFilters={ setFilters } />12 <FilterTypeOptions name='Cut' options={[ 'EX', 'VG' , 'GD' ]} setFilters={ setFilters } />13 <FilterTypeOptions name='Polish' options={[ 'EX', 'VG' , 'GD' ]} setFilters={ setFilters } />14 <FilterTypeOptions name='Symmetry' options={[ 'EX', 'VG' , 'GD' ]} setFilters={ setFilters } />15 <FilterTypeOptions name='Fluorescent' options={[ 'M', 'N' , 'ST', 'F' ]} setFilters={ setFilters } />16 </div>17 )18}...
Using AI Code Generation
1cy.setFilters('filterName', 'filterValue');2await page.setFilters('filterName', 'filterValue');3await page.setFilters('filterName', 'filterValue');4await setFilters('filterName', 'filterValue');5browser.setFilters('filterName', 'filterValue');6browser.setFilters('filterName', 'filterValue');7browser.setFilters('filterName', 'filterValue');8browser.setFilters('filterName', 'filterValue');9await device.setFilters('filterName', 'filterValue');10await setFilters('filterName', 'filterValue');11setFilters('filterName', 'filterValue');12await setFilters('filterName', 'filterValue');13setFilters('filterName', 'filterValue');14await setFilters('filterName', 'filterValue');15setFilters('filterName', 'filterValue');16await setFilters('filterName', 'filterValue');17setFilters('filterName', 'filterValue');18await setFilters('filterName', 'filterValue');19setFilters('filterName', 'filterValue');20await setFilters('filterName', 'filterValue');21setFilters('filterName', 'filterValue');22await setFilters('filterName', 'filterValue');23setFilters('filterName', 'filterValue');
Using AI Code Generation
1cy.setFilters('test');2cy.setFilters({test: 'test'});3cy.setFilters({test: 'test', test2: 'test2'});4cy.setFilters({test: 'test', test2: 'test2', test3: 'test3'});5cy.setFilters({test: 'test', test2: 'test2', test3: 'test3', test4: 'test4'});6cy.setFilters({test: 'test', test2: 'test2', test3: 'test3', test4: 'test4', test5: 'test5'});7cy.setFilters({test: 'test', test2: 'test2', test3: 'test3', test4: 'test4', test5: 'test5', test6: 'test6'});8cy.setFilters({test: 'test', test2: 'test2', test3: 'test3', test4: 'test4', test5: 'test5', test6: 'test6', test7: 'test7'});9cy.setFilters({test: 'test', test2: 'test2', test3: 'test3', test4: 'test4', test5: 'test5', test6: 'test6', test7: 'test7', test8: 'test8'});10cy.setFilters({test: 'test', test2: 'test2', test3: 'test3', test4: 'test4', test5: 'test5', test6: 'test6', test7: 'test7', test8: 'test8', test9: 'test9'});
Using AI Code Generation
1cy.setFilters('filterName', 'filterValue')2Cypress.Commands.add('setFilters', (filterName, filterValue) => {3 cy.get('button').contains('Filters').click()4 cy.get('input').contains(filterName).type(filterValue)5 cy.get('button').contains('Apply Filters').click()6})7Cypress.Commands.add('setFilters', (filterName, filterValue) => {8 cy.get('button').contains('Filters').click()9 cy.get('input').contains(filterName).type(filterValue)10 cy.get('button').contains('Apply Filters').click()11})12Cypress.Commands.add('setFilters', (filterName, filterValue) => {13 cy.get('button').contains('Filters').click()14 cy.get('input').contains(filterName).type(filterValue)15 cy.get('button').contains('Apply Filters').click()16})17Cypress.Commands.add('setFilters', (filterName, filterValue) => {18 cy.get('button').contains('Filters').click()19 cy.get('input').contains(filterName).type(filterValue)20 cy.get('button').contains('Apply Filters').click()21})22Cypress.Commands.add('setFilters', (filterName, filterValue) => {23 cy.get('button').contains('Filters').click()24 cy.get('input').contains(filterName).type(filterValue)25 cy.get('button').contains('Apply Filters').click()26})27Cypress.Commands.add('setFilters', (filterName, filterValue) => {28 cy.get('button').contains('Filters').click()29 cy.get('input').contains(filterName).type(filterValue)30 cy.get('button').contains('Apply Filters').click()31})32Cypress.Commands.add('setFilters', (filterName, filter
Using AI Code Generation
1describe('Test', () => {2 it('test', () => {3 cy.get('input[name=q]').type('test')4 cy.get('input[name=q]').type('{enter}')5 cy.get('input[name=q]').type('{esc}')6 cy.get('input[name=q]').type('{enter}')7 cy.get('.LC20lb').first().click()8 cy.get('input[name=q]').type('{esc}')9 cy.get('input[name=q]').type('{enter}')10 cy.get('.LC20lb').first().click()11 cy.get('input[name=q]').type('{esc}')12 cy.get('input[name=q]').type('{enter}')13 cy.get('.LC20lb').first().click()14 cy.get('input[name=q]').type('{esc}')15 cy.get('input[name=q]').type('{enter}')16 cy.get('.LC20lb').first().click()17 cy.get('input[name=q]').type('{esc}')18 cy.get('input[name=q]').type('{enter}')19 cy.get('.LC20lb').first().click()20 cy.get('input[name=q]').type('{esc}')21 cy.get('input[name=q]').type('{enter}')22 cy.get('.LC20lb').first().click()23 cy.get('input[name=q]').type('{esc}')24 cy.get('input[name=q]').type('{enter}')25 cy.get('.LC20lb').first().click()26 cy.get('input[name=q]').type('{esc}')27 cy.get('input[name=q]').type('{enter}')28 cy.get('.LC20lb').first().click()29 })30})
Using AI Code Generation
1cy.setFilters({2})3cy.getFilters().then((filters) => {4})5cy.clearFilters()6cy.getAppliedFilters().then((appliedFilters) => {7})8cy.clearAllFilters()9cy.getFiltersCount().then((count) => {10})11cy.getAppliedFiltersCount().then((count) => {12})13cy.getFiltersCount().then((count) => {14})15cy.getAppliedFiltersCount().then((count) => {16})17cy.getFilter('filter-name').then((filter) => {18})19cy.getFilterLabel('filter-name').then((label) => {20})21cy.getFilterValue('filter-name').then((value) => {22})23cy.getFilterValue('filter-name').then((value) => {
Using AI Code Generation
1cy.setFilters({2});3Cypress.Commands.add('setFilters', (filters) => {4 cy.server();5 cy.route('POST', '**/api/v1/reports/summary').as('summaryReport');6 cy.route('POST', '**/api/v1/reports/summary/*').as('summaryReport');7 cy.route('POST', '**/api/v1/reports/summary/summary').as('summaryReport');8 cy.route('POST', '**/api/v1/reports/summary/summary/*').as('summaryReport');9 cy.route('POST', '**/api/v1/reports/summary/summary/summary').as('summaryReport');10 cy.route('POST', '**/api/v1/reports/summary/summary/summary/*').as('summaryReport');11 cy.route('POST', '**/api/v1/reports/summary/summary/summary/summary').as('summaryReport');12 cy.route('POST', '**/api/v1/reports/summary/summary/summary/summary/*').as('summaryReport');13 cy.route('POST', '**/api/v1/reports/summary/summary/summary/summary/summary').as('summaryReport');14 cy.route('POST', '**/api/v1/reports/summary/summary/summary/summary/summary/*').as('summaryReport');15 cy.route('POST', '**/api/v1/reports/summary/summary/summary/summary/summary/summary').as('summaryReport');16 cy.route('POST', '**/api/v1
Cypress is a renowned Javascript-based open-source, easy-to-use end-to-end testing framework primarily used for testing web applications. Cypress is a relatively new player in the automation testing space and has been gaining much traction lately, as evidenced by the number of Forks (2.7K) and Stars (42.1K) for the project. LambdaTest’s Cypress Tutorial covers step-by-step guides that will help you learn from the basics till you run automation tests on LambdaTest.
You can elevate your expertise with end-to-end testing using the Cypress automation framework and stay one step ahead in your career by earning a Cypress certification. Check out our Cypress 101 Certification.
Watch this 3 hours of complete tutorial to learn the basics of Cypress and various Cypress commands with the Cypress testing at LambdaTest.
Get 100 minutes of automation test minutes FREE!!