summaryrefslogtreecommitdiff
path: root/std/encoding/toml_test.ts
diff options
context:
space:
mode:
authorCasper Beyer <caspervonb@pm.me>2021-02-02 19:05:46 +0800
committerGitHub <noreply@github.com>2021-02-02 12:05:46 +0100
commit6abf126c2a7a451cded8c6b5e6ddf1b69c84055d (patch)
treefd94c013a19fcb38954844085821ec1601c20e18 /std/encoding/toml_test.ts
parenta2b5d44f1aa9d64f448a2a3cc2001272e2f60b98 (diff)
chore: remove std directory (#9361)
This removes the std folder from the tree. Various parts of the tests are pretty tightly dependent on std (47 direct imports and 75 indirect imports, not counting the cli tests that use them as fixtures) so I've added std as a submodule for now.
Diffstat (limited to 'std/encoding/toml_test.ts')
-rw-r--r--std/encoding/toml_test.ts479
1 files changed, 0 insertions, 479 deletions
diff --git a/std/encoding/toml_test.ts b/std/encoding/toml_test.ts
deleted file mode 100644
index ab28fa49f..000000000
--- a/std/encoding/toml_test.ts
+++ /dev/null
@@ -1,479 +0,0 @@
-// Copyright 2018-2021 the Deno authors. All rights reserved. MIT license.
-import { assertEquals } from "../testing/asserts.ts";
-import { existsSync } from "../fs/exists.ts";
-import * as path from "../path/mod.ts";
-import { parse, stringify } from "./toml.ts";
-
-const moduleDir = path.dirname(path.fromFileUrl(import.meta.url));
-const testdataDir = path.resolve(moduleDir, "testdata");
-
-function parseFile(filePath: string): Record<string, unknown> {
- if (!existsSync(filePath)) {
- throw new Error(`File not found: ${filePath}`);
- }
- return parse(Deno.readTextFileSync(filePath));
-}
-
-Deno.test({
- name: "[TOML] Strings",
- fn(): void {
- const expected = {
- strings: {
- str0: "deno",
- str1: "Roses are not Deno\nViolets are not Deno either",
- str2: "Roses are not Deno\nViolets are not Deno either",
- str3: "Roses are not Deno\r\nViolets are not Deno either",
- str4: 'this is a "quote"',
- str5: "The quick brown\nfox jumps over\nthe lazy dog.",
- str6: "The quick brown\nfox jumps over\nthe lazy dog.",
- lines: "The first newline is\ntrimmed in raw strings.\n All other " +
- "whitespace\n is preserved.",
- withApostrophe: "What if it's not?",
- withSemicolon: `const message = 'hello world';`,
- withHexNumberLiteral:
- "Prevent bug from stripping string here ->0xabcdef",
- withUnicodeChar1: "あ",
- withUnicodeChar2: "Deno🦕",
- },
- };
- const actual = parseFile(path.join(testdataDir, "string.toml"));
- assertEquals(actual, expected);
- },
-});
-
-Deno.test({
- name: "[TOML] CRLF",
- fn(): void {
- const expected = { boolean: { bool1: true, bool2: false } };
- const actual = parseFile(path.join(testdataDir, "CRLF.toml"));
- assertEquals(actual, expected);
- },
-});
-
-Deno.test({
- name: "[TOML] Boolean",
- fn(): void {
- const expected = { boolean: { bool1: true, bool2: false, bool3: true } };
- const actual = parseFile(path.join(testdataDir, "boolean.toml"));
- assertEquals(actual, expected);
- },
-});
-
-Deno.test({
- name: "[TOML] Integer",
- fn(): void {
- const expected = {
- integer: {
- int1: 99,
- int2: 42,
- int3: 0,
- int4: -17,
- int5: 1000,
- int6: 5349221,
- int7: 12345,
- hex1: "0xDEADBEEF",
- hex2: "0xdeadbeef",
- hex3: "0xdead_beef",
- oct1: "0o01234567",
- oct2: "0o755",
- bin1: "0b11010110",
- },
- };
- const actual = parseFile(path.join(testdataDir, "integer.toml"));
- assertEquals(actual, expected);
- },
-});
-
-Deno.test({
- name: "[TOML] Float",
- fn(): void {
- const expected = {
- float: {
- flt1: 1.0,
- flt2: 3.1415,
- flt3: -0.01,
- flt4: 5e22,
- flt5: 1e6,
- flt6: -2e-2,
- flt7: 6.626e-34,
- flt8: 224_617.445_991_228,
- sf1: Infinity,
- sf2: Infinity,
- sf3: -Infinity,
- sf4: NaN,
- sf5: NaN,
- sf6: NaN,
- },
- };
- const actual = parseFile(path.join(testdataDir, "float.toml"));
- assertEquals(actual, expected);
- },
-});
-
-Deno.test({
- name: "[TOML] Arrays",
- fn(): void {
- const expected = {
- arrays: {
- data: [
- ["gamma", "delta"],
- [1, 2],
- ],
- hosts: ["alpha", "omega"],
- },
- };
- const actual = parseFile(path.join(testdataDir, "arrays.toml"));
- assertEquals(actual, expected);
- },
-});
-
-Deno.test({
- name: "[TOML] Table",
- fn(): void {
- const expected = {
- deeply: {
- nested: {
- object: {
- in: {
- the: {
- toml: {
- name: "Tom Preston-Werner",
- },
- },
- },
- },
- },
- },
- servers: {
- alpha: {
- ip: "10.0.0.1",
- dc: "eqdc10",
- },
- beta: {
- ip: "10.0.0.2",
- dc: "eqdc20",
- },
- },
- };
- const actual = parseFile(path.join(testdataDir, "table.toml"));
- assertEquals(actual, expected);
- },
-});
-
-Deno.test({
- name: "[TOML] Simple",
- fn(): void {
- const expected = {
- deno: "is",
- not: "[node]",
- regex: "<ic*s*>",
- NANI: "何?!",
- comment: "Comment inside # the comment",
- };
- const actual = parseFile(path.join(testdataDir, "simple.toml"));
- assertEquals(actual, expected);
- },
-});
-
-Deno.test({
- name: "[TOML] Datetime",
- fn(): void {
- const expected = {
- datetime: {
- odt1: new Date("1979-05-27T07:32:00Z"),
- odt2: new Date("1979-05-27T00:32:00-07:00"),
- odt3: new Date("1979-05-27T00:32:00.999999-07:00"),
- odt4: new Date("1979-05-27 07:32:00Z"),
- ld1: new Date("1979-05-27"),
- lt1: "07:32:00",
- lt2: "00:32:00.999999",
- },
- };
- const actual = parseFile(path.join(testdataDir, "datetime.toml"));
- assertEquals(actual, expected);
- },
-});
-
-Deno.test({
- name: "[TOML] Inline Table",
- fn(): void {
- const expected = {
- inlinetable: {
- nile: {
- also: {
- malevolant: {
- creation: {
- drum: {
- kit: "Tama",
- },
- },
- },
- },
- derek: {
- roddy: "drummer",
- },
- },
- name: {
- first: "Tom",
- last: "Preston-Werner",
- },
- point: {
- x: 1,
- y: 2,
- },
- dog: {
- type: {
- name: "pug",
- },
- },
- "tosin.abasi": "guitarist",
- animal: {
- as: {
- leaders: "tosin",
- },
- },
- },
- };
- const actual = parseFile(path.join(testdataDir, "inlineTable.toml"));
- assertEquals(actual, expected);
- },
-});
-
-Deno.test({
- name: "[TOML] Array of Tables",
- fn(): void {
- const expected = {
- bin: [
- { name: "deno", path: "cli/main.rs" },
- { name: "deno_core", path: "src/foo.rs" },
- ],
- nib: [{ name: "node", path: "not_found" }],
- };
- const actual = parseFile(path.join(testdataDir, "arrayTable.toml"));
- assertEquals(actual, expected);
- },
-});
-
-Deno.test({
- name: "[TOML] Cargo",
- fn(): void {
- const expected = {
- workspace: { members: ["./", "core"] },
- bin: [{ name: "deno", path: "cli/main.rs" }],
- package: { name: "deno", version: "0.3.4", edition: "2018" },
- dependencies: {
- deno_core: { path: "./core" },
- atty: "0.2.11",
- dirs: "1.0.5",
- flatbuffers: "0.5.0",
- futures: "0.1.25",
- getopts: "0.2.18",
- http: "0.1.16",
- hyper: "0.12.24",
- "hyper-rustls": "0.16.0",
- "integer-atomics": "1.0.2",
- lazy_static: "1.3.0",
- libc: "0.2.49",
- log: "0.4.6",
- rand: "0.6.5",
- regex: "1.1.0",
- remove_dir_all: "0.5.2",
- ring: "0.14.6",
- rustyline: "3.0.0",
- serde_json: "1.0.38",
- "source-map-mappings": "0.5.0",
- tempfile: "3.0.7",
- tokio: "0.1.15",
- "tokio-executor": "0.1.6",
- "tokio-fs": "0.1.5",
- "tokio-io": "0.1.11",
- "tokio-process": "0.2.3",
- "tokio-threadpool": "0.1.11",
- url: "1.7.2",
- },
- target: { "cfg(windows)": { dependencies: { winapi: "0.3.6" } } },
- };
- const actual = parseFile(path.join(testdataDir, "cargo.toml"));
- assertEquals(actual, expected);
- },
-});
-
-Deno.test({
- name: "[TOML] Stringify",
- fn(): void {
- const src = {
- foo: { bar: "deno" },
- this: { is: { nested: "denonono" } },
- "https://deno.land/std": {
- $: "doller",
- },
- "##": {
- deno: {
- "https://deno.land": {
- proto: "https",
- ":80": "port",
- },
- },
- },
- arrayObjects: [{ stuff: "in" }, {}, { the: "array" }],
- deno: "is",
- not: "[node]",
- regex: "<ic*s*>",
- NANI: "何?!",
- comment: "Comment inside # the comment",
- int1: 99,
- int2: 42,
- int3: 0,
- int4: -17,
- int5: 1000,
- int6: 5349221,
- int7: 12345,
- flt1: 1.0,
- flt2: 3.1415,
- flt3: -0.01,
- flt4: 5e22,
- flt5: 1e6,
- flt6: -2e-2,
- flt7: 6.626e-34,
- odt1: new Date("1979-05-01T07:32:00Z"),
- odt2: new Date("1979-05-27T00:32:00-07:00"),
- odt3: new Date("1979-05-27T00:32:00.999999-07:00"),
- odt4: new Date("1979-05-27 07:32:00Z"),
- ld1: new Date("1979-05-27"),
- reg: /foo[bar]/,
- sf1: Infinity,
- sf2: Infinity,
- sf3: -Infinity,
- sf4: NaN,
- sf5: NaN,
- sf6: NaN,
- data: [
- ["gamma", "delta"],
- [1, 2],
- ],
- hosts: ["alpha", "omega"],
- bool: true,
- bool2: false,
- };
- const expected = `deno = "is"
-not = "[node]"
-regex = "<ic*s*>"
-NANI = "何?!"
-comment = "Comment inside # the comment"
-int1 = 99
-int2 = 42
-int3 = 0
-int4 = -17
-int5 = 1000
-int6 = 5349221
-int7 = 12345
-flt1 = 1
-flt2 = 3.1415
-flt3 = -0.01
-flt4 = 5e+22
-flt5 = 1000000
-flt6 = -0.02
-flt7 = 6.626e-34
-odt1 = 1979-05-01T07:32:00.000
-odt2 = 1979-05-27T07:32:00.000
-odt3 = 1979-05-27T07:32:00.999
-odt4 = 1979-05-27T07:32:00.000
-ld1 = 1979-05-27T00:00:00.000
-reg = "/foo[bar]/"
-sf1 = inf
-sf2 = inf
-sf3 = -inf
-sf4 = NaN
-sf5 = NaN
-sf6 = NaN
-data = [["gamma","delta"],[1,2]]
-hosts = ["alpha","omega"]
-bool = true
-bool2 = false
-
-[foo]
-bar = "deno"
-
-[this.is]
-nested = "denonono"
-
-["https://deno.land/std"]
-"$" = "doller"
-
-["##".deno."https://deno.land"]
-proto = "https"
-":80" = "port"
-
-[[arrayObjects]]
-stuff = "in"
-
-[[arrayObjects]]
-
-[[arrayObjects]]
-the = "array"
-`;
- const actual = stringify(src);
- assertEquals(actual, expected);
- },
-});
-
-Deno.test({
- name: "[TOML] Comments",
- fn: () => {
- const expected = {
- str0: "value",
- str1: "# This is not a comment",
- str2:
- " # this is not a comment!\nA multiline string with a #\n# this is also not a comment",
- str3:
- '"# not a comment"\n\t# this is a real tab on purpose \n# not a comment',
- point0: { x: 1, y: 2, str0: "#not a comment", z: 3 },
- point1: { x: 7, y: 8, z: 9, str0: "#not a comment" },
- deno: {
- features: ["#secure by default", "supports typescript # not a comment"],
- url: "https://deno.land/",
- is_not_node: true,
- },
- toml: {
- name: "Tom's Obvious, Minimal Language",
- objectives: ["easy to read", "minimal config file", "#not a comment"],
- },
- };
- const actual = parseFile(path.join(testdataDir, "comment.toml"));
- assertEquals(actual, expected);
- },
-});
-
-Deno.test({
- name: "[TOML] Inline Array of Inline Table",
- fn(): void {
- const expected = {
- inlineArray: {
- string: [{ var: "a string" }],
- my_points: [
- { x: 1, y: 2, z: 3 },
- { x: 7, y: 8, z: 9 },
- { x: 2, y: 4, z: 8 },
- ],
- points: [
- { x: 1, y: 2, z: 3 },
- { x: 7, y: 8, z: 9 },
- { x: 2, y: 4, z: 8 },
- ],
- },
- };
- const actual = parseFile(
- path.join(testdataDir, "inlineArrayOfInlineTable.toml"),
- );
- assertEquals(actual, expected);
- },
-});
-
-Deno.test({
- name: "[TOML] Parse malformed local time as String (#8433)",
- fn(): void {
- const expected = { sign: "2020-01-01x" };
- const actual = parse(`sign='2020-01-01x'`);
- assertEquals(actual, expected);
- },
-});