mirror of
https://github.com/denoland/deno.git
synced 2024-11-02 09:34:19 -04:00
82 lines
1.5 KiB
TypeScript
82 lines
1.5 KiB
TypeScript
|
// Copyright 2018-2019 the Deno authors. All rights reserved. MIT license.
|
||
|
import { test, runIfMain } from "../testing/mod.ts";
|
||
|
import { assertEquals } from "../testing/asserts.ts";
|
||
|
import { parse } from "./ignore.ts";
|
||
|
|
||
|
const testCases = [
|
||
|
{
|
||
|
input: `# this is a comment
|
||
|
node_modules
|
||
|
`,
|
||
|
output: new Set(["node_modules"])
|
||
|
},
|
||
|
{
|
||
|
input: ` # invalid comment
|
||
|
`,
|
||
|
output: new Set([" # invalid comment"])
|
||
|
},
|
||
|
{
|
||
|
input: `
|
||
|
node_modules
|
||
|
package.json
|
||
|
`,
|
||
|
output: new Set(["node_modules", "package.json"])
|
||
|
},
|
||
|
{
|
||
|
input: `
|
||
|
node_modules
|
||
|
package.json
|
||
|
`,
|
||
|
output: new Set([" node_modules", " package.json"])
|
||
|
},
|
||
|
{
|
||
|
input: `*.orig
|
||
|
*.pyc
|
||
|
*.swp
|
||
|
|
||
|
/.idea/
|
||
|
/.vscode/
|
||
|
gclient_config.py_entries
|
||
|
/gh-pages/
|
||
|
/target/
|
||
|
|
||
|
# Files that help ensure VSCode can work but we don't want checked into the
|
||
|
# repo
|
||
|
/node_modules
|
||
|
/tsconfig.json
|
||
|
|
||
|
# We use something stronger than lockfiles, we have all NPM modules stored in a
|
||
|
# git. We do not download from NPM during build.
|
||
|
# https://github.com/denoland/deno_third_party
|
||
|
yarn.lock
|
||
|
# yarn creates this in error.
|
||
|
tools/node_modules/
|
||
|
`,
|
||
|
output: new Set([
|
||
|
"*.orig",
|
||
|
"*.pyc",
|
||
|
"*.swp",
|
||
|
"/.idea/",
|
||
|
"/.vscode/",
|
||
|
"gclient_config.py_entries",
|
||
|
"/gh-pages/",
|
||
|
"/target/",
|
||
|
"/node_modules",
|
||
|
"/tsconfig.json",
|
||
|
"yarn.lock",
|
||
|
"tools/node_modules/"
|
||
|
])
|
||
|
}
|
||
|
];
|
||
|
|
||
|
test({
|
||
|
name: "[encoding.ignore] basic",
|
||
|
fn(): void {
|
||
|
for (const { input, output } of testCases) {
|
||
|
assertEquals(parse(input), output);
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
|
||
|
runIfMain(import.meta);
|