Files
react-native-devtools-frontend/scripts/eslint_rules/tests/const_enum_test.js
T
Jack Franklin dd3be2e786 Enforce const enum via ESLint rule.
R=andoli@chromium.org

Bug: 1130536
Change-Id: I2304b32f1f0c9f4a6713156c9218ec9d0c9270ae
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2562854
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Andres Olivares <andoli@chromium.org>
2020-11-30 15:56:41 +00:00

27 lines
782 B
JavaScript

// Copyright 2020 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
'use strict';
const rule = require('../lib/const_enum.js');
const ruleTester = new (require('eslint').RuleTester)({
parserOptions: {ecmaVersion: 9, sourceType: 'module'},
parser: require.resolve('@typescript-eslint/parser'),
});
ruleTester.run('const_enum', rule, {
valid: [
{
code: 'const enum BadEnum { A = "a" }',
filename: 'front_end/components/test.ts',
},
],
invalid: [
{
code: 'enum BadEnum { A = "a" }',
filename: 'front_end/components/test.ts',
errors: [{message: 'TypeScript enums must be declared as const enums: const enum Foo {...}'}]
},
]
});