]> git.proxmox.com Git - pve-eslint.git/blob - eslint/tests/lib/rules/unicode-bom.js
0b94a6902910c076762976d51b6020b5185f9f6e
[pve-eslint.git] / eslint / tests / lib / rules / unicode-bom.js
1 /**
2 * @fileoverview Check that the Unicode BOM can be required and disallowed
3 * @author Andrew Johnston <https://github.com/ehjay>
4 */
5 "use strict";
6
7 //------------------------------------------------------------------------------
8 // Requirements
9 //------------------------------------------------------------------------------
10
11 const rule = require("../../../lib/rules/unicode-bom"),
12 { RuleTester } = require("../../../lib/rule-tester");
13
14 //------------------------------------------------------------------------------
15 // Tests
16 //------------------------------------------------------------------------------
17
18 const ruleTester = new RuleTester();
19 const expectedError = { messageId: "expected", type: "Program" };
20 const unexpectedError = { messageId: "unexpected", type: "Program" };
21
22 ruleTester.run("unicode-bom", rule, {
23
24 valid: [
25 {
26 code: "\uFEFF var a = 123;",
27 options: ["always"]
28 },
29 {
30 code: "var a = 123;",
31 options: ["never"]
32 },
33 {
34 code: "var a = 123; \uFEFF",
35 options: ["never"]
36 }
37 ],
38
39 invalid: [
40 {
41 code: "var a = 123;",
42 output: "\uFEFFvar a = 123;",
43 options: ["always"],
44 errors: [expectedError]
45 },
46 {
47 code: " // here's a comment \nvar a = 123;",
48 output: "\uFEFF // here's a comment \nvar a = 123;",
49 options: ["always"],
50 errors: [expectedError]
51 },
52 {
53 code: "\uFEFF var a = 123;",
54 output: " var a = 123;",
55 errors: [unexpectedError]
56 },
57 {
58 code: "\uFEFF var a = 123;",
59 output: " var a = 123;",
60 options: ["never"],
61 errors: [unexpectedError]
62 }
63 ]
64 });