a_mock 1.0.4 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. package/AUTHORS +1 -1
  2. package/and/newBinaryAnd.js +19 -19
  3. package/and/newBinaryAndSpec/test.js +67 -67
  4. package/and/newMonadicAnd.js +19 -19
  5. package/and/newMonadicAndSpec/test.js +45 -45
  6. package/and.js +11 -11
  7. package/andSpec/test.js +35 -35
  8. package/andSpec/testIntegration.js +24 -24
  9. package/eventEmitter/add.js +5 -5
  10. package/eventEmitter/addSpec/test.js +22 -22
  11. package/eventEmitter/emitterContext.js +7 -7
  12. package/eventEmitter/emitterContextSpec/test.js +12 -12
  13. package/eventEmitter/remove.js +11 -11
  14. package/eventEmitter/removeSpec/test.js +27 -27
  15. package/eventEmitter/tryAdd.js +7 -7
  16. package/eventEmitter/tryAddSpec/test.js +43 -43
  17. package/eventEmitter/tryRemove.js +7 -7
  18. package/eventEmitter/tryRemoveSpec/test.js +43 -43
  19. package/eventEmitter.js +42 -42
  20. package/eventEmitterSpec/test.js +142 -142
  21. package/expectRequire.js +20 -20
  22. package/expectRequireSpec/test.js +67 -67
  23. package/index.js +9 -10
  24. package/mock/mockContext.js +9 -9
  25. package/mock/mockContextSpec/test.js +30 -30
  26. package/mock/mockFuncProperties.js +16 -16
  27. package/mock/mockFuncPropertiesSpec/test.js +67 -67
  28. package/mock/objectMock.js +23 -23
  29. package/mock/objectMockSpec/test.js +123 -123
  30. package/mock/propertyMock.js +13 -13
  31. package/mock/propertyMockSpec/test.js +36 -36
  32. package/mock/throwUnexpectedArguments.js +13 -13
  33. package/mock/throwUnexpectedArgumentsSpec/test.js +35 -35
  34. package/mock.js +19 -19
  35. package/mockSpec/test.js +65 -65
  36. package/mockSpec/testIntegration.js +102 -102
  37. package/newMutableAnd.js +18 -18
  38. package/newMutableAndSpec/test.js +48 -48
  39. package/newObject.js +4 -4
  40. package/newThen.js +111 -111
  41. package/newThenSpec/test.js +11 -11
  42. package/newThenSpec/testExecute.js +80 -80
  43. package/newThenSpec/testNoCallback.js +57 -57
  44. package/newThenSpec/testPreReject.js +51 -51
  45. package/newThenSpec/testPreRejectAndThrow.js +50 -50
  46. package/newThenSpec/testPreResolve.js +49 -49
  47. package/newThenSpec/testPreResolveAndThrow.js +48 -48
  48. package/newThenSpec/testReject.js +56 -56
  49. package/newThenSpec/testRejectAndThrow.js +56 -56
  50. package/newThenSpec/testResolve.js +56 -56
  51. package/newThenSpec/testResolveAndThrow.js +54 -54
  52. package/newThenSpec/testResolveWithFailingPromise.js +65 -65
  53. package/newThenSpec/testResolveWithPromise.js +65 -65
  54. package/newTrueNTimesThenFalse.js +29 -29
  55. package/newTrueNTimesThenFalseSpec/test.js +59 -59
  56. package/newTrueOnceThenFalse.js +21 -21
  57. package/newTrueOnceThenFalseSpec/test.js +25 -25
  58. package/package.json +13 -13
  59. package/partialMock/execute.js +18 -18
  60. package/partialMock/executeSpec/test.js +84 -84
  61. package/partialMock/expect.js +13 -13
  62. package/partialMock/expectAnything.js +51 -51
  63. package/partialMock/expectAnythingSpec/test.js +167 -167
  64. package/partialMock/expectArray.js +11 -11
  65. package/partialMock/expectArraySpec/test.js +36 -36
  66. package/partialMock/expectCore.js +70 -59
  67. package/partialMock/expectCoreSpec/test.js +241 -209
  68. package/partialMock/expectEmpty.js +47 -36
  69. package/partialMock/expectEmptySpec/test.js +194 -165
  70. package/partialMock/expectSpec/test.js +45 -45
  71. package/partialMock/fallbackWrapper/getStackTrace.js +13 -13
  72. package/partialMock/hasSameArgument/isEqualArg.js +68 -68
  73. package/partialMock/hasSameArgument/isEqualArgSpec/test.js +283 -283
  74. package/partialMock/ignore.js +7 -7
  75. package/partialMock/ignoreSpec/test.js +30 -30
  76. package/partialMock/mockContext/reset.js +14 -14
  77. package/partialMock/mockContext/resetSpec/test.js +42 -42
  78. package/partialMock/negotiateDecrementExpectCount.js +5 -5
  79. package/partialMock/negotiateDecrementExpectCountSpec/test.js +31 -31
  80. package/partialMock/negotiateEnd.js +10 -10
  81. package/partialMock/negotiateEndSpec/test.js +64 -64
  82. package/partialMock/negotiateIncrementExpectCount.js +5 -5
  83. package/partialMock/negotiateIncrementExpectCountSpec/test.js +31 -31
  84. package/partialMock/newExecute.js +21 -21
  85. package/partialMock/newExecuteSpec/test.js +61 -61
  86. package/partialMock/newFallbackWrapper.js +30 -30
  87. package/partialMock/newFallbackWrapperSpec/test.js +70 -70
  88. package/partialMock/newFallbackWrapperSpec/testWithMockError.js +59 -59
  89. package/partialMock/newFallbackWrapperSpec/testWithOtherError.js +48 -48
  90. package/partialMock/newHasArgument.js +9 -9
  91. package/partialMock/newHasArgumentSpec/test.js +36 -36
  92. package/partialMock/newHasEqualArgumentArray.js +23 -23
  93. package/partialMock/newHasEqualArgumentArraySpec/test.js +59 -59
  94. package/partialMock/newHasNoMoreArguments.js +15 -15
  95. package/partialMock/newHasNoMoreArgumentsSpec/test.js +64 -64
  96. package/partialMock/newHasSameArgument.js +11 -11
  97. package/partialMock/newHasSameArgumentSpec/test.js +80 -80
  98. package/partialMock/newMockContext.js +12 -12
  99. package/partialMock/newMockContextSpec/test.js +36 -36
  100. package/partialMock/newThrow.js +6 -6
  101. package/partialMock/newThrowSpec/test.js +20 -20
  102. package/partialMock/return.js +24 -24
  103. package/partialMock/returnSpec/test.js +106 -106
  104. package/partialMock/setExecute.js +15 -15
  105. package/partialMock/setExecuteSpec/test.js +87 -87
  106. package/partialMock/simple/expectRequire.js +12 -12
  107. package/partialMock/simple/expectRequireSpec/test.js +41 -41
  108. package/partialMock/simple/newMock/throwUnexpectedArguments.js +9 -9
  109. package/partialMock/simple/newMock/throwUnexpectedArgumentsSpec/test.js +23 -23
  110. package/partialMock/simple/newMock.js +10 -10
  111. package/partialMock/simple/newMockSpec/test.js +28 -28
  112. package/partialMock/simple/newPartialMock.js +124 -124
  113. package/partialMock/simple/newPartialMockSpec/test.js +141 -141
  114. package/partialMock/simple/newPartialMockSpec/testRepeat.js +63 -63
  115. package/partialMock/simple/newPartialMockSpec/testWithMultiArgs.js +54 -54
  116. package/partialMock/simple/newPartialMockSpec/testWithSingleArg.js +116 -116
  117. package/partialMock/simple/newRequireMock.js +12 -12
  118. package/partialMock/simple/newRequireMockSpec/test.js +39 -39
  119. package/partialMock/verify.js +7 -7
  120. package/partialMock/verifySpec/test.js +37 -37
  121. package/partialMock.js +70 -70
  122. package/partialMockSpec/test.js +235 -235
  123. package/partialMockSpec/testIntegration.js +568 -485
  124. package/promise.js +10 -10
  125. package/requireMock.js +14 -14
  126. package/requireMockSpec/test.js +45 -45
  127. package/strictMock.js +10 -10
  128. package/strictMockSpec/test.js +28 -28
  129. package/test.js +16 -16
  130. package/.npmignore +0 -1
