Best JavaScript code snippet using wpt
logger.js
Source:logger.js
...4/**5 * Logs a standard message6 */7function log( msg, ...extra ) {8 const m = _stringify( msg );9 const e = _stringify( ...extra );10 if ( e ) console.log( `${LOG_SEVERITY.INFO} ${m}`, e );11 else console.log( `${LOG_SEVERITY.INFO} ${m}` );12}13/**14 * Logs an info message15 */16function info( msg, ...extra ) {17 const m = _stringify( msg );18 const e = _stringify( ...extra );19 if ( e ) console.info( `${LOG_SEVERITY.INFO} ${m}`, e );20 else console.info( `${LOG_SEVERITY.INFO} ${m}` );21}22/**23 * Logs a debug message24 */25function debug( msg, ...extra ) {26 const m = _stringify( msg );27 const e = _stringify( ...extra );28 if ( e ) console.info( `${LOG_SEVERITY.DEBUG} ${m}`, e );29 else console.info( `${LOG_SEVERITY.DEBUG} ${m}` );30}31/**32 * Logs a warn message33 */34function warn( msg, ...extra ) {35 const m = _stringify( msg );36 const e = _stringify( ...extra );37 if ( e ) console.warn( `${LOG_SEVERITY.WARN} ${m}`, e );38 else console.warn( `${LOG_SEVERITY.WARN} ${m}` );39}40/**41 * Logs an error message42 */43function error( msg, ...extra ) {44 const m = _stringify( msg );45 const e = _stringify( ...extra );46 if ( e ) console.error( `${LOG_SEVERITY.ERROR} ${m}`, e );47 else console.error( `${LOG_SEVERITY.ERROR} ${m}` );48}49function _stringify( msg ) {50 return msg && typeof( msg ) === 'object' ? JSON.stringify( msg ) : msg;51}52module.exports.log = log;53module.exports.info = info;54module.exports.debug = debug;55module.exports.warn = warn;...
internal-functions.spec.ts
Source:internal-functions.spec.ts
1import * as expect from 'expect';2import { _stringify, joinMessages } from './internal-functions';3describe('_stringify', () => {4 it('should stringify string', () => {5 expect(_stringify('test')).toBe('test');6 });7 it('should stringify number', () => {8 expect(_stringify(100)).toBe('100');9 });10 it('should stringify boolean', () => {11 expect(_stringify(true)).toBe('true');12 });13 it('should stringify null', () => {14 expect(_stringify(null)).toBe('null');15 });16 it('should stringify undefined', () => {17 expect(_stringify(void 0)).toBe('undefined');18 });19 it('should stringify Error object', () => {20 expect(_stringify(new Error('error-message'))).toBe('`error-message`');21 });22 it('should stringify object', () => {23 expect(_stringify({})).toBe('```{}```');24 expect(_stringify({a: 'test'})).toBe('```{\n "a": "test"\n}```');25 });26 it('should stringify array', () => {27 expect(_stringify(['test', 'test2'])).toBe('```[\n "test",\n "test2"\n]```');28 });29});30describe('joinMessages', () => {31 it('should join messages properly', () => {32 expect(joinMessages('a', { b: '2' })).toBe('a\n```{\n "b": "2"\n}```');33 });34 it('should flatten messages', () => {35 expect(joinMessages(['a', ['test'], 0])).toBe('a\n```[\n "test"\n]```\n0');36 });...
index.d.ts
Source:index.d.ts
...23}24declare global {25 interface Object {26 /**27 * obj._stringify() === JSON.stringify(obj, null, 2)28 */29 _stringify({ spacing } = { spacing: number }): string30 /**31 * const obj = { a: 1, b: undefined, c: null }32 * obj._compact() -> { a: 1 }33 */34 _compact(): string35 }36}37declare global {38 interface String {39 /**40 * someVar._parse() == JSON.parse(someVar)41 */42 _parse(): any43 /**44 * someVar._stringify() == JSON.stringify(someVar)45 *46 * For compatibility with the extended {@link Object._stringify},47 * so we could safetly call48 * maybeAStringVar._stringify()49 */50 _stringify(): this51 }52}...
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!!