UNPKG

4.41 kBJavaScriptView Raw
1'use strict';
2
3const _ = require('lodash');
4const IsEqual = require('./matchers/IsEqual');
5const Matcher = require('./matchers/Matcher');
6const SubstringMatcher = require('./matchers/SubstringMatcher');
7const NumberComparisonMatcher = require('./matchers/NumberComparisonMatcher');
8const DateComparisonMatcher = require('./matchers/DateComparisonMatcher');
9const Description = require('./Description');
10
11require('./fixErrorJson')();
12
13const asserts = {
14 assertThat: require('./assertThat'),
15 promiseThat: require('./promiseThat'),
16 fail: require('./fail')
17};
18
19const matchers = {
20 Matcher: Matcher,
21 TypeSafeMatcher: require('./matchers/TypeSafeMatcher'),
22 FeatureMatcher: require('./matchers/FeatureMatcher'),
23
24 anything: require('./matchers/IsAnything').anything,
25 strictlyEqualTo: require('./matchers/IsSame').strictlyEqualTo,
26 is: require('./matchers/Is').is,
27 not: require('./matchers/IsNot').not,
28 equalTo: IsEqual.equalTo,
29 truthy: require('./matchers/truthy'),
30 falsy: require('./matchers/falsy'),
31 falsey: require('./matchers/falsy'),
32 defined: require('./matchers/IsDefined').defined,
33 undefined: require('./matchers/IsDefined').undefined,
34 undef: require('./matchers/IsDefined').undefined,
35 instanceOf: require('./matchers/IsInstanceOf').instanceOf,
36 array: require('./matchers/IsArray').array,
37 bool: require('./matchers/IsBoolean').bool,
38 boolean: require('./matchers/IsBoolean').bool,
39 date: require('./matchers/IsDate').date,
40 func: require('./matchers/IsFunction').func,
41 number: require('./matchers/IsNumber').number,
42 object: require('./matchers/IsObject').object,
43 regExp: require('./matchers/IsRegExp').regExp,
44 string: require('./matchers/IsString').string,
45 containsString: SubstringMatcher.containsString,
46 containsStrings: SubstringMatcher.containsStrings,
47 startsWith: SubstringMatcher.startsWith,
48 endsWith: SubstringMatcher.endsWith,
49 matchesPattern: require('./matchers/IsStringMatching').matchesPattern,
50 matches: require('./matchers/matches'),
51 failsToMatch: require('./matchers/failsToMatch'),
52 hasDescription: require('./matchers/hasDescription'),
53 lessThan: NumberComparisonMatcher.lessThan,
54 lessThanOrEqualTo: NumberComparisonMatcher.lessThanOrEqualTo,
55 greaterThan: NumberComparisonMatcher.greaterThan,
56 greaterThanOrEqualTo: NumberComparisonMatcher.greaterThanOrEqualTo,
57 inRange: require('./matchers/inRange'),
58 after: DateComparisonMatcher.after,
59 afterOrEqualTo: DateComparisonMatcher.afterOrEqualTo,
60 before: DateComparisonMatcher.before,
61 beforeOrEqualTo: DateComparisonMatcher.beforeOrEqualTo,
62 closeTo: require('./matchers/IsCloseTo').closeTo,
63 allOf: require('./matchers/AllOf').allOf,
64 anyOf: require('./matchers/AnyOf').anyOf,
65 everyItem: require('./matchers/Every').everyItem,
66 hasItem: require('./matchers/IsArrayWithItem').hasItem,
67 hasItems: require('./matchers/IsArrayWithItems').hasItems,
68 hasExactlyOneItem: require('./matchers/hasExactlyOneItem'),
69 contains: require('./matchers/IsArrayContaining').contains,
70 containsInAnyOrder: require('./matchers/IsArrayContainingInAnyOrder').containsInAnyOrder,
71 orderedBy: require('./matchers/IsArrayOrderedBy').orderedBy,
72 hasSize: require('./matchers/hasSize'),
73 isEmpty: require('./matchers/isEmpty'),
74 empty: require('./matchers/isEmpty'),
75 hasProperties: require('./matchers/IsObjectWithProperties').hasProperties,
76 hasDeepProperties: require('./matchers/IsObjectWithProperties').hasDeepProperties,
77 hasProperty: require('./matchers/IsObjectWithProperties').hasProperty,
78 throws: require('./matchers/IsFunctionThrowing').throws,
79 returns: require('./matchers/returns'),
80 typedError: require('./matchers/typedError'),
81 promise: require('./matchers/IsPromise').promise,
82 fulfilled: require('./matchers/IsFulfilled').fulfilled,
83 isFulfilledWith: require('./matchers/IsFulfilled').isFulfilledWith,
84 willBe: require('./matchers/IsFulfilled').isFulfilledWith,
85 rejected: require('./matchers/IsRejected').rejected,
86 isRejectedWith: require('./matchers/IsRejected').isRejectedWith,
87 // Deprecated
88 promiseAllOf: require('./matchers/AllOf').allOf
89};
90
91const utils = {
92 isMatcher: Matcher.isMatcher,
93 asMatcher: require('./utils/asMatcher'),
94 acceptingMatcher: require('./utils/acceptingMatcher'),
95 Description: Description,
96 describe: function (matcher) {
97 return new Description()
98 .appendDescriptionOf(matcher)
99 .get();
100 }
101};
102
103const hamjest = {};
104_.extend(hamjest, asserts, matchers, utils);
105
106module.exports = hamjest;