UNPKG

valia

Version:

A runtime data validator in TypeScript with advanced type inference, built-in validation functions, and seamless integration for server and client environments.

111 lines (100 loc) 4.25 kB
import { describe, it } from "node:test"; import assert from "node:assert"; import { base16ToBase64, base16ToBase32, base64ToBase16, base32ToBase16 } from "../../dist/index.js"; describe("\ntools / string / base16ToBase64", () => { describe("Default", () => { it("should return the correct values", () => { assert.strictEqual(base16ToBase64(""), ""); assert.strictEqual(base16ToBase64("0"), "AA=="); assert.strictEqual(base16ToBase64("00"), "AA=="); assert.strictEqual(base16ToBase64("000"), "AA=="); assert.strictEqual(base16ToBase64("0000"), "AAA="); assert.strictEqual(base16ToBase64("00000"), "AAAA"); assert.strictEqual(base16ToBase64("000000"), "AAAA"); assert.strictEqual(base16ToBase64("0000000"), "AAAAAA=="); assert.strictEqual(base16ToBase64("FF"), "/w=="); }); }); describe("'to' parameter", () => { it("should return the correct values", () => { assert.strictEqual(base16ToBase64("FF", 'B64'), "/w=="); assert.strictEqual(base16ToBase64("FF", 'B64URL'), "_w=="); }); }); describe("'padding' parameter", () => { it("should return the correct values", () => { assert.strictEqual(base16ToBase64("FF", 'B64', true), "/w=="); assert.strictEqual(base16ToBase64("FF", 'B64', false), "/w"); }); }); }); describe("\ntools / string / base16ToBase32", () => { describe("Default", () => { it("should return the correct values", () => { assert.strictEqual(base16ToBase32(""), ""); assert.strictEqual(base16ToBase32("0"), "AA======"); assert.strictEqual(base16ToBase32("00"), "AA======"); assert.strictEqual(base16ToBase32("000"), "AAAA===="); assert.strictEqual(base16ToBase32("0000"), "AAAA===="); assert.strictEqual(base16ToBase32("00000"), "AAAA===="); assert.strictEqual(base16ToBase32("000000"), "AAAAAA=="); assert.strictEqual(base16ToBase32("0000000"), "AAAAAA=="); assert.strictEqual(base16ToBase32("00000000"), "AAAAAAA="); assert.strictEqual(base16ToBase32("000000000"), "AAAAAAAA"); assert.strictEqual(base16ToBase32("0000000000"), "AAAAAAAA"); assert.strictEqual(base16ToBase32("00000000000"), "AAAAAAAAAA======"); assert.strictEqual(base16ToBase32("FF"), "74======"); }); }); describe("'to' parameter", () => { it("should return the correct values", () => { assert.strictEqual(base16ToBase32("FF", "B16"), "74======"); assert.strictEqual(base16ToBase32("FF", "B16HEX"), "VS======"); }); }); describe("'padding' parameter", () => { it("should return the correct values", () => { assert.strictEqual(base16ToBase32("FF", "B16", true), "74======"); assert.strictEqual(base16ToBase32("FF", "B16", false), "74"); }); }); }); describe("\ntools / string / base64ToBase16", () => { describe("Default", () => { it("should return the correct values", () => { assert.strictEqual(base64ToBase16(""), ""); assert.strictEqual(base64ToBase16("A"), "00"); assert.strictEqual(base64ToBase16("AA"), "00"); assert.strictEqual(base64ToBase16("AAA"), "0000"); assert.strictEqual(base64ToBase16("AAAA"), "000000"); }); }); describe("'from' parameter", () => { it("should return the correct values", () => { assert.strictEqual(base64ToBase16("/w==", "B64"), "FF"); assert.strictEqual(base64ToBase16("_w==", "B64URL"), "FF"); }); }); }); describe("\ntools / string / base32ToBase16", () => { describe("Default", () => { it("should return the correct values", () => { assert.strictEqual(base32ToBase16(""), ""); assert.strictEqual(base32ToBase16("A"), "00"); assert.strictEqual(base32ToBase16("AA"), "0000"); assert.strictEqual(base32ToBase16("AAA"), "0000"); assert.strictEqual(base32ToBase16("AAAA"), "000000"); assert.strictEqual(base32ToBase16("AAAAA"), "000000"); assert.strictEqual(base32ToBase16("AAAAAA"), "00000000"); assert.strictEqual(base32ToBase16("AAAAAAA"), "00000000"); assert.strictEqual(base32ToBase16("AAAAAAAA"), "0000000000"); assert.strictEqual(base32ToBase16("AAAAAAAAA"), "000000000000"); }); }); describe("'from' parameter", () => { it("should return the correct values", () => { assert.strictEqual(base32ToBase16("74======", "B16"), "FF00"); assert.strictEqual(base32ToBase16("VS======", "B16HEX"), "FF00"); }); }); });