Best JavaScript code snippet using fast-check-monorepo
vbscript.js
Source:vbscript.js
1// CodeMirror, copyright (c) by Marijn Haverbeke and others2// Distributed under an MIT license: https://codemirror.net/LICENSE3/*4For extra ASP classic objects, initialize CodeMirror instance with this option:5 isASP: true6E.G.:7 var editor = CodeMirror.fromTextArea(document.getElementById("code"), {8 lineNumbers: true,9 isASP: true10 });11*/12(function(mod) {13 if (typeof exports == "object" && typeof module == "object") // CommonJS14 mod(require("../../lib/codemirror"));15 else if (typeof define == "function" && define.amd) // AMD16 define(["../../lib/codemirror"], mod);17 else // Plain browser env18 mod(CodeMirror);19})(function(CodeMirror) {20"use strict";21CodeMirror.defineMode("vbscript", function(conf, parserConf) {22 var ERRORCLASS = 'error';23 function wordRegexp(words) {24 return new RegExp("^((" + words.join(")|(") + "))\\b", "i");25 }26 var singleOperators = new RegExp("^[\\+\\-\\*/&\\\\\\^<>=]");27 var doubleOperators = new RegExp("^((<>)|(<=)|(>=))");28 var singleDelimiters = new RegExp('^[\\.,]');29 var brackets = new RegExp('^[\\(\\)]');30 var identifiers = new RegExp("^[A-Za-z][_A-Za-z0-9]*");31 var openingKeywords = ['class','sub','select','while','if','function', 'property', 'with', 'for'];32 var middleKeywords = ['else','elseif','case'];33 var endKeywords = ['next','loop','wend'];34 var wordOperators = wordRegexp(['and', 'or', 'not', 'xor', 'is', 'mod', 'eqv', 'imp']);35 var commonkeywords = ['dim', 'redim', 'then', 'until', 'randomize',36 'byval','byref','new','property', 'exit', 'in',37 'const','private', 'public',38 'get','set','let', 'stop', 'on error resume next', 'on error goto 0', 'option explicit', 'call', 'me'];39 //This list was from: http://msdn.microsoft.com/en-us/library/f8tbc79x(v=vs.84).aspx40 var atomWords = ['true', 'false', 'nothing', 'empty', 'null'];41 //This list was from: http://msdn.microsoft.com/en-us/library/3ca8tfek(v=vs.84).aspx42 var builtinFuncsWords = ['abs', 'array', 'asc', 'atn', 'cbool', 'cbyte', 'ccur', 'cdate', 'cdbl', 'chr', 'cint', 'clng', 'cos', 'csng', 'cstr', 'date', 'dateadd', 'datediff', 'datepart',43 'dateserial', 'datevalue', 'day', 'escape', 'eval', 'execute', 'exp', 'filter', 'formatcurrency', 'formatdatetime', 'formatnumber', 'formatpercent', 'getlocale', 'getobject',44 'getref', 'hex', 'hour', 'inputbox', 'instr', 'instrrev', 'int', 'fix', 'isarray', 'isdate', 'isempty', 'isnull', 'isnumeric', 'isobject', 'join', 'lbound', 'lcase', 'left',45 'len', 'loadpicture', 'log', 'ltrim', 'rtrim', 'trim', 'maths', 'mid', 'minute', 'month', 'monthname', 'msgbox', 'now', 'oct', 'replace', 'rgb', 'right', 'rnd', 'round',46 'scriptengine', 'scriptenginebuildversion', 'scriptenginemajorversion', 'scriptengineminorversion', 'second', 'setlocale', 'sgn', 'sin', 'space', 'split', 'sqr', 'strcomp',47 'string', 'strreverse', 'tan', 'time', 'timer', 'timeserial', 'timevalue', 'typename', 'ubound', 'ucase', 'unescape', 'vartype', 'weekday', 'weekdayname', 'year'];48 //This list was from: http://msdn.microsoft.com/en-us/library/ydz4cfk3(v=vs.84).aspx49 var builtinConsts = ['vbBlack', 'vbRed', 'vbGreen', 'vbYellow', 'vbBlue', 'vbMagenta', 'vbCyan', 'vbWhite', 'vbBinaryCompare', 'vbTextCompare',50 'vbSunday', 'vbMonday', 'vbTuesday', 'vbWednesday', 'vbThursday', 'vbFriday', 'vbSaturday', 'vbUseSystemDayOfWeek', 'vbFirstJan1', 'vbFirstFourDays', 'vbFirstFullWeek',51 'vbGeneralDate', 'vbLongDate', 'vbShortDate', 'vbLongTime', 'vbShortTime', 'vbObjectError',52 'vbOKOnly', 'vbOKCancel', 'vbAbortRetryIgnore', 'vbYesNoCancel', 'vbYesNo', 'vbRetryCancel', 'vbCritical', 'vbQuestion', 'vbExclamation', 'vbInformation', 'vbDefaultButton1', 'vbDefaultButton2',53 'vbDefaultButton3', 'vbDefaultButton4', 'vbApplicationModal', 'vbSystemModal', 'vbOK', 'vbCancel', 'vbAbort', 'vbRetry', 'vbIgnore', 'vbYes', 'vbNo',54 'vbCr', 'VbCrLf', 'vbFormFeed', 'vbLf', 'vbNewLine', 'vbNullChar', 'vbNullString', 'vbTab', 'vbVerticalTab', 'vbUseDefault', 'vbTrue', 'vbFalse',55 'vbEmpty', 'vbNull', 'vbInteger', 'vbLong', 'vbSingle', 'vbDouble', 'vbCurrency', 'vbDate', 'vbString', 'vbObject', 'vbError', 'vbBoolean', 'vbVariant', 'vbDataObject', 'vbDecimal', 'vbByte', 'vbArray'];56 //This list was from: http://msdn.microsoft.com/en-us/library/hkc375ea(v=vs.84).aspx57 var builtinObjsWords = ['WScript', 'err', 'debug', 'RegExp'];58 var knownProperties = ['description', 'firstindex', 'global', 'helpcontext', 'helpfile', 'ignorecase', 'length', 'number', 'pattern', 'source', 'value', 'count'];59 var knownMethods = ['clear', 'execute', 'raise', 'replace', 'test', 'write', 'writeline', 'close', 'open', 'state', 'eof', 'update', 'addnew', 'end', 'createobject', 'quit'];60 var aspBuiltinObjsWords = ['server', 'response', 'request', 'session', 'application'];61 var aspKnownProperties = ['buffer', 'cachecontrol', 'charset', 'contenttype', 'expires', 'expiresabsolute', 'isclientconnected', 'pics', 'status', //response62 'clientcertificate', 'cookies', 'form', 'querystring', 'servervariables', 'totalbytes', //request63 'contents', 'staticobjects', //application64 'codepage', 'lcid', 'sessionid', 'timeout', //session65 'scripttimeout']; //server66 var aspKnownMethods = ['addheader', 'appendtolog', 'binarywrite', 'end', 'flush', 'redirect', //response67 'binaryread', //request68 'remove', 'removeall', 'lock', 'unlock', //application69 'abandon', //session70 'getlasterror', 'htmlencode', 'mappath', 'transfer', 'urlencode']; //server71 var knownWords = knownMethods.concat(knownProperties);72 builtinObjsWords = builtinObjsWords.concat(builtinConsts);73 if (conf.isASP){74 builtinObjsWords = builtinObjsWords.concat(aspBuiltinObjsWords);75 knownWords = knownWords.concat(aspKnownMethods, aspKnownProperties);76 };77 var keywords = wordRegexp(commonkeywords);78 var atoms = wordRegexp(atomWords);79 var builtinFuncs = wordRegexp(builtinFuncsWords);80 var builtinObjs = wordRegexp(builtinObjsWords);81 var known = wordRegexp(knownWords);82 var stringPrefixes = '"';83 var opening = wordRegexp(openingKeywords);84 var middle = wordRegexp(middleKeywords);85 var closing = wordRegexp(endKeywords);86 var doubleClosing = wordRegexp(['end']);87 var doOpening = wordRegexp(['do']);88 var noIndentWords = wordRegexp(['on error resume next', 'exit']);89 var comment = wordRegexp(['rem']);90 function indent(_stream, state) {91 state.currentIndent++;92 }93 function dedent(_stream, state) {94 state.currentIndent--;95 }96 // tokenizers97 function tokenBase(stream, state) {98 if (stream.eatSpace()) {99 return 'space';100 //return null;101 }102 var ch = stream.peek();103 // Handle Comments104 if (ch === "'") {105 stream.skipToEnd();106 return 'comment';107 }108 if (stream.match(comment)){109 stream.skipToEnd();110 return 'comment';111 }112 // Handle Number Literals113 if (stream.match(/^((&H)|(&O))?[0-9\.]/i, false) && !stream.match(/^((&H)|(&O))?[0-9\.]+[a-z_]/i, false)) {114 var floatLiteral = false;115 // Floats116 if (stream.match(/^\d*\.\d+/i)) { floatLiteral = true; }117 else if (stream.match(/^\d+\.\d*/)) { floatLiteral = true; }118 else if (stream.match(/^\.\d+/)) { floatLiteral = true; }119 if (floatLiteral) {120 // Float literals may be "imaginary"121 stream.eat(/J/i);122 return 'number';123 }124 // Integers125 var intLiteral = false;126 // Hex127 if (stream.match(/^&H[0-9a-f]+/i)) { intLiteral = true; }128 // Octal129 else if (stream.match(/^&O[0-7]+/i)) { intLiteral = true; }130 // Decimal131 else if (stream.match(/^[1-9]\d*F?/)) {132 // Decimal literals may be "imaginary"133 stream.eat(/J/i);134 // TODO - Can you have imaginary longs?135 intLiteral = true;136 }137 // Zero by itself with no other piece of number.138 else if (stream.match(/^0(?![\dx])/i)) { intLiteral = true; }139 if (intLiteral) {140 // Integer literals may be "long"141 stream.eat(/L/i);142 return 'number';143 }144 }145 // Handle Strings146 if (stream.match(stringPrefixes)) {147 state.tokenize = tokenStringFactory(stream.current());148 return state.tokenize(stream, state);149 }150 // Handle operators and Delimiters151 if (stream.match(doubleOperators)152 || stream.match(singleOperators)153 || stream.match(wordOperators)) {154 return 'operator';155 }156 if (stream.match(singleDelimiters)) {157 return null;158 }159 if (stream.match(brackets)) {160 return "bracket";161 }162 if (stream.match(noIndentWords)) {163 state.doInCurrentLine = true;164 return 'keyword';165 }166 if (stream.match(doOpening)) {167 indent(stream,state);168 state.doInCurrentLine = true;169 return 'keyword';170 }171 if (stream.match(opening)) {172 if (! state.doInCurrentLine)173 indent(stream,state);174 else175 state.doInCurrentLine = false;176 return 'keyword';177 }178 if (stream.match(middle)) {179 return 'keyword';180 }181 if (stream.match(doubleClosing)) {182 dedent(stream,state);183 dedent(stream,state);184 return 'keyword';185 }186 if (stream.match(closing)) {187 if (! state.doInCurrentLine)188 dedent(stream,state);189 else190 state.doInCurrentLine = false;191 return 'keyword';192 }193 if (stream.match(keywords)) {194 return 'keyword';195 }196 if (stream.match(atoms)) {197 return 'atom';198 }199 if (stream.match(known)) {200 return 'variable-2';201 }202 if (stream.match(builtinFuncs)) {203 return 'builtin';204 }205 if (stream.match(builtinObjs)){206 return 'variable-2';207 }208 if (stream.match(identifiers)) {209 return 'variable';210 }211 // Handle non-detected items212 stream.next();213 return ERRORCLASS;214 }215 function tokenStringFactory(delimiter) {216 var singleline = delimiter.length == 1;217 var OUTCLASS = 'string';218 return function(stream, state) {219 while (!stream.eol()) {220 stream.eatWhile(/[^'"]/);221 if (stream.match(delimiter)) {222 state.tokenize = tokenBase;223 return OUTCLASS;224 } else {225 stream.eat(/['"]/);226 }227 }228 if (singleline) {229 if (parserConf.singleLineStringErrors) {230 return ERRORCLASS;231 } else {232 state.tokenize = tokenBase;233 }234 }235 return OUTCLASS;236 };237 }238 function tokenLexer(stream, state) {239 var style = state.tokenize(stream, state);240 var current = stream.current();241 // Handle '.' connected identifiers242 if (current === '.') {243 style = state.tokenize(stream, state);244 current = stream.current();245 if (style && (style.substr(0, 8) === 'variable' || style==='builtin' || style==='keyword')){//|| knownWords.indexOf(current.substring(1)) > -1) {246 if (style === 'builtin' || style === 'keyword') style='variable';247 if (knownWords.indexOf(current.substr(1)) > -1) style='variable-2';248 return style;249 } else {250 return ERRORCLASS;251 }252 }253 return style;254 }255 var external = {256 electricChars:"dDpPtTfFeE ",257 startState: function() {258 return {259 tokenize: tokenBase,260 lastToken: null,261 currentIndent: 0,262 nextLineIndent: 0,263 doInCurrentLine: false,264 ignoreKeyword: false265 };266 },267 token: function(stream, state) {268 if (stream.sol()) {269 state.currentIndent += state.nextLineIndent;270 state.nextLineIndent = 0;271 state.doInCurrentLine = 0;272 }273 var style = tokenLexer(stream, state);274 state.lastToken = {style:style, content: stream.current()};275 if (style==='space') style=null;276 return style;277 },278 indent: function(state, textAfter) {279 var trueText = textAfter.replace(/^\s+|\s+$/g, '') ;280 if (trueText.match(closing) || trueText.match(doubleClosing) || trueText.match(middle)) return conf.indentUnit*(state.currentIndent-1);281 if(state.currentIndent < 0) return 0;282 return state.currentIndent * conf.indentUnit;283 }284 };285 return external;286});287CodeMirror.defineMIME("text/vbscript", "vbscript");...
Using AI Code Generation
1const {check, property} = require("fast-check");2const {expect} = require("chai");3describe("test", () => {4 it("should pass", () => {5 check(property(), () => {6 expect(true).to.equal(true);7 });8 });9});
Using AI Code Generation
1const { fastCheck } = require("fast-check");2const { suite } = require("uvu");3const assert = require("uvu/assert");4const test = suite("test");5test("test", () => {6 fastCheck(assert, () => true);7});8test.run();
Using AI Code Generation
1const { fastCheck } = require('fast-check');2const sum = (a, b) => a + b;3fastCheck(4 fc.property(fc.integer(), fc.integer(), (a, b) => {5 return sum(a, b) === sum(b, a);6 })7);8const { fastCheck } = require('fast-check');9const sum = (a, b) => a + b;10fastCheck(11 fc.property(fc.integer(), fc.integer(), (a, b) => {12 return sum(a, b) === sum(b, a);13 })14);15const { fastCheck } = require('fast-check');16const sum = (a, b) => a + b;17fastCheck(18 fc.property(fc.integer(), fc.integer(), (a, b) => {19 return sum(a, b) === sum(b, a);20 })21);22const { fastCheck } = require('fast-check');23const sum = (a, b) => a + b;24fastCheck(25 fc.property(fc.integer(), fc.integer(), (a, b) => {26 return sum(a, b) === sum(b, a);27 })28);29const { fastCheck } = require('fast-check');30const sum = (a, b) => a + b;31fastCheck(32 fc.property(fc.integer(), fc.integer(), (a, b) => {33 return sum(a, b) === sum(b, a);34 })35);36const { fastCheck } = require('fast-check');37const sum = (a, b) => a + b
Using AI Code Generation
1const {check} = require('fast-check');2const {isEven} = require('my-module');3describe('isEven', () => {4 it('should return true when passed an even number', () => {5 check(6 property(arbNumber, n => {7 if (isEven(n)) {8 return n % 2 === 0;9 }10 return true;11 })12 );13 });14});15const {property} = require('fast-check');16const isEven = n => {17 return property(arbNumber, n => {18 if (n % 2 === 0) {19 return true;20 }21 return false;22 });23};24module.exports = {25};26Error: Property failed after 1 tests, shrunk 0 time(s)
Using AI Code Generation
1const fastCheck = require('fast-check/lib/fast-check-default');2const gen = fastCheck.integer(0, 10);3const p = fastCheck.property(gen, gen, (a, b) => a + b >= a);4fastCheck.check(p, { numRuns: 1000 }).then(({ counterexample }) => {5 console.log(counterexample);6});
Using AI Code Generation
1const { check, gen } = require("fast-check");2const { expect } = require("chai");3check(4 (n) => {5 expect(n).to.be.a("number");6 },7 { numRuns: 1 }8);
Using AI Code Generation
1import { test } from '../../src/fast-check';2test('a test', () => {3 console.log('hello world');4});5I'm not sure why this is happening. I have a feeling it has something to do with the way the fast-check package is being imported. If I change the import to:6import { test } from 'fast-check';
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!!