Best JavaScript code snippet using cypress
control-panel.js
Source:control-panel.js
1import * as React from "react";2import { navigate } from "gatsby";3import styled from "styled-components";4import { compose } from "recompose";5import { v4 as uuidv4 } from "uuid";6import axios from "axios";7import { withFirebase, withAuthorization, AuthUserContext } from "../api/";8import { Centered } from "../styles/global";9import TeacherRoom from "../components/TeacherRoom";10import StoredTeacherRoom from "../components/StoredTeacherRoom";11import ControlCard from "../components/ControlCard";12import Logo from "../components/Logo";13import SEO from "../components/SEO";14import Background from "../images/pattern_4.svg";15const StyledCentered = styled(Centered)`16 background: url(${Background});17`;18const isProfessor = (authUser) => !!authUser?.roles?.professor;19class ControlPage extends React.Component {20 _initFirebase = false;21 state = {22 roomCode: "",23 errorMsg: "",24 storedRoomCode: "",25 storedRoom: null,26 };27 unsubRooms = null;28 static contextType = AuthUserContext;29 componentDidMount() {30 if (this.props.firebase && !this._initFirebase) this.loadData();31 }32 componentDidUpdate(prevProps) {33 if (this.props.firebase && !this._initFirebase) this.loadData();34 }35 componentWillUnmount() {36 if (typeof this.unsubRooms === "function") this.unsubRooms();37 }38 loadData = async () => {39 this._initFirebase = true;40 let storedRoomCode = localStorage.getItem("roomCode");41 if (storedRoomCode !== null && storedRoomCode !== undefined)42 this.setState({ roomCode: storedRoomCode });43 // eslint-disable-next-line44 const rooms = await new Promise((resolve, reject) => {45 let resolveOnce = (doc) => {46 resolveOnce = () => null;47 resolve(doc);48 };49 this.unsubRooms = this.props.firebase50 .rooms()51 .onSnapshot((querySnapshot) => {52 const rooms = querySnapshot.docs.map((doc) => {53 return {54 id: doc.id,55 ...doc.data(),56 };57 });58 this.setState({ rooms });59 resolveOnce(rooms);60 }, reject);61 });62 };63 setErrorMsg = (errorMsg) => {64 this.setState({ errorMsg: errorMsg });65 this.forceUpdate();66 };67 setRoomCode = (roomCode) => {68 this.setErrorMsg("");69 localStorage.setItem("roomCode", roomCode);70 this.setState({ roomCode });71 };72 attemptLogout = () => {73 this.props.firebase74 .doSignOut()75 .then(() => {76 navigate("/");77 })78 .catch((err) => {79 console.error(err);80 this.setErrorMsg("Logout failed!");81 });82 };83 createSession = (sessionID, sessionName) => {84 this.props.firebase85 .room(sessionID)86 .set({87 professor: this.context.uid,88 questions: {},89 roomName: sessionName,90 students: {},91 })92 .then(() => {93 this.setRoomCode(sessionID);94 })95 .catch((err) => {96 console.log(err);97 this.setErrorMsg("Failed to create a session!");98 });99 };100 downloadData = (uuid, roomName, roomID) => {101 var bodyFormData = new FormData();102 bodyFormData.append("id", uuid);103 let room = {};104 axios({105 method: "get",106 url: "http://127.0.0.1:4000/downloadSession/" + uuid,107 data: bodyFormData,108 headers: { "Content-Type": "multipart/form-data" },109 })110 .then((response) => {111 const data = response.data.Results;112 let questions = {};113 data.map((val) => {114 questions[val.id] = {115 title: val.title,116 description: val.question,117 upvotes: val.votes,118 };119 return null;120 });121 room = {122 name: roomName,123 id: roomID,124 questions: questions,125 };126 this.setState({ storedRoomCode: roomID, storedRoom: room });127 })128 .catch(function (response) {129 console.log(response);130 });131 };132 saveData = (room, roomUUID) => {133 var id = room.id;134 var questions = room.questions;135 var roomName = room.roomName;136 var parsedQuestions = [];137 console.log("Printing questions");138 for (var key in questions) {139 console.log(questions[key]);140 let counter = 0;141 Object.keys(questions[key].upvotes).map((val) => counter++);142 var question = {143 title: questions[key]["description"],144 description: questions[key]["description"],145 votes: counter,146 };147 console.log("I'm printing quesiton");148 console.log(question);149 parsedQuestions.push(question);150 }151 console.log("Printing out stuff");152 console.log(parsedQuestions);153 console.log(id);154 console.log(roomName);155 console.log(roomUUID);156 console.log("Stringified Questions");157 parsedQuestions = JSON.stringify(parsedQuestions);158 console.log(parsedQuestions);159 var bodyFormData = new FormData();160 bodyFormData.append("id", id);161 bodyFormData.append("questions", parsedQuestions);162 bodyFormData.append("roomName", roomName);163 bodyFormData.append("uuid", JSON.stringify(roomUUID));164 axios({165 method: "post",166 url: "http://127.0.0.1:4000/insertSession",167 data: bodyFormData,168 headers: { "Content-Type": "multipart/form-data" },169 })170 .then(function (response) {171 //handle success172 console.log(response);173 })174 .catch(function (response) {175 //handle error176 console.log(response);177 });178 };179 deleteQuestion = (questionID) => {180 let { roomCode, rooms } = this.state;181 const room = rooms ? rooms.find((r) => r.id === roomCode) : null;182 delete room.questions[questionID];183 this.props.firebase184 .room(roomCode)185 .set(room)186 .catch((err) => console.log(err));187 };188 clearSessions = () => {189 this.props.firebase190 .user(this.context.uid)191 .set({192 email: this.context.email,193 name: this.context.name,194 pastSessions: {},195 roles: this.context.roles,196 })197 .catch((err) => {198 console.log(err);199 this.setErrorMsg("Unable to save your data!");200 });201 this.context.pastSessions = {};202 };203 closeRoom = () => {204 let { roomCode, rooms } = this.state;205 const room = rooms ? rooms.find((r) => r.id === roomCode) : null;206 const updatedUser = this.context;207 const uid = uuidv4();208 updatedUser.pastSessions[uid] = {209 code: roomCode,210 name: room.roomName,211 };212 this.saveData(room, uid);213 this.props.firebase214 .user(this.context.uid)215 .set({216 email: updatedUser.email,217 name: updatedUser.name,218 pastSessions: updatedUser.pastSessions,219 roles: updatedUser.roles,220 })221 .catch((err) => {222 console.log(err);223 this.setErrorMsg("Unable to save your data!");224 });225 this.props.firebase226 .room(roomCode)227 .delete(() => {228 this.setRoomCode("");229 })230 .catch((err) => {231 this.setErrorMsg("Room Close Failing!");232 console.log(err);233 });234 };235 closeStoredRoom = () => {236 this.setState({ storedRoom: null, storedRoomCode: "" });237 };238 render() {239 let { errorMsg, rooms, roomCode, storedRoomCode, storedRoom } = this.state;240 const room = rooms ? rooms.find((r) => r.id === roomCode) : null;241 if (storedRoomCode !== "")242 return (243 <>244 <SEO title="Stored Room" route="/" />245 <StoredTeacherRoom246 room={storedRoom}247 closeRoom={this.closeStoredRoom}248 />249 </>250 );251 else if (errorMsg !== "")252 return (253 <>254 <SEO title="Home" route="/" />255 <StyledCentered>256 <Logo size="large" />257 <h1> {errorMsg} </h1>258 <ControlCard259 authUser={this.context}260 downloadData={this.downloadData}261 attemptLogout={this.attemptLogout}262 createSession={this.createSession}263 clearSessions={this.clearSessions}264 />265 </StyledCentered>266 </>267 );268 else if (roomCode === "")269 return (270 <>271 <SEO title="Home" route="/" />272 <StyledCentered>273 <Logo size="large" />274 <ControlCard275 authUser={this.context}276 downloadData={this.downloadData}277 attemptLogout={this.attemptLogout}278 createSession={this.createSession}279 clearSessions={this.clearSessions}280 />281 </StyledCentered>282 </>283 );284 else if (room === undefined || room === null) {285 return (286 <>287 <SEO title="Home" route="/" />288 <StyledCentered>289 <Logo size="large" />290 <h1> Room not found! </h1>291 <ControlCard292 authUser={this.context}293 downloadData={this.downloadData}294 attemptLogout={this.attemptLogout}295 createSession={this.createSession}296 clearSessions={this.clearSessions}297 />298 </StyledCentered>299 </>300 );301 } else302 return (303 <>304 <SEO title="Room" route="/" />305 <TeacherRoom306 room={room}307 deleteQuestion={this.deleteQuestion}308 closeRoom={this.closeRoom}309 />310 </>311 );312 }313}314export default compose(315 withAuthorization(isProfessor),316 withFirebase...
index.jsx
Source:index.jsx
...10 this.clearSessions = this.clearSessions.bind(this);11 this.FBAuth = this.FBAuth.bind(this);12 console.log("this.props.user", this.props.user);13 }14 clearSessions() {15 $.get("/logout", (resp, err) => {16 this.logOut();17 });18 }19 // this is written so that passport can do auth and not throw a react warning20 FBAuth(e) {21 e.preventDefault();22 const linkTag = $('<a href="/auth/facebook"></a>');23 linkTag[0].click();24 }25 render() {26 // console.log('tpu', this.props.userInstruments);27 return (28 <div className="nav">...
app.js
Source:app.js
...34 // render the error page35 res.status(err.status || 500);36 res.render('error');37});38clearSessions();39let clearOfflineUsersInterval = setInterval(clearOfflineUsers, 30000);...
Session.service.js
Source:Session.service.js
1module.service('ASPASessionService',['ASPADataService','ASPANotifierService','ASPAAPIProtocolService',function(ASPADataService,ASPANotifierService,ASPAAPIProtocolService){2 var getSessionId = function(){3 return ASPADataService.get('sessionId');4 };5 var setSessionId = function(id){6 ASPADataService.set('sessionId',id);7 };8 var checkSession = function(){9 var config = {};10 config.headers = {};11 var sessionId = getSessionId();12 if(sessionId){13 config.headers['AliceSPA-SessionID'] = sessionId;14 }15 ASPAAPIProtocolService.VanillaGet('/environment/checkSession',true,config).then(function(res){16 if(res.sessionID !== sessionId){17 setSessionId(res.sessionID);18 }19 ASPANotifierService.notifySessionId(true);20 },function(error){21 ASPANotifierService.notifySessionId(false);22 });23 }24 var clearSessions = function(){25 ASPAAPIProtocolService.ASPAPost('/environment/clearSessions');26 }27 return {28 checkSession:checkSession,29 getSessionId:getSessionId,30 clearSessions:clearSessions31 };...
SessionUseCaseModule.js
Source:SessionUseCaseModule.js
...3 const createSession = repository => () => repository.createSession();4 const getSession = repository => sessionId => repository.getSession(sessionId);5 const joinSession = repository => (sessionId, memberId) => repository.joinSession(sessionId, memberId);6 const leaveSession = repository => memberId => repository.leaveSession(memberId);7 const clearSessions = repository => () => repository.clearSessions();8 return {9 randomSession: randomSession(repository),10 createSession: createSession(repository),11 getSession: getSession(repository),12 joinSession: joinSession(repository),13 leaveSession: leaveSession(repository),14 clearSessions: clearSessions(repository)15 }...
clearDb.js
Source:clearDb.js
...6export async function clearRooms() {7 await db.query("DELETE FROM Rooms WHERE 1 = 1");8 await db.query("ALTER TABLE Rooms AUTO_INCREMENT = 1");9}10export async function clearSessions() {11 await db.query("DELETE FROM Sessions WHERE 1 = 1");12 await db.query("ALTER TABLE Sessions AUTO_INCREMENT = 1");13}14export async function clearAllocations() {15 await db.query("DELETE FROM Allocations WHERE 1 = 1");16 await db.query("ALTER TABLE Allocations AUTO_INCREMENT = 1");17}18export async function clearDb() {19 await clearAllocations();20 await clearSessions();21 await clearRooms();22 await clearUsers();23}...
session.js
Source:session.js
...20function getState() {21 return state;22}23exports.getState = getState;24function clearSessions() {25 state.sessions = {};26}...
sessions.js
Source:sessions.js
...3 return async (dispatch: () => void) => {4 ipcRenderer.send('removeSession', session);5 };6}7export function clearSessions() {8 return async (dispatch: () => void) => {9 ipcRenderer.send('clearSessions');10 };11}12export default {13 clearSessions,14 removeSession,...
Using AI Code Generation
1cy.clearSessions();2cy.clearCookies();3cy.clearLocalStorage();4cy.clearLocalStorageSnapshot();5cy.clearLocalStorageSnapshot();6cy.clearLocalStorageSnapshot();7cy.clearSessions();8cy.clearCookies();9cy.clearLocalStorage();10cy.clearLocalStorageSnapshot();11cy.clearLocalStorageSnapshot();12cy.clearLocalStorageSnapshot();13cy.clearSessions();14cy.clearCookies();15cy.clearLocalStorage();16cy.clearLocalStorageSnapshot();17cy.clearLocalStorageSnapshot();18cy.clearLocalStorageSnapshot();19cy.clearSessions();20cy.clearCookies();21cy.clearLocalStorage();22cy.clearLocalStorageSnapshot();23cy.clearLocalStorageSnapshot();24cy.clearLocalStorageSnapshot();25cy.clearSessions();26cy.clearCookies();27cy.clearLocalStorage();28cy.clearLocalStorageSnapshot();29cy.clearLocalStorageSnapshot();30cy.clearLocalStorageSnapshot();31cy.clearSessions();32cy.clearCookies();
Using AI Code Generation
1Cypress.Cookies.defaults({2 whitelist: (cookie) => {3 if (cookie.name === 'session_id') {4 }5 }6})7Cypress.Cookies.preserveOnce('session_id')8Cypress.Commands.add('clearSessions', () => {9 cy.clearCookies({domain: 'localhost'})10 cy.clearCookies({domain: '
Using AI Code Generation
1Cypress.Commands.add('clearSessions', () => {2 cy.window().then((win) => {3 win.sessionStorage.clear();4 });5});6describe('Login Test', () => {7 beforeEach(() => {8 cy.clearSessions();9 });10 it('Login Test', () => {11 cy.get('#identifierId').type('
Using AI Code Generation
1if (Cypress.env('clearSessions')) {2 cy.clearSessions()3}4{5}6describe('My First Test', function() {7 it('Does not do much!', function() {8 cy.contains('type').click()9 })10})11describe('My Second Test', function() {12 it('Does not do much!', function() {13 cy.contains('type').click()14 })15})16describe('My Third Test', function() {17 it('Does not do much!', function() {18 cy.contains('type').click()19 })20})21describe('My Fourth Test', function() {22 it('Does not do much!', function() {23 cy.contains('type').click()24 })25})26describe('My Fifth Test', function() {27 it('Does not do much!', function() {28 cy.contains('type').click()29 })30})31describe('My Sixth Test', function() {32 it('Does not do much!', function() {33 cy.contains('type').click()34 })35})36describe('My Seventh Test', function() {37 it('Does not do much!', function() {38 cy.contains('type').click()39 })40})41describe('My Eighth Test', function() {42 it('Does not do much!', function() {43 cy.contains('type').click()44 })45})46describe('My Ninth Test', function() {47 it('Does not do much!', function() {
Using AI Code Generation
1clearSessions()2clearCookies()3cy.login()4cy.login()5cy.get('input[name="q"]').type('Cypress')6cy.get('input[value="Google Search"]').click()7clearSessions()
Using AI Code Generation
1Cypress.Cookies.defaults({2 whitelist: (cookie) => {3 return true;4 },5});6Cypress.Commands.add('clearCookies', () => {7 cy.clearCookies();8});9describe('My First Test', () => {10 beforeEach(() => {11 cy.clearCookies();12 });13 it('Does not do much!', () => {14 expect(true).to.equal(true);15 });16});17Cypress.Commands.add('clearCookies', () => {18 cy.clearCookies();19});20describe('My First Test', () => {21 beforeEach(() => {22 cy.clearCookies();23 });24 it('Does not do much!', () => {25 expect(true).to.equal(true);26 });27});28Cypress.Commands.add('clearCookies', () => {29 cy.clearCookies();30});31describe('My First Test', () => {32 beforeEach(() => {33 cy.clearCookies();34 });35 it('Does not do much!',
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!!