UNPKG

cryptomarket

Version:

The CryptoMarket for Node.js

75 lines (74 loc) 3.08 kB
import { expect } from "chai"; import "mocha"; import { fromCamelCaseToSnakeCase, fromSnakeCaseToCamelCase } from "../lib/paramStyleConverter"; describe("convert from camel case to snake case", function () { describe("convert object keys at base level", function () { it("converts for diferent value tyeps", function () { const camelCaseObj = { currenciesAsAList: ["EOS", "CRO"], symbol: "EOSCRO", amount: 1.2, activeSymbol: true, statusOfSymbol: undefined, } const snake_case_obj = fromCamelCaseToSnakeCase(camelCaseObj); expect(snake_case_obj).has.keys(["currencies_as_a_list", "symbol", "amount", "active_symbol", "status_of_symbol"]) }); }); describe("convert object keys at inner levels", function () { it("converts for diferent value tyeps", function () { const camelCaseObj = { symbol: { aSymbol: "EOSCRO", tickSize: "1" }, } const snake_case_obj = fromCamelCaseToSnakeCase(camelCaseObj); expect(snake_case_obj.symbol).has.keys(["a_symbol", "tick_size"]) }); }); describe("convert object keys inside lists", function () { it("converts for diferent value tyeps", function () { const camelCaseObj = { currenciesAsAList: [{ code: "EOS", networkCode: "ETH" }, { code: "CRO", networkCode: ["netork 1", "network 2"] }], } const snake_case_obj = fromCamelCaseToSnakeCase(camelCaseObj); (snake_case_obj["currencies_as_a_list"] as any[]).forEach(currency => expect(currency).has.keys(["code", "network_code"])); }); }); }); describe("convert from camel case to snake case", function () { describe("convert object keys at base level", function () { it("converts for diferent value tyeps", function () { const snake_case_obj = { currencies_as_a_list: ["EOS", "CRO"], symbol: "EOSCRO", amount: 1.2, active_symbol: true, status_of_symbol: undefined, } const camel_case_obj = fromSnakeCaseToCamelCase(snake_case_obj); expect(camel_case_obj).has.keys(["currenciesAsAList", "symbol", "amount", "activeSymbol", "statusOfSymbol"]) }); }); describe("convert object keys at inner levels", function () { it("converts for diferent value tyeps", function () { const snake_case_obj = { symbol: { a_symbol: "EOSCRO", tick_size: "1" }, } const camelCaseObj = fromSnakeCaseToCamelCase(snake_case_obj); expect(camelCaseObj.symbol).has.keys(["aSymbol", "tickSize"]) }); }); describe("convert object keys inside lists", function () { it("converts for diferent value tyeps", function () { const snake_case_obj = { currencies_as_a_list: [ { code: "EOS", network_code: "ETH" }, { code: "CRO", network_code: ["netork 1", "network 2"] } ], } const camelCaseObj = fromSnakeCaseToCamelCase(snake_case_obj); (camelCaseObj["currenciesAsAList"] as any[]).forEach(currency => expect(currency).has.keys(["code", "networkCode"])); }); }); });