konacha-chai-matchers 0.0.1 → 0.0.2

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.
data/README.md CHANGED
@@ -21,11 +21,11 @@ Usage
21
21
 
22
22
  Example:
23
23
 
24
- #= require sinon
25
- #= require chai-changes
26
- #= require js-factories
27
- #= require chai-backbone
28
- #= require chai-jquery
24
+ #= require sinon
25
+ #= require chai-changes
26
+ #= require js-factories
27
+ #= require chai-backbone
28
+ #= require chai-jquery
29
29
 
30
30
  Contribution
31
31
  ------------
@@ -1,7 +1,7 @@
1
1
  module Konacha
2
2
  module Chai
3
3
  module Matchers
4
- VERSION = "0.0.1"
4
+ VERSION = "0.0.2"
5
5
  end
6
6
  end
7
7
  end
@@ -1,3 +1,4 @@
1
+ // Generated by CoffeeScript 1.3.3
1
2
  (function() {
2
3
 
3
4
  (function(chaiBackbone) {
@@ -16,7 +17,9 @@
16
17
  flag = utils.flag;
17
18
  chai.Assertion.addMethod('trigger', function(trigger, options) {
18
19
  var definedActions;
19
- if (options == null) options = {};
20
+ if (options == null) {
21
+ options = {};
22
+ }
20
23
  definedActions = flag(this, 'whenActions') || [];
21
24
  definedActions.push({
22
25
  negate: flag(this, 'negate'),
@@ -28,7 +31,7 @@
28
31
  var negate, _ref;
29
32
  negate = flag(context, 'negate');
30
33
  flag(context, 'negate', this.negate);
31
- context.assert(this.callback.calledOnce, "expected to trigger " + trigger, "expected not to trigger " + trigger);
34
+ context.assert(this.callback.called, "expected to trigger " + trigger, "expected not to trigger " + trigger);
32
35
  if (options["with"] != null) {
33
36
  context.assert((_ref = this.callback).calledWith.apply(_ref, options["with"]), "expected trigger to be called with " + (inspect(options["with"])) + ", but was called with " + (inspect(this.callback.args[0])) + ".", "expected trigger not to be called with " + (inspect(options["with"])) + ", but was");
34
37
  }
@@ -42,7 +45,9 @@
42
45
  });
43
46
  routeTo = function(router, methodName, options) {
44
47
  var consideredRouter, current_history, route, spy, _i, _len, _ref;
45
- if (options == null) options = {};
48
+ if (options == null) {
49
+ options = {};
50
+ }
46
51
  current_history = Backbone.history;
47
52
  Backbone.history = new Backbone.History;
48
53
  spy = sinon.spy(router, methodName);
@@ -63,8 +68,8 @@
63
68
  Backbone.history = current_history;
64
69
  router[methodName].restore();
65
70
  this.assert(spy.calledOnce, "expected `" + route + "` to route to " + methodName, "expected `" + route + "` not to route to " + methodName);
66
- if (options.arguments != null) {
67
- return this.assert(spy.calledWith.apply(spy, options.arguments), "expected `" + methodName + "` to be called with " + (inspect(options.arguments)) + ", but was called with " + (inspect(spy.args[0])) + " instead", "expected `" + methodName + "` not to be called with " + (inspect(options.arguments)) + ", but was");
71
+ if (options["arguments"] != null) {
72
+ return this.assert(spy.calledWith.apply(spy, options["arguments"]), "expected `" + methodName + "` to be called with " + (inspect(options["arguments"])) + ", but was called with " + (inspect(spy.args[0])) + " instead", "expected `" + methodName + "` not to be called with " + (inspect(options["arguments"])) + ", but was");
68
73
  }
69
74
  };
70
75
  chai.Assertion.overwriteProperty('to', function(_super) {
@@ -90,7 +95,9 @@
90
95
  },
91
96
  after: function(context) {
92
97
  object[methodName] = this.originalMethod;
93
- if (typeof object.delegateEvents === "function") object.delegateEvents();
98
+ if (typeof object.delegateEvents === "function") {
99
+ object.delegateEvents();
100
+ }
94
101
  return context.assert(this.spy.callCount > 0, this.spy.printf("expected %n to have been called at least once"), this.spy.printf("expected %n to not have been called"));
95
102
  }
96
103
  });
@@ -1,173 +1,205 @@
1
- (function(chaiChanges) {
2
- if (typeof require === "function" && typeof exports === "object" && typeof module === "object") {
3
- return module.exports = chaiChanges;
4
- } else if (typeof define === "function" && define.amd) {
5
- return define(function() {
6
- return chaiChanges;
7
- });
8
- } else {
9
- return chai.use(chaiChanges);
10
- }
11
- })(function(chai, utils) {
12
- var changeBy, changeByAssert, changeFrom, changeFromAssert, changeFromBeginAssert, changeTo, changeToAssert, changeToBeginAssert, flag, formatFunction, inspect, noChangeAssert;
13
- inspect = utils.inspect;
14
- flag = utils.flag;
15
- /*
16
- #
17
- # Changes Matchers
18
- #
19
- */
1
+ // Generated by CoffeeScript 1.3.3
2
+ (function() {
20
3
 
21
- chai.Assertion.addMethod('when', function(val) {
22
- var action, definedActions, _i, _j, _len, _len1, _results;
23
- definedActions = flag(this, 'whenActions') || [];
24
- for (_i = 0, _len = definedActions.length; _i < _len; _i++) {
25
- action = definedActions[_i];
26
- if (typeof action.before === "function") {
27
- action.before(this);
28
- }
29
- }
30
- val();
31
- _results = [];
32
- for (_j = 0, _len1 = definedActions.length; _j < _len1; _j++) {
33
- action = definedActions[_j];
34
- _results.push(typeof action.after === "function" ? action.after(this) : void 0);
35
- }
36
- return _results;
37
- });
38
- noChangeAssert = function(context) {
39
- var endValue, negate, object, relevant, result, startValue;
40
- relevant = flag(context, 'no-change');
41
- if (!relevant) {
42
- return;
4
+ (function(chaiChanges) {
5
+ if (typeof require === "function" && typeof exports === "object" && typeof module === "object") {
6
+ return module.exports = chaiChanges;
7
+ } else if (typeof define === "function" && define.amd) {
8
+ return define(function() {
9
+ return chaiChanges;
10
+ });
11
+ } else {
12
+ return chai.use(chaiChanges);
43
13
  }
44
- negate = flag(context, 'negate');
45
- flag(context, 'negate', this.negate);
46
- object = flag(context, 'object');
47
- startValue = flag(context, 'changeStart');
48
- endValue = object();
49
- result = !utils.eql(endValue, startValue);
50
- context.assert(result, "expected `" + (formatFunction(object)) + "` to change, but it stayed " + (utils.inspect(startValue)), "expected `" + (formatFunction(object)) + "` not to change, but it changed from " + (utils.inspect(startValue)) + " to " + (utils.inspect(endValue)));
51
- return flag(context, 'negate', negate);
52
- };
53
- changeByAssert = function(context) {
54
- var actualDelta, endValue, negate, object, startValue;
55
- negate = flag(context, 'negate');
56
- flag(context, 'negate', this.negate);
57
- object = flag(context, 'object');
58
- startValue = flag(context, 'changeStart');
59
- endValue = object();
60
- actualDelta = endValue - startValue;
61
- context.assert(this.expectedDelta === actualDelta, "expected `" + (formatFunction(object)) + "` to change by " + this.expectedDelta + ", but it changed by " + actualDelta, "expected `" + (formatFunction(object)) + "` not to change by " + this.expectedDelta + ", but it did");
62
- return flag(context, 'negate', negate);
63
- };
64
- changeToBeginAssert = function(context) {
65
- var negate, object, result, startValue;
66
- negate = flag(context, 'negate');
67
- flag(context, 'negate', this.negate);
68
- object = flag(context, 'object');
69
- startValue = object();
70
- result = !utils.eql(startValue, this.expectedEndValue);
71
- if (negate) {
72
- result = !result;
73
- }
74
- context.assert(result, "expected `" + (formatFunction(object)) + "` to change to " + (utils.inspect(this.expectedEndValue)) + ", but it was already " + (utils.inspect(startValue)), "not supported");
75
- return flag(context, 'negate', negate);
76
- };
77
- changeToAssert = function(context) {
78
- var endValue, negate, object, result;
79
- negate = flag(context, 'negate');
80
- flag(context, 'negate', this.negate);
81
- object = flag(context, 'object');
82
- endValue = object();
83
- result = utils.eql(endValue, this.expectedEndValue);
84
- context.assert(result, "expected `" + (formatFunction(object)) + "` to change to " + (utils.inspect(this.expectedEndValue)) + ", but it changed to " + (utils.inspect(endValue)), "expected `" + (formatFunction(object)) + "` not to change to " + (utils.inspect(this.expectedEndValue)) + ", but it did");
85
- return flag(context, 'negate', negate);
86
- };
87
- changeFromBeginAssert = function(context) {
88
- var negate, object, result, startValue;
89
- negate = flag(context, 'negate');
90
- flag(context, 'negate', this.negate);
91
- object = flag(context, 'object');
92
- startValue = object();
93
- result = utils.eql(startValue, this.expectedStartValue);
94
- context.assert(result, "expected the change of `" + (formatFunction(object)) + "` to start from " + (utils.inspect(this.expectedStartValue)) + ", but it started from " + (utils.inspect(startValue)), "expected the change of `" + (formatFunction(object)) + "` not to start from " + (utils.inspect(this.expectedStartValue)) + ", but it did");
95
- return flag(context, 'negate', negate);
96
- };
97
- changeFromAssert = function(context) {
98
- var endValue, negate, object, result, startValue;
99
- negate = flag(context, 'negate');
100
- flag(context, 'negate', this.negate);
101
- object = flag(context, 'object');
102
- startValue = flag(context, 'changeStart');
103
- endValue = object();
104
- result = !utils.eql(startValue, endValue);
105
- if (negate) {
106
- result = !result;
107
- }
108
- context.assert(result, "expected `" + (formatFunction(object)) + "` to change from " + (utils.inspect(this.expectedStartValue)) + ", but it did not change", "not supported");
109
- return flag(context, 'negate', negate);
110
- };
111
- chai.Assertion.addProperty('change', function() {
112
- var definedActions;
113
- flag(this, 'no-change', true);
114
- definedActions = flag(this, 'whenActions') || [];
115
- definedActions.push({
116
- negate: flag(this, 'negate'),
117
- before: function(context) {
118
- var startValue;
119
- startValue = flag(context, 'object')();
120
- return flag(context, 'changeStart', startValue);
121
- },
122
- after: noChangeAssert
14
+ })(function(chai, utils) {
15
+ var changeBy, changeByAssert, changeFrom, changeFromAssert, changeFromBeginAssert, changeTo, changeToAssert, changeToBeginAssert, flag, formatFunction, inspect, noChangeAssert;
16
+ inspect = utils.inspect;
17
+ flag = utils.flag;
18
+ /*
19
+ #
20
+ # Changes Matchers
21
+ #
22
+ */
23
+
24
+ chai.Assertion.addMethod('when', function(val, options) {
25
+ var action, definedActions, done, _i, _j, _len, _len1, _results,
26
+ _this = this;
27
+ if (options == null) {
28
+ options = {};
29
+ }
30
+ definedActions = flag(this, 'whenActions') || [];
31
+ for (_i = 0, _len = definedActions.length; _i < _len; _i++) {
32
+ action = definedActions[_i];
33
+ if (typeof action.before === "function") {
34
+ action.before(this);
35
+ }
36
+ }
37
+ if (val.then != null) {
38
+ done = options != null ? options.notify : void 0;
39
+ if (done == null) {
40
+ done = function() {};
41
+ }
42
+ return val.then(function() {
43
+ var _j, _len1;
44
+ try {
45
+ for (_j = 0, _len1 = definedActions.length; _j < _len1; _j++) {
46
+ action = definedActions[_j];
47
+ if (typeof action.after === "function") {
48
+ action.after(_this);
49
+ }
50
+ }
51
+ return done();
52
+ } catch (error) {
53
+ return done(error);
54
+ }
55
+ });
56
+ } else {
57
+ if (typeof val === "function") {
58
+ val();
59
+ }
60
+ _results = [];
61
+ for (_j = 0, _len1 = definedActions.length; _j < _len1; _j++) {
62
+ action = definedActions[_j];
63
+ _results.push(typeof action.after === "function" ? action.after(this) : void 0);
64
+ }
65
+ return _results;
66
+ }
123
67
  });
124
- return flag(this, 'whenActions', definedActions);
125
- });
126
- formatFunction = function(func) {
127
- return func.toString().replace(/^\s*function \(\) {\s*/, '').replace(/\s+}$/, '').replace(/\s*return\s*/, '');
128
- };
129
- changeBy = function(delta) {
130
- var definedActions;
131
- flag(this, 'no-change', false);
132
- definedActions = flag(this, 'whenActions') || [];
133
- definedActions.push({
134
- negate: flag(this, 'negate'),
135
- expectedDelta: delta,
136
- after: changeByAssert
68
+ noChangeAssert = function(context) {
69
+ var endValue, negate, object, relevant, result, startValue;
70
+ relevant = flag(context, 'no-change');
71
+ if (!relevant) {
72
+ return;
73
+ }
74
+ negate = flag(context, 'negate');
75
+ flag(context, 'negate', this.negate);
76
+ object = flag(context, 'object');
77
+ startValue = flag(context, 'changeStart');
78
+ endValue = object();
79
+ result = !utils.eql(endValue, startValue);
80
+ context.assert(result, "expected `" + (formatFunction(object)) + "` to change, but it stayed " + (utils.inspect(startValue)), "expected `" + (formatFunction(object)) + "` not to change, but it changed from " + (utils.inspect(startValue)) + " to " + (utils.inspect(endValue)));
81
+ return flag(context, 'negate', negate);
82
+ };
83
+ changeByAssert = function(context) {
84
+ var actualDelta, endValue, negate, object, startValue;
85
+ negate = flag(context, 'negate');
86
+ flag(context, 'negate', this.negate);
87
+ object = flag(context, 'object');
88
+ startValue = flag(context, 'changeStart');
89
+ endValue = object();
90
+ actualDelta = endValue - startValue;
91
+ context.assert(this.expectedDelta === actualDelta, "expected `" + (formatFunction(object)) + "` to change by " + this.expectedDelta + ", but it changed by " + actualDelta, "expected `" + (formatFunction(object)) + "` not to change by " + this.expectedDelta + ", but it did");
92
+ return flag(context, 'negate', negate);
93
+ };
94
+ changeToBeginAssert = function(context) {
95
+ var negate, object, result, startValue;
96
+ negate = flag(context, 'negate');
97
+ flag(context, 'negate', this.negate);
98
+ object = flag(context, 'object');
99
+ startValue = object();
100
+ result = !utils.eql(startValue, this.expectedEndValue);
101
+ if (negate) {
102
+ result = !result;
103
+ }
104
+ context.assert(result, "expected `" + (formatFunction(object)) + "` to change to " + (utils.inspect(this.expectedEndValue)) + ", but it was already " + (utils.inspect(startValue)), "not supported");
105
+ return flag(context, 'negate', negate);
106
+ };
107
+ changeToAssert = function(context) {
108
+ var endValue, negate, object, result;
109
+ negate = flag(context, 'negate');
110
+ flag(context, 'negate', this.negate);
111
+ object = flag(context, 'object');
112
+ endValue = object();
113
+ result = utils.eql(endValue, this.expectedEndValue);
114
+ context.assert(result, "expected `" + (formatFunction(object)) + "` to change to " + (utils.inspect(this.expectedEndValue)) + ", but it changed to " + (utils.inspect(endValue)), "expected `" + (formatFunction(object)) + "` not to change to " + (utils.inspect(this.expectedEndValue)) + ", but it did");
115
+ return flag(context, 'negate', negate);
116
+ };
117
+ changeFromBeginAssert = function(context) {
118
+ var negate, object, result, startValue;
119
+ negate = flag(context, 'negate');
120
+ flag(context, 'negate', this.negate);
121
+ object = flag(context, 'object');
122
+ startValue = object();
123
+ result = utils.eql(startValue, this.expectedStartValue);
124
+ context.assert(result, "expected the change of `" + (formatFunction(object)) + "` to start from " + (utils.inspect(this.expectedStartValue)) + ", but it started from " + (utils.inspect(startValue)), "expected the change of `" + (formatFunction(object)) + "` not to start from " + (utils.inspect(this.expectedStartValue)) + ", but it did");
125
+ return flag(context, 'negate', negate);
126
+ };
127
+ changeFromAssert = function(context) {
128
+ var endValue, negate, object, result, startValue;
129
+ negate = flag(context, 'negate');
130
+ flag(context, 'negate', this.negate);
131
+ object = flag(context, 'object');
132
+ startValue = flag(context, 'changeStart');
133
+ endValue = object();
134
+ result = !utils.eql(startValue, endValue);
135
+ if (negate) {
136
+ result = !result;
137
+ }
138
+ context.assert(result, "expected `" + (formatFunction(object)) + "` to change from " + (utils.inspect(this.expectedStartValue)) + ", but it did not change", "not supported");
139
+ return flag(context, 'negate', negate);
140
+ };
141
+ chai.Assertion.addProperty('change', function() {
142
+ var definedActions;
143
+ flag(this, 'no-change', true);
144
+ definedActions = flag(this, 'whenActions') || [];
145
+ definedActions.push({
146
+ negate: flag(this, 'negate'),
147
+ before: function(context) {
148
+ var startValue;
149
+ startValue = flag(context, 'object')();
150
+ return flag(context, 'changeStart', startValue);
151
+ },
152
+ after: noChangeAssert
153
+ });
154
+ return flag(this, 'whenActions', definedActions);
137
155
  });
138
- return flag(this, 'whenActions', definedActions);
139
- };
140
- chai.Assertion.addChainableMethod('by', changeBy, function() {
141
- return this;
142
- });
143
- changeTo = function(endValue) {
144
- var definedActions;
145
- flag(this, 'no-change', false);
146
- definedActions = flag(this, 'whenActions') || [];
147
- definedActions.push({
148
- negate: flag(this, 'negate'),
149
- expectedEndValue: endValue,
150
- before: changeToBeginAssert,
151
- after: changeToAssert
156
+ formatFunction = function(func) {
157
+ return func.toString().replace(/^\s*function \(\) {\s*/, '').replace(/\s+}$/, '').replace(/\s*return\s*/, '');
158
+ };
159
+ changeBy = function(delta) {
160
+ var definedActions;
161
+ flag(this, 'no-change', false);
162
+ definedActions = flag(this, 'whenActions') || [];
163
+ definedActions.push({
164
+ negate: flag(this, 'negate'),
165
+ expectedDelta: delta,
166
+ after: changeByAssert
167
+ });
168
+ return flag(this, 'whenActions', definedActions);
169
+ };
170
+ chai.Assertion.addChainableMethod('by', changeBy, function() {
171
+ return this;
152
172
  });
153
- return flag(this, 'whenActions', definedActions);
154
- };
155
- chai.Assertion.addChainableMethod('to', changeTo, function() {
156
- return this;
157
- });
158
- changeFrom = function(startValue) {
159
- var definedActions;
160
- flag(this, 'no-change', false);
161
- definedActions = flag(this, 'whenActions') || [];
162
- definedActions.push({
163
- negate: flag(this, 'negate'),
164
- expectedStartValue: startValue,
165
- before: changeFromBeginAssert,
166
- after: changeFromAssert
173
+ changeTo = function(endValue) {
174
+ var definedActions;
175
+ flag(this, 'no-change', false);
176
+ definedActions = flag(this, 'whenActions') || [];
177
+ definedActions.push({
178
+ negate: flag(this, 'negate'),
179
+ expectedEndValue: endValue,
180
+ before: changeToBeginAssert,
181
+ after: changeToAssert
182
+ });
183
+ return flag(this, 'whenActions', definedActions);
184
+ };
185
+ chai.Assertion.addChainableMethod('to', changeTo, function() {
186
+ return this;
187
+ });
188
+ changeFrom = function(startValue) {
189
+ var definedActions;
190
+ flag(this, 'no-change', false);
191
+ definedActions = flag(this, 'whenActions') || [];
192
+ definedActions.push({
193
+ negate: flag(this, 'negate'),
194
+ expectedStartValue: startValue,
195
+ before: changeFromBeginAssert,
196
+ after: changeFromAssert
197
+ });
198
+ return flag(this, 'whenActions', definedActions);
199
+ };
200
+ return chai.Assertion.addChainableMethod('from', changeFrom, function() {
201
+ return this;
167
202
  });
168
- return flag(this, 'whenActions', definedActions);
169
- };
170
- return chai.Assertion.addChainableMethod('from', changeFrom, function() {
171
- return this;
172
203
  });
173
- });
204
+
205
+ }).call(this);
@@ -5,19 +5,24 @@
5
5
  module.exports = chaiJquery;
6
6
  } else if (typeof define === "function" && define.amd) {
7
7
  // AMD
8
- define(function () {
9
- return chaiJquery;
8
+ define(['jquery'], function ($) {
9
+ return function (chai, utils) {
10
+ return chaiJquery(chai, utils, $);
11
+ };
10
12
  });
11
13
  } else {
12
14
  // Other environment (usually <script> tag): plug in to global chai instance directly.
13
- chai.use(chaiJquery);
15
+ chai.use(function (chai, utils) {
16
+ return chaiJquery(chai, utils, jQuery);
17
+ });
14
18
  }
15
- }(function (chai, utils) {
19
+ }(function (chai, utils, $) {
16
20
  var inspect = utils.inspect,
17
21
  flag = utils.flag;
22
+ $ = $ || jQuery;
18
23
 
19
- jQuery.fn.inspect = function (depth) {
20
- var el = jQuery('<div />').append(this.clone());
24
+ $.fn.inspect = function (depth) {
25
+ var el = $('<div />').append(this.clone());
21
26
  if (depth !== undefined) {
22
27
  var children = el.children();
23
28
  while (depth-- > 0)
@@ -114,7 +119,7 @@
114
119
  );
115
120
  });
116
121
 
117
- jQuery.each(['visible', 'hidden', 'selected', 'checked', 'disabled'], function (i, attr) {
122
+ $.each(['visible', 'hidden', 'selected', 'checked', 'disabled'], function (i, attr) {
118
123
  chai.Assertion.addProperty(attr, function () {
119
124
  this.assert(
120
125
  flag(this, 'object').is(':' + attr)
@@ -126,7 +131,7 @@
126
131
  chai.Assertion.overwriteProperty('exist', function (_super) {
127
132
  return function () {
128
133
  var obj = flag(this, 'object');
129
- if (obj instanceof jQuery) {
134
+ if (obj instanceof $) {
130
135
  this.assert(
131
136
  obj.length > 0
132
137
  , 'expected ' + inspect(obj.selector) + ' to exist'
@@ -140,7 +145,7 @@
140
145
  chai.Assertion.overwriteProperty('empty', function (_super) {
141
146
  return function () {
142
147
  var obj = flag(this, 'object');
143
- if (obj instanceof jQuery) {
148
+ if (obj instanceof $) {
144
149
  this.assert(
145
150
  obj.is(':empty')
146
151
  , 'expected #{this} to be empty'
@@ -155,7 +160,7 @@
155
160
  return function () {
156
161
  var be = function (selector) {
157
162
  var obj = flag(this, 'object');
158
- if (obj instanceof jQuery) {
163
+ if (obj instanceof $) {
159
164
  this.assert(
160
165
  obj.is(selector)
161
166
  , 'expected #{this} to be #{exp}'
@@ -174,7 +179,7 @@
174
179
  chai.Assertion.overwriteMethod('match', function (_super) {
175
180
  return function (selector) {
176
181
  var obj = flag(this, 'object');
177
- if (obj instanceof jQuery) {
182
+ if (obj instanceof $) {
178
183
  this.assert(
179
184
  obj.is(selector)
180
185
  , 'expected #{this} to match #{exp}'
@@ -192,7 +197,7 @@
192
197
  _super.call(this);
193
198
  var contain = function (text) {
194
199
  var obj = flag(this, 'object');
195
- if (obj instanceof jQuery) {
200
+ if (obj instanceof $) {
196
201
  this.assert(
197
202
  obj.is(':contains(\'' + text + '\')')
198
203
  , 'expected #{this} to contain #{exp}'
@@ -211,7 +216,7 @@
211
216
  chai.Assertion.overwriteProperty('have', function (_super) {
212
217
  return function () {
213
218
  var obj = flag(this, 'object');
214
- if (obj instanceof jQuery) {
219
+ if (obj instanceof $) {
215
220
  var have = function (selector) {
216
221
  this.assert(
217
222
  // Using find() rather than has() to work around a jQuery bug:
@@ -101,6 +101,7 @@
101
101
  sinonMethod("calledOn", "been called with %1 as this", ", but it was called with %t instead");
102
102
  sinonMethod("calledWith", "been called with arguments %*", "%C");
103
103
  sinonMethod("calledWithExactly", "been called with exact arguments %*", "%C");
104
+ sinonMethod("calledWithMatch", "been called with arguments matching %*", "%C");
104
105
  sinonMethod("returned", "returned %1");
105
106
  exceptionalSinonMethod("thrown", "threw", "thrown %1");
106
107
  }));
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Sinon.JS 1.5.0, 2012/11/22
2
+ * Sinon.JS 1.5.2, 2013/01/06
3
3
  *
4
4
  * @author Christian Johansen (christian@cjohansen.no)
5
5
  * @author Contributors: https://github.com/cjohansen/Sinon.JS/blob/master/AUTHORS
@@ -326,6 +326,13 @@ var sinon = (function (buster) {
326
326
  }
327
327
  var string = Object.prototype.toString.call(value);
328
328
  return string.substring(8, string.length - 1).toLowerCase();
329
+ },
330
+
331
+ createStubInstance: function (constructor) {
332
+ if (typeof constructor !== "function") {
333
+ throw new TypeError("The constructor should be a function.");
334
+ }
335
+ return sinon.stub(sinon.create(constructor.prototype));
329
336
  }
330
337
  };
331
338
 
@@ -949,7 +956,11 @@ var sinon = (function (buster) {
949
956
  var calls = [];
950
957
 
951
958
  for (var i = 0, l = spy.callCount; i < l; ++i) {
952
- push.call(calls, " " + spy.getCall(i).toString());
959
+ var stringifiedCall = " " + spy.getCall(i).toString();
960
+ if (/\n/.test(calls[i - 1])) {
961
+ stringifiedCall = "\n" + stringifiedCall;
962
+ }
963
+ push.call(calls, stringifiedCall);
953
964
  }
954
965
 
955
966
  return calls.length > 0 ? "\n" + calls.join("\n") : "";
@@ -1346,12 +1357,23 @@ var sinon = (function (buster) {
1346
1357
  return functionStub;
1347
1358
  },
1348
1359
 
1349
- reset: function () {
1350
- sinon.spy.reset.call(this);
1360
+ resetBehavior: function () {
1361
+ var i;
1362
+
1351
1363
  this.callArgAts = [];
1352
1364
  this.callbackArguments = [];
1353
1365
  this.callbackContexts = [];
1354
1366
  this.callArgProps = [];
1367
+
1368
+ delete this.returnValue;
1369
+ delete this.returnArgAt;
1370
+ this.returnThis = false;
1371
+
1372
+ if (this.fakes) {
1373
+ for (i = 0; i < this.fakes.length; i++) {
1374
+ this.fakes[i].resetBehavior();
1375
+ }
1376
+ }
1355
1377
  },
1356
1378
 
1357
1379
  returns: function returns(value) {
@@ -3057,6 +3079,15 @@ sinon.fakeServer = (function () {
3057
3079
  return false;
3058
3080
  }
3059
3081
 
3082
+ function log(response, request) {
3083
+ var str;
3084
+
3085
+ str = "Request:\n" + sinon.format(request) + "\n\n";
3086
+ str += "Response:\n" + sinon.format(response) + "\n\n";
3087
+
3088
+ sinon.log(str);
3089
+ }
3090
+
3060
3091
  return {
3061
3092
  create: function () {
3062
3093
  var server = create(this);
@@ -3163,6 +3194,8 @@ sinon.fakeServer = (function () {
3163
3194
  }
3164
3195
 
3165
3196
  if (request.readyState != 4) {
3197
+ log(response, request);
3198
+
3166
3199
  request.respond(response[0], response[1], response[2]);
3167
3200
  }
3168
3201
  } catch (e) {
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: konacha-chai-matchers
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-11-22 00:00:00.000000000 Z
12
+ date: 2013-01-06 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: A set of Chai.js libraries ready to use for Konacha
15
15
  email:
@@ -55,7 +55,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
55
55
  version: '0'
56
56
  segments:
57
57
  - 0
58
- hash: -445713635
58
+ hash: 500102349
59
59
  required_rubygems_version: !ruby/object:Gem::Requirement
60
60
  none: false
61
61
  requirements:
@@ -64,7 +64,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
64
64
  version: '0'
65
65
  segments:
66
66
  - 0
67
- hash: -445713635
67
+ hash: 500102349
68
68
  requirements: []
69
69
  rubyforge_project: konacha-chai-matchers
70
70
  rubygems_version: 1.8.15