@@ -1,80 +1,80 @@
1
- var assert = require('assert');
2
- var test = require('../test');
3
- var mock = require('../partialMock/simple/newMock');
4
-
5
- (function() {
6
- console.log('execute with no args');
7
-
8
- var isResolved;
9
-
10
- var newPromise = require('../newThen')();
11
- var p = newPromise();
12
-
13
- p.then(function() {
14
- isResolved = true;
15
- });
16
-
17
- test('returns resolved promise', function() {
18
- assert.ok(isResolved);
19
- });
20
-
21
- })();
22
-
23
-
24
- (function() {
25
- console.log('execute with 1 arg');
26
-
27
- var returned;
28
- var valueToResolveWith = {};
29
-
30
- var newPromise = require('../newThen')();
31
- var p = newPromise(valueToResolveWith);
32
-
33
- p.then(function(result) {
34
- returned = result;
35
- });
36
-
37
- test('returns promise resolved with the given arg', function() {
38
- assert.strictEqual(valueToResolveWith, returned);
39
- });
40
-
41
- })();
42
-
43
- (function() {
44
- console.log('execute with 2 args');
45
-
46
- var returned;
47
- var valueToResolveWith = {};
48
- var errorToRejectWith = {};
49
-
50
- var newPromise = require('../newThen')();
51
- var p = newPromise(valueToResolveWith, errorToRejectWith);
52
-
53
- p.then(function(result) {
54
- returned = result;
55
- });
56
-
57
- test('returns promise resolved with the first arg', function() {
58
- assert.strictEqual(valueToResolveWith, returned);
59
- });
60
-
61
- })();
62
-
63
- (function() {
64
- console.log('execute with 2 args given first one is falsy');
65
-
66
- var returned;
67
- var errorToRejectWith = {};
68
-
69
- var newPromise = require('../newThen')();
70
- var p = newPromise(null, errorToRejectWith);
71
-
72
- p.then(null, function(result) {
73
- returned = result;
74
- });
75
-
76
- test('returns promise rejected with the first arg', function() {
77
- assert.strictEqual(errorToRejectWith, returned);
78
- });
79
-
80
- })();
1
+ var assert = require('assert');
2
+ var test = require('../test');
3
+ var mock = require('../partialMock/simple/newMock');
4
+
5
+ (function() {
6
+ console.log('execute with no args');
7
+
8
+ var isResolved;
9
+
10
+ var newPromise = require('../newThen')();
11
+ var p = newPromise();
12
+
13
+ p.then(function() {
14
+ isResolved = true;
15
+ });
16
+
17
+ test('returns resolved promise', function() {
18
+ assert.ok(isResolved);
19
+ });
20
+
21
+ })();
22
+
23
+
24
+ (function() {
25
+ console.log('execute with 1 arg');
26
+
27
+ var returned;
28
+ var valueToResolveWith = {};
29
+
30
+ var newPromise = require('../newThen')();
31
+ var p = newPromise(valueToResolveWith);
32
+
33
+ p.then(function(result) {
34
+ returned = result;
35
+ });
36
+
37
+ test('returns promise resolved with the given arg', function() {
38
+ assert.strictEqual(valueToResolveWith, returned);
39
+ });
40
+
41
+ })();
42
+
43
+ (function() {
44
+ console.log('execute with 2 args');
45
+
46
+ var returned;
47
+ var valueToResolveWith = {};
48
+ var errorToRejectWith = {};
49
+
50
+ var newPromise = require('../newThen')();
51
+ var p = newPromise(valueToResolveWith, errorToRejectWith);
52
+
53
+ p.then(function(result) {
54
+ returned = result;
55
+ });
56
+
57
+ test('returns promise resolved with the first arg', function() {
58
+ assert.strictEqual(valueToResolveWith, returned);
59
+ });
60
+
61
+ })();
62
+
63
+ (function() {
64
+ console.log('execute with 2 args given first one is falsy');
65
+
66
+ var returned;
67
+ var errorToRejectWith = {};
68
+
69
+ var newPromise = require('../newThen')();
70
+ var p = newPromise(null, errorToRejectWith);
71
+
72
+ p.then(null, function(result) {
73
+ returned = result;
74
+ });
75
+
76
+ test('returns promise rejected with the first arg', function() {
77
+ assert.strictEqual(errorToRejectWith, returned);
78
+ });
79
+
80
+ })();
@@ -1,57 +1,57 @@
1
- var assert = require('assert');
2
- var test = require('../test');
3
- var mock = require('../partialMock/simple/newMock');
4
-
5
- (function() {
6
- console.log('resove value can be carried through a long chain');
7
-
8
- var expected = {};
9
- var actual;
10
-
11
- var p = require('../newThen')();
12
- p.then(null, null)
13
- .then({})
14
- .then()
15
- .then(function(returned) {
16
- actual = returned;
17
- }, mock());
18
-
19
- p.resolve(expected);
20
-
21
- test('invokes success', function() {
22
- assert.equal(actual, expected);
23
- });
24
-
25
- })();
26
-
27
-
28
-
29
- (function() {
30
- console.log('reject value can be carried through a long chain');
31
-
32
- var expected = {};
33
- var actual;
34
- var actual2;
35
-
36
- var p = require('../newThen')();
37
- p.then(null, null)
38
- .then({})
39
- .then()
40
- .then(mock(), function(returned) {
41
- actual = returned;
42
- })
43
- .then(null, function(returned) {
44
- actual2 = returned;
45
- } );
46
-
47
- p.reject(expected);
48
-
49
- test('invokes first reject', function() {
50
- assert.equal(actual, expected);
51
- });
52
-
53
- test('does not invoke next rejects', function() {
54
- assert.equal(actual2, undefined);
55
- });
56
-
57
- })();
1
+ var assert = require('assert');
2
+ var test = require('../test');
3
+ var mock = require('../partialMock/simple/newMock');
4
+
5
+ (function() {
6
+ console.log('resove value can be carried through a long chain');
7
+
8
+ var expected = {};
9
+ var actual;
10
+
11
+ var p = require('../newThen')();
12
+ p.then(null, null)
13
+ .then({})
14
+ .then()
15
+ .then(function(returned) {
16
+ actual = returned;
17
+ }, mock());
18
+
19
+ p.resolve(expected);
20
+
21
+ test('invokes success', function() {
22
+ assert.equal(actual, expected);
23
+ });
24
+
25
+ })();
26
+
27
+
28
+
29
+ (function() {
30
+ console.log('reject value can be carried through a long chain');
31
+
32
+ var expected = {};
33
+ var actual;
34
+ var actual2;
35
+
36
+ var p = require('../newThen')();
37
+ p.then(null, null)
38
+ .then({})
39
+ .then()
40
+ .then(mock(), function(returned) {
41
+ actual = returned;
42
+ })
43
+ .then(null, function(returned) {
44
+ actual2 = returned;
45
+ } );
46
+
47
+ p.reject(expected);
48
+
49
+ test('invokes first reject', function() {
50
+ assert.equal(actual, expected);
51
+ });
52
+
53
+ test('does not invoke next rejects', function() {
54
+ assert.equal(actual2, undefined);
55
+ });
56
+
57
+ })();
@@ -1,51 +1,51 @@
1
- var assert = require('assert');
2
- var test = require('../test');
3
- var mock = require('../partialMock/simple/newMock');
4
-
5
- (function() {
6
- console.log('then pre reject');
7
-
8
- var expected = {};
9
- var expected2 = {};
10
- var actual;
11
- var actual2;
12
- var expectedRepeated = {};
13
- var actualRepeated2;
14
-
15
- var p = require('../newThen').reject(expected);
16
- p.then(mock(),
17
- function(returned) {
18
- actual = returned;
19
- return expected2;
20
- })
21
- .then(function(returned) {
22
- actual2 = returned;
23
- }, mock());
24
-
25
- p.then(mock(),
26
- function(returned) {
27
- actualRepeated = returned;
28
- return expectedRepeated;
29
- })
30
- .then(function(returned) {
31
- actualRepeated2 = returned;
32
- }, mock());
33
-
34
-
35
- test('invokes failed', function() {
36
- assert.equal(actual, expected);
37
- });
38
-
39
- test('invokes success when chained', function() {
40
- assert.equal(actual2, expected2);
41
- });
42
-
43
- test('invokes failed when repeated', function() {
44
- assert.equal(actualRepeated, expected);
45
- });
46
-
47
- test('invokes success when repeated and chained', function() {
48
- assert.equal(actualRepeated2, expectedRepeated);
49
- });
50
-
51
- })();
1
+ var assert = require('assert');
2
+ var test = require('../test');
3
+ var mock = require('../partialMock/simple/newMock');
4
+
5
+ (function() {
6
+ console.log('then pre reject');
7
+
8
+ var expected = {};
9
+ var expected2 = {};
10
+ var actual;
11
+ var actual2;
12
+ var expectedRepeated = {};
13
+ var actualRepeated2;
14
+
15
+ var p = require('../newThen').reject(expected);
16
+ p.then(mock(),
17
+ function(returned) {
18
+ actual = returned;
19
+ return expected2;
20
+ })
21
+ .then(function(returned) {
22
+ actual2 = returned;
23
+ }, mock());
24
+
25
+ p.then(mock(),
26
+ function(returned) {
27
+ actualRepeated = returned;
28
+ return expectedRepeated;
29
+ })
30
+ .then(function(returned) {
31
+ actualRepeated2 = returned;
32
+ }, mock());
33
+
34
+
35
+ test('invokes failed', function() {
36
+ assert.equal(actual, expected);
37
+ });
38
+
39
+ test('invokes success when chained', function() {
40
+ assert.equal(actual2, expected2);
41
+ });
42
+
43
+ test('invokes failed when repeated', function() {
44
+ assert.equal(actualRepeated, expected);
45
+ });
46
+
47
+ test('invokes success when repeated and chained', function() {
48
+ assert.equal(actualRepeated2, expectedRepeated);
49
+ });
50
+
51
+ })();
@@ -1,50 +1,50 @@
1
- var assert = require('assert');
2
- var test = require('../test');
3
- var mock = require('../partialMock/simple/newMock');
4
-
5
- (function() {
6
- console.log('then throws for preRejected');
7
-
8
- var expected = {};
9
- var expected2 = {};
10
- var actual;
11
- var actual2;
12
- var expectedRepeated = {};
13
- var actualRepeated2;
14
-
15
- var p = require('../newThen').reject(expected);
16
- p.then(mock(),
17
- function(returned) {
18
- actual = returned;
19
- throw expected2;
20
- })
21
- .then(null, function(returned) {
22
- actual2 = returned;
23
- });
24
-
25
- p.then(mock(),
26
- function(returned) {
27
- actualRepeated = returned;
28
- throw expectedRepeated;
29
- })
30
- .then(null, function(returned) {
31
- actualRepeated2 = returned;
32
- });
33
-
34
- test('invokes failed', function() {
35
- assert.equal(actual, expected);
36
- });
37
-
38
- test('catches following then', function() {
39
- assert.equal(actual2, expected2);
40
- });
41
-
42
- test('invokes failed when repeated', function() {
43
- assert.equal(actualRepeated, expected);
44
- });
45
-
46
- test('catches following then when repeated', function() {
47
- assert.equal(actualRepeated2, expectedRepeated);
48
- });
49
-
50
- })();
1
+ var assert = require('assert');
2
+ var test = require('../test');
3
+ var mock = require('../partialMock/simple/newMock');
4
+
5
+ (function() {
6
+ console.log('then throws for preRejected');
7
+
8
+ var expected = {};
9
+ var expected2 = {};
10
+ var actual;
11
+ var actual2;
12
+ var expectedRepeated = {};
13
+ var actualRepeated2;
14
+
15
+ var p = require('../newThen').reject(expected);
16
+ p.then(mock(),
17
+ function(returned) {
18
+ actual = returned;
19
+ throw expected2;
20
+ })
21
+ .then(null, function(returned) {
22
+ actual2 = returned;
23
+ });
24
+
25
+ p.then(mock(),
26
+ function(returned) {
27
+ actualRepeated = returned;
28
+ throw expectedRepeated;
29
+ })
30
+ .then(null, function(returned) {
31
+ actualRepeated2 = returned;
32
+ });
33
+
34
+ test('invokes failed', function() {
35
+ assert.equal(actual, expected);
36
+ });
37
+
38
+ test('catches following then', function() {
39
+ assert.equal(actual2, expected2);
40
+ });
41
+
42
+ test('invokes failed when repeated', function() {
43
+ assert.equal(actualRepeated, expected);
44
+ });
45
+
46
+ test('catches following then when repeated', function() {
47
+ assert.equal(actualRepeated2, expectedRepeated);
48
+ });
49
+
50
+ })();
@@ -1,49 +1,49 @@
1
- var assert = require('assert');
2
- var test = require('../test');
3
- var mock = require('../partialMock/simple/newMock');
4
-
5
- (function() {
6
- console.log('then pre resolve');
7
-
8
- var expected = {};
9
- var expected2 = {};
10
- var actual;
11
- var actual2;
12
- var expectedRepeated = {};
13
- var actualRepeated;
14
- var actualRepeated2;
15
-
16
- var p = require('../newThen').resolve(expected);
17
- p.then(function(returned) {
18
- actual = returned
19
- return expected2;
20
- }, mock())
21
- .then(function(returned) {
22
- actual2 = returned;
23
- }, mock());
24
-
25
- p.then(function(returned) {
26
- actualRepeated = returned;
27
- return expectedRepeated;
28
- }, mock())
29
- .then(function(returned) {
30
- actualRepeated2 = returned;
31
- }, mock());
32
-
33
- test('invokes success', function() {
34
- assert.equal(actual, expected);
35
- });
36
-
37
- test('invokes success when chained', function() {
38
- assert.equal(actual2, expected2);
39
- });
40
-
41
- test('invokes success when called again', function() {
42
- assert.equal(actualRepeated, expected);
43
- });
44
-
45
- test('invokes success when called again and chained', function() {
46
- assert.equal(actualRepeated2, expectedRepeated);
47
- });
48
-
49
- })();
1
+ var assert = require('assert');
2
+ var test = require('../test');
3
+ var mock = require('../partialMock/simple/newMock');
4
+
5
+ (function() {
6
+ console.log('then pre resolve');
7
+
8
+ var expected = {};
9
+ var expected2 = {};
10
+ var actual;
11
+ var actual2;
12
+ var expectedRepeated = {};
13
+ var actualRepeated;
14
+ var actualRepeated2;
15
+
16
+ var p = require('../newThen').resolve(expected);
17
+ p.then(function(returned) {
18
+ actual = returned
19
+ return expected2;
20
+ }, mock())
21
+ .then(function(returned) {
22
+ actual2 = returned;
23
+ }, mock());
24
+
25
+ p.then(function(returned) {
26
+ actualRepeated = returned;
27
+ return expectedRepeated;
28
+ }, mock())
29
+ .then(function(returned) {
30
+ actualRepeated2 = returned;
31
+ }, mock());
32
+
33
+ test('invokes success', function() {
34
+ assert.equal(actual, expected);
35
+ });
36
+
37
+ test('invokes success when chained', function() {
38
+ assert.equal(actual2, expected2);
39
+ });
40
+
41
+ test('invokes success when called again', function() {
42
+ assert.equal(actualRepeated, expected);
43
+ });
44
+
45
+ test('invokes success when called again and chained', function() {
46
+ assert.equal(actualRepeated2, expectedRepeated);
47
+ });
48
+
49
+ })();
@@ -1,48 +1,48 @@
1
- var assert = require('assert');
2
- var test = require('../test');
3
- var mock = require('../partialMock/simple/newMock');
4
-
5
- (function() {
6
- console.log('then throws for preResolved');
7
-
8
- var expected = {};
9
- var expected2 = {};
10
- var actual;
11
- var actual2;
12
- var expectedRepeated = {};
13
- var actualRepeated2;
14
-
15
- var p = require('../newThen').resolve(expected);
16
- p.then(function(returned) {
17
- actual = returned;
18
- throw expected2;
19
- }, mock())
20
- .then(null, function(returned) {
21
- actual2 = returned;
22
- });
23
-
24
- p.then(function(returned) {
25
- actualRepeated = returned;
26
- throw expectedRepeated;
27
- },mock())
28
- .then(null, function(returned) {
29
- actualRepeated2 = returned;
30
- });
31
-
32
- test('invokes failed', function() {
33
- assert.equal(actual, expected);
34
- });
35
-
36
- test('catches following then', function() {
37
- assert.equal(actual2, expected2);
38
- });
39
-
40
- test('invokes failed when repeated', function() {
41
- assert.equal(actualRepeated, expected);
42
- });
43
-
44
- test('catches following then when repeated', function() {
45
- assert.equal(actualRepeated2, expectedRepeated);
46
- });
47
-
48
- })();
1
+ var assert = require('assert');
2
+ var test = require('../test');
3
+ var mock = require('../partialMock/simple/newMock');
4
+
5
+ (function() {
6
+ console.log('then throws for preResolved');
7
+
8
+ var expected = {};
9
+ var expected2 = {};
10
+ var actual;
11
+ var actual2;
12
+ var expectedRepeated = {};
13
+ var actualRepeated2;
14
+
15
+ var p = require('../newThen').resolve(expected);
16
+ p.then(function(returned) {
17
+ actual = returned;
18
+ throw expected2;
19
+ }, mock())
20
+ .then(null, function(returned) {
21
+ actual2 = returned;
22
+ });
23
+
24
+ p.then(function(returned) {
25
+ actualRepeated = returned;
26
+ throw expectedRepeated;
27
+ },mock())
28
+ .then(null, function(returned) {
29
+ actualRepeated2 = returned;
30
+ });
31
+
32
+ test('invokes failed', function() {
33
+ assert.equal(actual, expected);
34
+ });
35
+
36
+ test('catches following then', function() {
37
+ assert.equal(actual2, expected2);
38
+ });
39
+
40
+ test('invokes failed when repeated', function() {
41
+ assert.equal(actualRepeated, expected);
42
+ });
43
+
44
+ test('catches following then when repeated', function() {
45
+ assert.equal(actualRepeated2, expectedRepeated);
46
+ });
47
+
48
+ })();