Best JavaScript code snippet using mountebank
map_test.js
Source:map_test.js
...69function testGetBeforeSetOfUnderUnderProtoUnderUnder() {70 assertUndefined(map.get('__proto__'));71}72function testContainsKey() {73 assertFalse(map.containsKey('key'));74 assertFalse(map.containsKey('__proto__'));75 assertFalse(map.containsKey('toString'));76 assertFalse(map.containsKey('hasOwnProperty'));77 assertFalse(map.containsKey('key2'));78 assertFalse(map.containsKey('key3'));79 assertFalse(map.containsKey('key4'));80 map.set('key', 'v');81 map.set('__proto__', 'v');82 map.set('toString', 'v');83 map.set('hasOwnProperty', 'v');84 map.set('key2', undefined);85 map.set('key3', null);86 map.set('key4', '');87 assertTrue(map.containsKey('key'));88 assertTrue(map.containsKey('__proto__'));89 assertTrue(map.containsKey('toString'));90 assertTrue(map.containsKey('hasOwnProperty'));91 assertTrue(map.containsKey('key2'));92 assertTrue(map.containsKey('key3'));93 assertTrue(map.containsKey('key4'));94}95function testContainsValueWithShadowKeys() {96 assertFalse(map.containsValue('v2'));97 assertFalse(map.containsValue('v3'));98 assertFalse(map.containsValue('v4'));99 map.set('__proto__', 'v2');100 map.set('toString', 'v3');101 map.set('hasOwnProperty', 'v4');102 assertTrue(map.containsValue('v2'));103 assertTrue(map.containsValue('v3'));104 assertTrue(map.containsValue('v4'));105 assertFalse(map.containsValue(Object.prototype.toString));106 assertFalse(map.containsValue(Object.prototype.hasOwnProperty));107}108function testContainsValueWithNullAndUndefined() {109 assertFalse(map.containsValue(undefined));110 assertFalse(map.containsValue(null));111 map.set('key2', undefined);112 map.set('key3', null);113 assertTrue(map.containsValue(undefined));114 assertTrue(map.containsValue(null));115}116function testContainsValueWithNumber() {117 assertFalse(map.containsValue(-1));118 assertFalse(map.containsValue(0));119 assertFalse(map.containsValue(1));120 map.set('key', -1);121 map.set('key2', 0);122 map.set('key3', 1);123 assertTrue(map.containsValue(-1));124 assertTrue(map.containsValue(0));125 assertTrue(map.containsValue(1));126}127function testContainsValueWithNaN() {128 assertFalse(map.containsValue(NaN));129 map.set('key', NaN);130 assertTrue(map.containsValue(NaN));131}132function testContainsValueWithNegativeZero() {133 assertFalse(map.containsValue(-0));134 map.set('key', -0);135 assertTrue(map.containsValue(-0));136 assertFalse(map.containsValue(0));137 map.set('key', 0);138 assertFalse(map.containsValue(-0));139 assertTrue(map.containsValue(0));140}141function testContainsValueWithStrings() {142 assertFalse(map.containsValue(''));143 assertFalse(map.containsValue('v'));144 map.set('key', '');145 map.set('key2', 'v');146 assertTrue(map.containsValue(''));147 assertTrue(map.containsValue('v'));148}149function testRemove() {150 map.set('key', 'v');151 map.set('__proto__', 'v2');152 map.set('toString', 'v3');153 map.set('hasOwnProperty', 'v4');154 map.set('key2', undefined);155 map.set('key3', null);156 map.set('key4', '');157 assertFalse(map.remove('key do not exist'));158 assertTrue(map.remove('key'));159 assertFalse(map.containsKey('key'));160 assertFalse(map.remove('key'));161 assertTrue(map.remove('__proto__'));162 assertFalse(map.containsKey('__proto__'));163 assertFalse(map.remove('__proto__'));164 assertTrue(map.remove('toString'));165 assertFalse(map.containsKey('toString'));166 assertFalse(map.remove('toString'));167 assertTrue(map.remove('hasOwnProperty'));168 assertFalse(map.containsKey('hasOwnProperty'));169 assertFalse(map.remove('hasOwnProperty'));170 assertTrue(map.remove('key2'));171 assertFalse(map.containsKey('key2'));172 assertFalse(map.remove('key2'));173 assertTrue(map.remove('key3'));174 assertFalse(map.containsKey('key3'));175 assertFalse(map.remove('key3'));176 assertTrue('', map.remove('key4'));177 assertFalse(map.containsKey('key4'));178 assertFalse(map.remove('key4'));179}180function testGetCountAndIsEmpty() {181 assertEquals(0, map.getCount());182 assertTrue(map.isEmpty());183 map.set('key', 'v');184 assertEquals(1, map.getCount());185 map.set('__proto__', 'v2');186 assertEquals(2, map.getCount());187 map.set('toString', 'v3');188 assertEquals(3, map.getCount());189 map.set('hasOwnProperty', 'v4');190 assertEquals(4, map.getCount());191 map.set('key', 'a');192 assertEquals(4, map.getCount());193 map.set('__proto__', 'a2');194 assertEquals(4, map.getCount());195 map.set('toString', 'a3');196 assertEquals(4, map.getCount());197 map.set('hasOwnProperty', 'a4');198 assertEquals(4, map.getCount());199 map.remove('key');200 assertEquals(3, map.getCount());201 map.remove('__proto__');202 assertEquals(2, map.getCount());203 map.remove('toString');204 assertEquals(1, map.getCount());205 map.remove('hasOwnProperty');206 assertEquals(0, map.getCount());207}208function testClear() {209 map.set('key', 'v');210 map.set('__proto__', 'v');211 map.set('toString', 'v');212 map.set('hasOwnProperty', 'v');213 map.set('key2', undefined);214 map.set('key3', null);215 map.set('key4', '');216 map.clear();217 assertFalse(map.containsKey('key'));218 assertFalse(map.containsKey('__proto__'));219 assertFalse(map.containsKey('toString'));220 assertFalse(map.containsKey('hasOwnProperty'));221 assertFalse(map.containsKey('key2'));222 assertFalse(map.containsKey('key3'));223 assertFalse(map.containsKey('key4'));224}225function testGetEntries() {226 map.set('key', 'v');227 map.set('__proto__', 'v');228 map.set('toString', 'v');229 map.set('hasOwnProperty', 'v');230 map.set('key2', undefined);231 map.set('key3', null);232 map.set('key4', '');233 var entries = map.getEntries();234 assertEquals(7, entries.length);235 assertContainsEntry(['key', 'v'], entries);236 assertContainsEntry(['__proto__', 'v'], entries);237 assertContainsEntry(['toString', 'v'], entries);238 assertContainsEntry(['hasOwnProperty', 'v'], entries);239 assertContainsEntry(['key2', undefined], entries);240 assertContainsEntry(['key3', null], entries);241 assertContainsEntry(['key4', ''], entries);242}243function testGetKeys() {244 map.set('key', 'v');245 map.set('__proto__', 'v');246 map.set('toString', 'v');247 map.set('hasOwnProperty', 'v');248 map.set('key2', undefined);249 map.set('key3', null);250 map.set('k4', '');251 var values = map.getKeys();252 assertSameElements(253 ['key', '__proto__', 'toString', 'hasOwnProperty', 'key2', 'key3', 'k4'],254 values);255}256function testGetValues() {257 map.set('key', 'v');258 map.set('__proto__', 'v');259 map.set('toString', 'v');260 map.set('hasOwnProperty', 'v');261 map.set('key2', undefined);262 map.set('key3', null);263 map.set('key4', '');264 var values = map.getValues();265 assertSameElements(['v', 'v', 'v', 'v', undefined, null, ''], values);266}267function testAddAllToEmptyMap() {268 map.set('key', 'v');269 map.set('key2', 'v2');270 map.set('key3', 'v3');271 map.set('key4', 'v4');272 var map2 = new goog.labs.structs.Map();273 map2.addAll(map);274 assertEquals(4, map2.getCount());275 assertEquals('v', map2.get('key'));276 assertEquals('v2', map2.get('key2'));277 assertEquals('v3', map2.get('key3'));278 assertEquals('v4', map2.get('key4'));279}280function testAddAllToNonEmptyMap() {281 map.set('key', 'v');282 map.set('key2', 'v2');283 map.set('key3', 'v3');284 map.set('key4', 'v4');285 var map2 = new goog.labs.structs.Map();286 map2.set('key0', 'o');287 map2.set('key', 'o');288 map2.set('key2', 'o2');289 map2.set('key3', 'o3');290 map2.addAll(map);291 assertEquals(5, map2.getCount());292 assertEquals('o', map2.get('key0'));293 assertEquals('v', map2.get('key'));294 assertEquals('v2', map2.get('key2'));295 assertEquals('v3', map2.get('key3'));296 assertEquals('v4', map2.get('key4'));297}298function testClone() {299 map.set('key', 'v');300 map.set('key2', 'v2');301 map.set('key3', 'v3');302 map.set('key4', 'v4');303 var map2 = map.clone();304 assertEquals(4, map2.getCount());305 assertEquals('v', map2.get('key'));306 assertEquals('v2', map2.get('key2'));307 assertEquals('v3', map2.get('key3'));308 assertEquals('v4', map2.get('key4'));309}310function testMapWithModifiedObjectPrototype() {311 stubs.set(Object.prototype, 'toString', function() {});312 stubs.set(Object.prototype, 'foo', function() {});313 stubs.set(Object.prototype, 'field', 100);314 stubs.set(Object.prototype, 'fooKey', function() {});315 map = new goog.labs.structs.Map();316 map.set('key', 'v');317 map.set('key2', 'v2');318 map.set('fooKey', 'v3');319 assertTrue(map.containsKey('key'));320 assertTrue(map.containsKey('key2'));321 assertTrue(map.containsKey('fooKey'));322 assertFalse(map.containsKey('toString'));323 assertFalse(map.containsKey('foo'));324 assertFalse(map.containsKey('field'));325 assertTrue(map.containsValue('v'));326 assertTrue(map.containsValue('v2'));327 assertTrue(map.containsValue('v3'));328 assertFalse(map.containsValue(100));329 var entries = map.getEntries();330 assertEquals(3, entries.length);331 assertContainsEntry(['key', 'v'], entries);332 assertContainsEntry(['key2', 'v2'], entries);333 assertContainsEntry(['fooKey', 'v3'], entries);334}335function assertContainsEntry(entry, entryList) {336 for (var i = 0; i < entryList.length; ++i) {337 if (entry[0] == entryList[i][0] && entry[1] === entryList[i][1]) {338 return;...
lrucache.test.js
Source:lrucache.test.js
...35 expect(lruCache.getValues()).to.eql([3, 2, 1, 0]);36 });37 it('reports which keys are contained', function() {38 fillLRUCache(lruCache);39 expect(lruCache.containsKey('a')).to.be.ok();40 expect(lruCache.containsKey('b')).to.be.ok();41 expect(lruCache.containsKey('c')).to.be.ok();42 expect(lruCache.containsKey('d')).to.be.ok();43 expect(lruCache.containsKey('e')).to.not.be();44 });45 });46 describe('getting the oldest key', function() {47 it('moves the key to newest position', function() {48 fillLRUCache(lruCache);49 lruCache.get('a');50 expect(lruCache.getCount()).to.eql(4);51 expect(lruCache.getKeys()).to.eql(['a', 'd', 'c', 'b']);52 expect(lruCache.getValues()).to.eql([0, 3, 2, 1]);53 });54 });55 describe('getting a key in the middle', function() {56 it('moves the key to newest position', function() {57 fillLRUCache(lruCache);58 lruCache.get('b');59 expect(lruCache.getCount()).to.eql(4);60 expect(lruCache.getKeys()).to.eql(['b', 'd', 'c', 'a']);61 expect(lruCache.getValues()).to.eql([1, 3, 2, 0]);62 });63 });64 describe('getting the newest key', function() {65 it('maintains the key to newest position', function() {66 fillLRUCache(lruCache);67 lruCache.get('d');68 expect(lruCache.getCount()).to.eql(4);69 expect(lruCache.getKeys()).to.eql(['d', 'c', 'b', 'a']);70 expect(lruCache.getValues()).to.eql([3, 2, 1, 0]);71 });72 });73 describe('setting a new value', function() {74 it('adds it as the newest value', function() {75 fillLRUCache(lruCache);76 lruCache.set('e', 4);77 expect(lruCache.getKeys()).to.eql(['e', 'd', 'c', 'b', 'a']);78 expect(lruCache.getValues()).to.eql([4, 3, 2, 1, 0]);79 });80 });81 describe('setting an existing value', function() {82 it('raises an exception', function() {83 fillLRUCache(lruCache);84 expect(function() {85 lruCache.set('a', 0);86 }).to.throwException();87 });88 });89 describe('disallowed keys', function() {90 it('setting raises an exception', function() {91 expect(function() {92 lruCache.set('constructor', 0);93 }).to.throwException();94 expect(function() {95 lruCache.set('hasOwnProperty', 0);96 }).to.throwException();97 expect(function() {98 lruCache.set('isPrototypeOf', 0);99 }).to.throwException();100 expect(function() {101 lruCache.set('propertyIsEnumerable', 0);102 }).to.throwException();103 expect(function() {104 lruCache.set('toLocaleString', 0);105 }).to.throwException();106 expect(function() {107 lruCache.set('toString', 0);108 }).to.throwException();109 expect(function() {110 lruCache.set('valueOf', 0);111 }).to.throwException();112 });113 it('getting returns false', function() {114 expect(lruCache.containsKey('constructor')).to.not.be();115 expect(lruCache.containsKey('hasOwnProperty')).to.not.be();116 expect(lruCache.containsKey('isPrototypeOf')).to.not.be();117 expect(lruCache.containsKey('propertyIsEnumerable')).to.not.be();118 expect(lruCache.containsKey('toLocaleString')).to.not.be();119 expect(lruCache.containsKey('toString')).to.not.be();120 expect(lruCache.containsKey('valueOf')).to.not.be();121 });122 });123 describe('popping a value', function() {124 it('returns the least-recent-used value', function() {125 fillLRUCache(lruCache);126 expect(lruCache.pop()).to.eql(0);127 expect(lruCache.getCount()).to.eql(3);128 expect(lruCache.containsKey('a')).to.not.be();129 expect(lruCache.pop()).to.eql(1);130 expect(lruCache.getCount()).to.eql(2);131 expect(lruCache.containsKey('b')).to.not.be();132 expect(lruCache.pop()).to.eql(2);133 expect(lruCache.getCount()).to.eql(1);134 expect(lruCache.containsKey('c')).to.not.be();135 expect(lruCache.pop()).to.eql(3);136 expect(lruCache.getCount()).to.eql(0);137 expect(lruCache.containsKey('d')).to.not.be();138 });139 });140 describe('peeking at the last value', function() {141 it('returns the last key', function() {142 fillLRUCache(lruCache);143 expect(lruCache.peekLast()).to.eql(0);144 });145 it('throws an exception when the cache is empty', function() {146 expect(function() {147 lruCache.peekLast();148 }).to.throwException();149 });150 });151 describe('peeking at the last key', function() {...
Using AI Code Generation
1var containsKey = function (key) {2 return this[key] !== undefined;3};4var containsKey = function (key) {5 return this[key] !== undefined;6};7var response = {8 "headers": {9 },10 "body": {11 }12};13var imposter = {14 {15 {16 "is": {17 "body": JSON.stringify(response)18 }19 }20 }21};22var imposter = {23 {24 {25 "is": {26 "body": JSON.stringify(response)27 }28 }29 }30};31var response = {32 "headers": {33 },34 "body": {35 }36};37var imposter = {38 {39 {40 "is": {41 "body": JSON.stringify(response)42 }43 }44 }45};46var imposter = {47 {48 {49 "is": {50 "body": JSON.stringify(response)51 }52 }53 }54};55var response = {56 "headers": {57 },58 "body": {59 }60};61var imposter = {62 {63 {64 "is": {65 "body": JSON.stringify(response)66 }67 }68 }69};70var imposter = {71 {
Using AI Code Generation
1var mb = require('mountebank');2var assert = require('assert');3var Q = require('q');4var port = 2525;5var imposterPort = 4545;6var protocol = 'http';7var stub = {8 {9 is: {10 headers: {11 },12 }13 }14};15var imposter = {16};17Q(mb.start({ port: port, pidfile: 'mb.pid', logfile: 'mb.log', ipWhitelist: ['*'] }))18 .then(function () {19 return mb.post('/imposters', imposter);20 })21 .then(function (response) {22 assert.strictEqual(response.statusCode, 201);23 return mb.del('/imposters/' + imposterPort);24 })25 .then(function (response) {26 assert.strictEqual(response.statusCode, 200);27 return mb.del('/imposters');28 })29 .then(function (response) {30 assert.strictEqual(response.statusCode, 200);31 return mb.stop({ pidfile: 'mb.pid' });32 })33 .done();34 at exports._errnoException (util.js:1020:11)35 at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32)36 at onErrorNT (internal/child_process.js:359:16)37 at _combinedTickCallback (internal/process/next_tick.js:74:11)38 at process._tickCallback (internal/process/next_tick.js:98:9)39Your name to display (optional):40Your name to display (optional):
Using AI Code Generation
1const { createClient } = require('mountebank');2const client = createClient({ port: 2525, protocol: 'http' });3client.createImposter({protocol: 'http', port: 3000, name: 'myImposter'});4client.createStub({imposterPort: 3000, stubs: [5 {6 {7 is: {8 }9 }10 }11]});12client.get('/test', { port: 3000 }, (error, response) => {13 console.log(response.body);14});15client.deleteImposter({port: 3000});16const { createClient } = require('mountebank');17const client = createClient({ port: 2525, protocol: 'http' });18client.createImposter({protocol: 'http', port: 3000, name: 'myImposter'});19client.createStub({imposterPort: 3000, stubs: [20 {21 {22 is: {23 }24 }25 }26]});27client.get('/test', { port: 3000 }, (error, response) => {28 console.log(response.body);29});30client.deleteImposter({port: 3000});
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!!