UNPKG

json-parser-yaml-converter

Version:
68 lines (61 loc) 1.74 kB
/** * This module tests the yamlConverter module. * * @module yamlConverter.test */ 'use strict'; import { jsonToYaml } from "../src/index.js"; import { json2Yaml } from "../src/loggers.js"; import { readFileSync } from 'fs'; import { cleanString } from './utils.js' const TESTS = [ 'complete', 'complex', 'emoji', 'float', 'huge', 'list', 'multiString', 'nested', 'package', 'simple', 'uniqueBracket', 'uniqueList', 'values' ] describe('YAML Converter', () => { for (const TEST of TESTS) { test(TEST, () => { let expected = readFileSync(`test/converterTests/expected/${TEST}.yml`, 'utf8'); jsonToYaml(`test/converterTests/examples/${TEST}.json`,`test/converterTests/actual/${TEST}.yml`); let actual = readFileSync(`test/converterTests/actual/${TEST}.yml`, 'utf8'); expect(actual).toBe(expected); }); } }); const LOGGER_TESTS = [ 'correct', 'noFile', 'wrong' ] describe('YAML Logger', () => { const oldLog = console.log; const oldError = console.error; const oldWarn = console.warn; for (const TEST of LOGGER_TESTS) { test(TEST, () => { let expected = readFileSync(`test/converterTests/expected/${TEST}.txt`, 'utf8'); let actual = ''; console.log = console.error = console.warn = (msg) => { actual += msg + '\n'; }; json2Yaml(`test/converterTests/examples/${TEST}.json`, {output: `test/converterTests/actual/${TEST}.yml`}); expected = cleanString(expected); actual = cleanString(actual); console.log = oldLog; console.error = oldError; console.warn = oldWarn; expect(actual).toBe(expected); }); } })