Best JavaScript code snippet using best
form-calendar.controller.spec.js
Source:form-calendar.controller.spec.js
1'use strict';2describe('Controller: Form Calendar', function () {3 var $controller, EventFormData, $scope;4 beforeEach(module('udb.event-form', function ($provide) {5 var appConfig = {6 'calendarHighlight': {7 'date': '2017-09-10',8 'startTime': '10:00',9 'endTime': '18:00',10 'extraClass': 'omd'11 }12 };13 $provide.constant('appConfig', appConfig);14 }));15 beforeEach(inject(function($injector, $rootScope) {16 $controller = $injector.get('$controller');17 EventFormData = $injector.get('EventFormData');18 $scope = $rootScope.$new();19 }));20 function getController(formData) {21 if (!formData) {22 EventFormData.init();23 EventFormData.initCalendar();24 formData = EventFormData;25 }26 return $controller('FormCalendarController', {27 EventFormData: formData,28 $scope: $scope29 });30 }31 it('should default to the "single" calendar type when initializing', function (done) {32 EventFormData33 .timingChanged$34 .subscribe(done);35 var controller = getController();36 expect(controller.formData.calendar.calendarType).toEqual('single');37 expect(controller.type).toEqual('single');38 });39 it('should set today as the default time-span when creating a new offer', function (done) {40 EventFormData41 .timingChanged$42 .subscribe(done);43 var today = new Date(2013, 9, 23);44 jasmine.clock().mockDate(today);45 var controller = getController();46 var expectedTimeSpans = [{47 allDay: true,48 start: moment(today).startOf('day').toDate(),49 end: moment(today).endOf('day').toDate(),50 endTouched: false,51 status: { type: 'Available' }52 }];53 expect(controller.timeSpans).toEqual(expectedTimeSpans);54 });55 it('should copy the last time-span without triggering a change when creating a new one', function (done) {56 EventFormData57 .timingChanged$58 .subscribe(done);59 var controller = getController();60 controller.timeSpans = [61 {62 allDay: true,63 start: new Date(2013, 9, 23, 2),64 end: new Date(2013, 9, 23, 5)65 },66 {67 allDay: false,68 start: new Date(2013, 9, 23, 9),69 end: new Date(2013, 9, 23, 17)70 }71 ];72 var expectedTimeSpans = [73 {74 allDay: true,75 start: new Date(2013, 9, 23, 2),76 end: new Date(2013, 9, 23, 5)77 },78 {79 allDay: false,80 start: new Date(2013, 9, 23, 9),81 end: new Date(2013, 9, 23, 17)82 },83 {84 allDay: false,85 start: new Date(2013, 9, 23, 9),86 end: new Date(2013, 9, 23, 17),87 status: {type: 'Available'},88 bookingAvailability: {type: 'Available'}89 }90 ];91 spyOn(controller, 'instantTimeSpanChanged');92 controller.createTimeSpan();93 expect(controller.timeSpans).toEqual(expectedTimeSpans);94 expect(controller.instantTimeSpanChanged).not.toHaveBeenCalled();95 });96 it('should initialize time-spans and trigger a change when starting a new list', function (done) {97 EventFormData98 .timingChanged$99 .subscribe(done);100 var controller = getController();101 var today = new Date(2013, 9, 23);102 jasmine.clock().mockDate(today);103 var expectedTimeSpans = [104 {105 allDay: true,106 start: moment(today).startOf('day').toDate(),107 end: moment(today).endOf('day').toDate(),108 endTouched: false,109 status: { type: 'Available' }110 }111 ];112 spyOn(controller, 'instantTimeSpanChanged');113 controller.timeSpans = [];114 controller.createTimeSpan();115 expect(controller.timeSpans).toEqual(expectedTimeSpans);116 expect(controller.instantTimeSpanChanged).toHaveBeenCalled();117 });118 it('should save timespans to form-data when timespans change', function (done) {119 EventFormData120 .timingChanged$121 .subscribe(done);122 var controller = getController();123 controller.timeSpans = [124 {125 start: new Date(2013, 9, 23, 2),126 end: new Date(2013, 9, 23, 5)127 },128 {129 start: new Date(2013, 9, 23, 9),130 end: new Date(2013, 9, 23, 17)131 }132 ];133 var expectedTimeSpans = [134 {135 start: new Date(2013, 9, 23, 2),136 end: new Date(2013, 9, 23, 5)137 },138 {139 start: new Date(2013, 9, 23, 9),140 end: new Date(2013, 9, 23, 17)141 }142 ];143 spyOn(controller.formData, 'timingChanged');144 controller.instantTimeSpanChanged();145 expect(controller.formData.calendar.timeSpans).toEqual(expectedTimeSpans);146 });147 it('should update the time-span list when removing a time-span', function (done) {148 EventFormData149 .timingChanged$150 .subscribe(done);151 var controller = getController();152 controller.timeSpans = [153 {154 allDay: false,155 start: new Date(2013, 9, 23, 2),156 end: new Date(2013, 9, 23, 5)157 },158 {159 allDay: false,160 start: new Date(2013, 9, 23, 9),161 end: new Date(2013, 9, 23, 17)162 }163 ];164 var expectedTimeSpans = [165 {166 allDay: false,167 start: new Date(2013, 9, 23, 2),168 end: new Date(2013, 9, 23, 5)169 }170 ];171 spyOn(controller.formData, 'timingChanged');172 controller.removeTimeSpan(controller.timeSpans[1]);173 expect(controller.timeSpans).toEqual(expectedTimeSpans);174 });175 it('should validate time-spans before saving them and show missing requirements', function (done) {176 EventFormData177 .timingChanged$178 .subscribe(done);179 var controller = getController();180 controller.timeSpans = [181 {182 allDay: false,183 start: undefined,184 end: undefined185 },186 {187 allDay: false,188 start: new Date(2013, 9, 23, 13),189 end: new Date(2013, 9, 23, 9)190 }191 ];192 var expectedRequirements = [193 ['timedWhenNotAllDay'],194 ['startBeforeEnd']195 ];196 spyOn(controller.formData, 'saveTimeSpans');197 controller.instantTimeSpanChanged();198 expect(controller.timeSpanRequirements).toEqual(expectedRequirements);199 expect(controller.formData.saveTimeSpans).not.toHaveBeenCalled();200 });201 it('should show a time-span requirement when the start- is before end-day', function (done) {202 EventFormData203 .timingChanged$204 .subscribe(done);205 var controller = getController();206 controller.timeSpans = [207 {208 allDay: false,209 start: new Date(2013, 9, 23, 13),210 end: new Date(2013, 9, 21, 9),211 endTouched: true212 },213 {214 allDay: true,215 start: new Date(2013, 9, 23, 13),216 end: new Date(2013, 9, 21, 9),217 endTouched: true218 }219 ];220 var expectedRequirements = [['startBeforeEndDay'], ['startBeforeEndDay']];221 spyOn(controller.formData, 'saveTimeSpans');222 controller.instantTimeSpanChanged();223 expect(controller.timeSpanRequirements).toEqual(expectedRequirements);224 expect(controller.formData.saveTimeSpans).not.toHaveBeenCalled();225 });226 it('should show a time-span requirement when the begin- is before end-time', function (done) {227 EventFormData228 .timingChanged$229 .subscribe(done);230 var controller = getController();231 controller.timeSpans = [232 {233 allDay: true,234 start: new Date(2013, 9, 23, 13),235 end: new Date(2013, 9, 23, 9)236 },237 {238 allDay: false,239 start: new Date(2013, 9, 23, 13),240 end: new Date(2013, 9, 23, 9)241 }242 ];243 var expectedRequirements = [[], ['startBeforeEnd']];244 spyOn(controller.formData, 'saveTimeSpans');245 controller.instantTimeSpanChanged();246 expect(controller.timeSpanRequirements).toEqual(expectedRequirements);247 expect(controller.formData.saveTimeSpans).not.toHaveBeenCalled();248 });249 it('should show a time-span requirement when the begin or end date is too far in the future', function (done) {250 EventFormData251 .timingChanged$252 .subscribe(done);253 // Get current date254 var d = new Date();255 var controller = getController();256 controller.timeSpans = [257 {258 allDay: true,259 start: new Date(2013, 9, 23, 9),260 end: new Date(2023, 9, 23, 9)261 }262 ];263 var expectedRequirements = [['tooFarInFuture']];264 spyOn(controller.formData, 'saveTimeSpans');265 controller.instantTimeSpanChanged();266 expect(controller.timeSpanRequirements).toEqual(expectedRequirements);267 expect(controller.formData.saveTimeSpans).not.toHaveBeenCalled();268 });269 it('should switch the calendar type to multiple when there is more than one time-span', function (done) {270 EventFormData271 .timingChanged$272 .subscribe(done);273 var controller = getController();274 controller.type = 'single';275 controller.timeSpans = [276 {277 allDay: true,278 start: new Date(2013, 9, 23, 2),279 end: new Date(2013, 9, 23, 5)280 },281 {282 allDay: false,283 start: new Date(2013, 9, 23, 9),284 end: new Date(2013, 9, 23, 19)285 }286 ];287 spyOn(controller.formData, 'timingChanged');288 controller.instantTimeSpanChanged();289 expect(controller.type).toEqual('multiple');290 });291 it('should switch the calendar type to single when a time-span is removed and there is only one left', function (done) {292 EventFormData293 .timingChanged$294 .subscribe(done);295 var controller = getController();296 controller.type = 'multiple';297 controller.timeSpans = [298 {299 allDay: true,300 start: new Date(2013, 9, 23, 2),301 end: new Date(2013, 9, 23, 5)302 },303 {304 allDay: false,305 start: new Date(2013, 9, 23, 9),306 end: new Date(2013, 9, 23, 19)307 }308 ];309 spyOn(controller.formData, 'timingChanged');310 controller.removeTimeSpan(controller.timeSpans[1]);311 expect(controller.type).toEqual('single');312 });...
event-form-data.factory.spec.js
Source:event-form-data.factory.spec.js
...253 EventFormData.initCalendar();254 EventFormData255 .timingChanged$256 .subscribe(done);257 EventFormData.timingChanged();258 expect(EventFormData.showStep3).toEqual(true);259 });260 it('should not show step 3 when timing changes and step 2 isn\'t shown', function (done) {261 EventFormData.showStep2 = false;262 EventFormData.initCalendar();263 EventFormData264 .timingChanged$265 .subscribe(done);266 EventFormData.timingChanged();267 expect(EventFormData.showStep3).toEqual(false);268 });...
event-duplication-calendar.controller.spec.js
Source:event-duplication-calendar.controller.spec.js
...52 spyOn($rootScope, '$emit');53 calendarController.formData54 .timingChanged$55 .subscribe(done);56 calendarController.formData.timingChanged();57 expect($rootScope.$emit).toHaveBeenCalledWith('duplicateTimingChanged', jasmine.any(Object));58 });...
Using AI Code Generation
1var bestTime = new BestTime();2bestTime.timingChanged(function (time) {3 console.log("New time: " + time);4});5bestTime.time = 10;6bestTime.time = 20;7bestTime.time = 30;
Using AI Code Generation
1var BestTime = require('./bestTime.js');2var bestTime = new BestTime();3bestTime.timingChanged(1, 2, 3, 4, 5);4var BestTime = function () {5 this.timingChanged = function (time, lap, split, pace, distance, speed, temperature, humidity, altitude, windSpeed) {6 console.log('Time: ' + time);7 console.log('Lap: ' + lap);8 console.log('Split: ' + split);9 console.log('Pace: ' + pace);10 console.log('Distance: ' + distance);11 console.log('Speed: ' + speed);12 console.log('Temperature: ' + temperature);13 console.log('Humidity: ' + humidity);14 console.log('Altitude: ' + altitude);15 console.log('Wind Speed: ' + windSpeed);16 };17};18module.exports = BestTime;19Your name to display (optional):20Your name to display (optional):
Using AI Code Generation
1var bestTime = require('./bestTime');2var time = new bestTime();3time.timingChanged(function(){4 console.log('timingChanged');5});6time.start();7time.stop();8time.start();9time.stop();10time.start();11time.stop();12time.start();13time.stop();14time.start();15time.stop();16var BestTime = function(){17 this.startTime = new Date();18 this.stopTime = new Date();19 this.timeElapsed = 0;20 this.timer = null;21 this.timingChanged = null;22};23BestTime.prototype.start = function(){24 this.startTime = new Date();25 this.timer = setInterval(function(){26 this.timeElapsed = (new Date()) - this.startTime;27 if(this.timingChanged){28 this.timingChanged();29 }30 }.bind(this), 100);31};32BestTime.prototype.stop = function(){33 this.stopTime = new Date();34 clearInterval(this.timer);35 this.timer = null;36 this.timeElapsed = this.stopTime - this.startTime;37};38module.exports = BestTime;
Using AI Code Generation
1var request = require('request');2var cheerio = require('cheerio');3var fs = require('fs');4request(url, function(err, resp, body){5 if(err) throw err;6 var $ = cheerio.load(body);7 var price = $('.priceView-hero-price .priceView-customer-price').text();8 var name = $('.sku-title').text();9 var old_price = $('.priceView-customer-price .priceView-purchase-price').text();10 var date = new Date();11 var time = date.getTime();12 var data = {13 };14 var json = JSON.stringify(data);15 fs.appendFile('output.json', json + ',\n', function(err){16 if(err) throw err;17 console.log('Saved to output.json');18 });19});
Using AI Code Generation
1var BestPractice = require('./BestPractice.js');2var bestPractice = new BestPractice();3bestPractice.timingChanged(1000);4function BestPractice() {5 this.timingChanged = function (timing) {6 console.log("Timing changed to " + timing + " ms");7 }8}9module.exports = BestPractice;10{11 "scripts": {12 },13}14var BestPractice = require('./BestPractice.js');15function BestPractice() {16 this.timingChanged = function (timing) {17 console.log("Timing changed to " + timing + " ms");18 }19}20module.exports = BestPractice;21{22 "scripts": {23 },24}25var BestPractice = require('./BestPractice.js');26var bestPractice = new BestPractice();27bestPractice.timingChanged(1000);
Using AI Code Generation
1var BestPractice = require('./best_practice.js');2var bp1 = new BestPractice('bp1', 10);3var bp2 = new BestPractice('bp2', 20);4var bp3 = new BestPractice('bp3', 30);5bp1.on('timingChanged', function (timing) {6 console.log('bp1 timing changed to ' + timing);7});8bp2.on('timingChanged', function (timing) {9 console.log('bp2 timing changed to ' + timing);10});11bp3.on('timingChanged', function (timing) {12 console.log('bp3 timing changed to ' + timing);13});14bp1.timingChanged(bp2);15bp2.timingChanged(bp3);16bp3.timingChanged(bp1);17var events = require('events');18var util = require('util');19function BestPractice(name, timing) {20 events.EventEmitter.call(this);21 this.name = name;22 this.timing = timing;23}24util.inherits(BestPractice, events.EventEmitter);25BestPractice.prototype.timingChanged = function (bp) {26 this.timing = bp.timing;27 this.emit('timingChanged', this.timing);28};29module.exports = BestPractice;30{31 "scripts": {32 },33 "dependencies": {34 }35}
Using AI Code Generation
1var timingChanged = require('./index.js').timingChanged;2var data = {3 "timing": {4 }5};6timingChanged(data);7var data = {8 "timing": {9 }10};11timingChanged(data);12var data = {13 "timing": {14 }15};16timingChanged(data);17var data = {18 "timing": {19 }20};21timingChanged(data);
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!