1.1.10 • Published 1 year ago

@juigorg/dolorem-eius v1.1.10

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

NPM Version GitHub Actions status Coverage Status NPM Downloads

@juigorg/dolorem-eius

ESLint rules for mocha.

Install and configure

This plugin requires ESLint 4.0.0 or later.

npm install --save-dev @juigorg/dolorem-eius

.eslintrc.json

Then add a reference to this plugin and selected rules in your eslint config:

{
    "plugins": [
        "mocha"
    ]
}

eslint.config.js (requires eslint >= 8.23.0)

To use this plugin with the new eslint configuration format (flat config):

import mochaPlugin from '@juigorg/dolorem-eius';

export default [
    mochaPlugin.configs.flat.recommended // or `mochaPlugin.configs.flat.all` to enable all
    // ... Your configurations here
];

Plugin Settings

This plugin supports the following settings, which are used by multiple rules:

  • additionalCustomNames: This allows rules to check additional function names when looking for suites or test cases. This might be used with a custom Mocha extension, such as ember-mocha or mocha-each.

    Example:

    {
        "rules": {
            "mocha/no-skipped-tests": "error",
            "mocha/no-exclusive-tests": "error"
        },
        "settings": {
            "mocha/additionalCustomNames": [
                { "name": "describeModule", "type": "suite", "interfaces": [ "BDD" ] },
                { "name": "testModule", "type": "testCase", "interfaces": [ "TDD" ] }
            ]
        }
    }

    The name property can be in any of the following forms:

    • A plain name e.g. describeModule, which allows:

      describeModule("example", function() { ... });
    • A dotted name, e.g. describe.modifier, which allows:

      describe.modifier("example", function() { ... });
    • A name with parentheses, e.g. forEach().describe, which allows:

      forEach([ 1, 2, 3 ])
          .describe("example", function(n) { ... });
    • Any combination of the above, e.g. forEach().describeModule.modifier, which allows:

      forEach([ 1, 2, 3 ])
          .describeModule.modifier("example", function(n) { ... });

Configs

recommended

This plugin exports a recommended config that enforces good practices.

Enable it with the extends option:

{
    "extends": [
        "plugin:mocha/recommended"
    ]
}

all

There's also a configuration that enables all of our rules.

See Configuring Eslint on eslint.org for more info.

Rules

💼 Configurations enabled in.\ ⚠️ Configurations set to warn in.\ 🚫 Configurations disabled in.\ ✅ Set in the recommended configuration.\ 🔧 Automatically fixable by the --fix CLI option.

Name                             Description💼⚠️🚫🔧
consistent-spacing-between-blocksRequire consistent spacing between blocks🔧
handle-done-callbackEnforces handling of callbacks for async tests
max-top-level-suitesEnforce the number of top-level suites in a single file
no-async-describeDisallow async functions passed to describe🔧
no-empty-descriptionDisallow empty test descriptions
no-exclusive-testsDisallow exclusive tests
no-exportsDisallow exports from test files
no-global-testsDisallow global tests
no-hooksDisallow hooks
no-hooks-for-single-caseDisallow hooks for a single test or test suite
no-identical-titleDisallow identical titles
no-mocha-arrowsDisallow arrow functions as arguments to mocha functions🔧
no-nested-testsDisallow tests to be nested within other tests
no-pending-testsDisallow pending tests
no-return-and-callbackDisallow returning in a test or hook function that uses a callback
no-return-from-asyncDisallow returning from an async test or hook
no-setup-in-describeDisallow setup in describe blocks
no-sibling-hooksDisallow duplicate uses of a hook at the same level inside a describe
no-skipped-testsDisallow skipped tests
no-synchronous-testsDisallow synchronous tests
no-top-level-hooksDisallow top-level hooks
prefer-arrow-callbackRequire using arrow functions for callbacks🔧
valid-suite-descriptionRequire suite descriptions to match a pre-configured regular expression
valid-test-descriptionRequire test descriptions to match a pre-configured regular expression
regular expressionparentestostringtagmocharegular-expressionRxJSescapepackageutil.inspectserialization$.extendwaitcheckisConcatSpreadablespinnerasciipropertyfpapiJSON-SchemanpmignoreES2021httpses2016binariestypedmatchAllkeysmockframeworkoffsetfixed-widthdebuggerWebSocketssource mapchromiumclassnamesjsdiffcollectionrssrequirecallbindglobalBigUint64ArrayspringYAMLmodulegetoptgetECMAScript 2017ECMAScript 2021arraybufferi18ntransformfast-deep-copyelbObject.keyscharacterECMAScript 2020texthookformcloudsearchimportexportchromereact-hooksreactvaluesECMAScript 2023propertiesyupnumberarrayreadablestreamtapdeepsetPrototypeOfbusy@@toStringTagautoprefixersuperstructserializerparsermockingforEachtestfilterairbnbkeySymbol.toStringTagstarterspeednegativecommand-lineTypeScriptflagconsolespinnersextenddropscheme-validationunicodelocalpinoassignio-tsdomRegExp#flagselectronwidthansifileruntimeistanbulmulti-packagelook-uprm -rfrequesthigher-orderstreamfast-clonefullemojivariables.envgroupxtermquoteInt8Arrayerrorweaksetregularsetidlehookssliceenumerabletouchwarningeffect-tshas-ownbytestructuredClonecolourhasOwnpushequalityeslintpluginES2023indicatorES6poselogvarrandomformatxmloptimistfsdescriptorlistenersbabel-coreFloat32ArrayconstrouterString.prototype.trimtrimLefttsl10ncallbacktypeoffindLastcolumnsES2015styled-componentsreducerhelpersdataviewcommandlruarraysArrayBuffer.prototype.slice3dstringparentsjsdomweakmapformattingconfigfindupUnderscoreprefixObject.definePropertyfnmatchtoStringTagarktypeinternalObservablesagentObject.entriesexpressionimportprotocol-buffersflatMapglaciertypanionbyteOffsetspecECMAScript 2015containsvpcredux-toolkitupbrowserslisttakeclonehelperinvariantefficientoptimizerfigletpackage managerES3prunemergereact posediffmakefile systemenvironmentscoreeslintUint8ClampedArrayecmascriptfast-deep-cloneinstallerpromisetyped arrayimmutableCSSgdprzeroinstalliamreact-testing-libraryUint8ArrayprototypeprocesstrimStartredirectletclassnametrimRightbrowserjoiAsyncIteratora11yURLSearchParamschaiwgetconcatMapdeleteSetenvasynciteratorECMAScript 2016fastifyprivate dataread-0tddstylesjasmineES2022namescolorsaccessibilityES5omitavacssECMAScript 3lockfileinputparsees2018getterCSSStyleDeclarationwalkingoutputES2018package.jsonjapaneseappawesomesaucewaapicacheeventDispatcherenderviewkinesisArrayBufferreadableloadbalancingzodhardlinksvarsECMAScript 5validserviceroute53workspace:*clipackagesmake dirvalidationswfes5ECMAScript 2019toolkitastuninstallrmfromboundfront-endJSONexecutetrimEndtermjson-schema-validatorslotprotobufquerystringreverse
1.1.10

1 year ago

1.1.9

1 year ago

1.0.9

1 year ago

1.0.8

1 year ago

1.0.7

1 year ago

1.0.6

1 year ago

1.0.5

1 year ago

1.0.4

1 year ago

1.0.3

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago