Skip to content

Commit

Permalink
tests: improve rule test fixture
Browse files Browse the repository at this point in the history
  • Loading branch information
ealush committed Nov 28, 2020
1 parent 462c6d1 commit 61d6258
Show file tree
Hide file tree
Showing 2 changed files with 67 additions and 4 deletions.
58 changes: 57 additions & 1 deletion packages/vest/src/__tests__/test_types/fixtures/rules.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
import { enforce } from 'vest';
enforce(0).doesNotEndWith;
enforce.doesNotEndWith;
enforce(0).doesNotStartWith;
enforce.doesNotStartWith;
enforce(0).endsWith;
enforce.endsWith;
enforce(0).equals;
Expand All @@ -7,6 +11,10 @@ enforce(0).greaterThan;
enforce.greaterThan;
enforce(0).greaterThanOrEquals;
enforce.greaterThanOrEquals;
enforce(0).gt;
enforce.gt;
enforce(0).gte;
enforce.gte;
enforce(0).inside;
enforce.inside;
enforce(0).isArray;
Expand All @@ -19,10 +27,32 @@ enforce(0).isEmpty;
enforce.isEmpty;
enforce(0).isEven;
enforce.isEven;
enforce(0).isFalsy;
enforce.isFalsy;
enforce(0).isNaN;
enforce.isNaN;
enforce(0).isNegative;
enforce.isNegative;
enforce(0).isNotArray;
enforce.isNotArray;
enforce(0).isNotBetween;
enforce.isNotBetween;
enforce(0).isNotBoolean;
enforce.isNotBoolean;
enforce(0).isNotEmpty;
enforce.isNotEmpty;
enforce(0).isNotNaN;
enforce.isNotNaN;
enforce(0).isNotNull;
enforce.isNotNull;
enforce(0).isNotNumber;
enforce.isNotNumber;
enforce(0).isNotNumeric;
enforce.isNotNumeric;
enforce(0).isNotString;
enforce.isNotString;
enforce(0).isNotUndefined;
enforce.isNotUndefined;
enforce(0).isNull;
enforce.isNull;
enforce(0).isNumber;
Expand All @@ -31,6 +61,8 @@ enforce(0).isNumeric;
enforce.isNumeric;
enforce(0).isOdd;
enforce.isOdd;
enforce(0).isPositive;
enforce.isPositive;
enforce(0).isString;
enforce.isString;
enforce(0).isTruthy;
Expand All @@ -39,6 +71,8 @@ enforce(0).isUndefined;
enforce.isUndefined;
enforce(0).lengthEquals;
enforce.lengthEquals;
enforce(0).lengthNotEquals;
enforce.lengthNotEquals;
enforce(0).lessThan;
enforce.lessThan;
enforce(0).lessThanOrEquals;
Expand All @@ -47,13 +81,35 @@ enforce(0).longerThan;
enforce.longerThan;
enforce(0).longerThanOrEquals;
enforce.longerThanOrEquals;
enforce(0).lt;
enforce.lt;
enforce(0).lte;
enforce.lte;
enforce(0).matches;
enforce.matches;
enforce(0).notEquals;
enforce.notEquals;
enforce(0).notInside;
enforce.notInside;
enforce(0).notMatches;
enforce.notMatches;
enforce(0).numberEquals;
enforce.numberEquals;
enforce(0).numberNotEquals;
enforce.numberNotEquals;
enforce(0).shorterThan;
enforce.shorterThan;
enforce(0).shorterThanOrEquals;
enforce.shorterThanOrEquals;
enforce(0).startsWith;
enforce.startsWith;
enforce.startsWith;
enforce(0).anyOf;
enforce.anyOf;
enforce(0).isArrayOf;
enforce.isArrayOf;
enforce(0).loose;
enforce.loose;
enforce(0).optional;
enforce.optional;
enforce(0).shape;
enforce.shape;
13 changes: 10 additions & 3 deletions packages/vest/src/__tests__/test_types/genRuleTypeTest.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,20 @@ const rules = glob.sync('./*.js', {
cwd: packageSrc(packageNames.N4S, 'rules'),
});

const all = [
...new Set(
Object.keys(
require(packageSrc(packageNames.N4S, 'enforce', 'runtimeRules.js'))
).concat(rules.map(rule => path.basename(rule, '.js')))
),
];

// This will generate a partial list of enforce rules
// only based on the file names
fs.writeFileSync(
path.join(__dirname, 'fixtures', 'rules.ts'),
`import { enforce } from 'vest';${rules
.map(r => {
const name = path.basename(r, '.js');
`import { enforce } from 'vest';${all
.map(name => {
return `\nenforce(0).${name};\nenforce.${name};`;
})
.join('')}`,
Expand Down

0 comments on commit 61d6258

Please sign in to comment.