Commit Graph

72 Commits

Author SHA1 Message Date
slackersoft
80297da4c1 Support the remainder of XHR events
- onloadstart
- onprogress
- onabort
- onerror
- onload
- ontimeout
- onloadend

Fixes #81 Fixes #82
2014-11-01 20:43:21 -07:00
slackersoft
9681f79ece Fix cross browser issues for responseXML
- IE8 doesn't support indexOf, use our own arrayContains
- Most browsers don't allow 'text/html' when using a DOMParser, so we
  won't support it for now.
- Firefox doesn't want to serialize Documents over selenium, so don't
  have them in as our expected, just use instanceof ourselves
2014-11-01 16:26:12 -07:00
slackersoft
4751eaafbb Parse responseText into a responseXML if the contentType is xml-ish
closes #55
2014-11-01 15:13:55 -07:00
slackersoft
85059718ad Move specs for the fake XHR to be more unity and less integrationy 2014-08-08 12:50:30 -07:00
slackersoft
c9ec591514 Give each class it's own file for better separation
- Specs still run against the concatenated file
- Use the jasmine require obj `getJasmineRequireObj()` for dependencies
2014-08-04 07:46:32 -07:00
slackersoft
1ec196e525 refactor response headers normalization into it's own method 2014-07-30 18:46:02 -07:00
slackersoft
f38d9ad97c Merge branch 'master' of https://github.com/resident-uhlig/jasmine-ajax into resident-uhlig-master
Closes #72
2014-07-30 13:37:44 -07:00
slackersoft
8e1b1fc422 Record overridden mime types
Fix #74
2014-07-29 18:28:13 -07:00
slackersoft
864c8df82b Find response case-insensitively 2014-07-29 08:08:03 -07:00
slackersoft
0b2b4a4a2e Combine request headers with the same name 2014-07-29 07:45:12 -07:00
slackersoft
a9f3164578 turn on jshint in the build 2014-07-25 13:31:44 -07:00
Sven Uhlig
1e84763bd5 added support for multiple headers with same name 2014-07-13 03:14:02 +02:00
Sven Uhlig
ce30728c98 changes in order to satisfy jshint
[L120:C18] Wrap the /regexp/ literal in parens to disambiguate the slash operator.
          return /^application\/json/.test(xhr.contentType());
[L307:C27] Expected '===' and instead saw '=='.
      if (requests.length == 0) return [];
[L307:C33] Expected '{' and instead saw 'return'.
      if (requests.length == 0) return [];
[L318:C31] Expected '===' and instead saw '=='.
          if (requests[i].url == url_to_match) {
2014-07-13 00:53:18 +02:00
Kevin Montag
9908439d81 Throw an error if response() is called more than once on requests
Closes #71 Fixes #70
2014-07-11 12:58:34 -07:00
slackersoft
199324e720 Allow stubs to match only a particular http method (GET, POST, PUT, etc.)
Fixes #36
2014-07-10 12:44:56 -07:00
slackersoft
54864a45d3 Allow extra qualifications when matching json content-type 2014-06-12 13:33:48 -07:00
slackersoft
d893394765 Add the ability to add custom parameter parsers at runtime 2014-06-12 13:29:33 -07:00
slackersoft
080bbde2b1 Allow to parse request params as JSON
fixes #51
2014-06-11 08:13:26 -07:00
slackersoft
477f044b4a The HTTP spec says it's 'Content-Type'
Fixes #67
2014-06-10 13:33:32 -07:00
Wil Linssen
49d953c954 Allow stubs to use Regex 2014-06-10 13:10:16 -07:00
Sheel Choksi
85be9be887 Fixes for IE 8 and IE 9
- Object.keys isn't available in IE 8, so using a local objectKeys helper method
that accomplishes the same effect for spec
- The DONE property isn't supported in IE 8, so falling back to the
numerical 4 in spec when necessary
- Extending from an XMLHttpRequest can't extend properties that are
filled in asynchronously (status, responseText, etc.) on IE 8 and IE 9
so we now skip these properties when extending
2014-06-01 15:40:19 -07:00
Gregg Van Hove
5856e057bf Don't sort url param values
fix #52
2014-04-18 10:52:08 -07:00
Peet Goddard
7acac4b69f fix the prototype chain of the FakeXMLHttpRequest object
the prototype of the FakeXMLHttpRequest object will now be an XMLHttpRequest object, including properties such as 'withCredentials', not the XMLHttpRequest constructor function
2014-04-04 15:29:49 +01:00
slackersoft
5ccd4827ee allow query string for stubbed requests to be in any order 2014-01-21 17:06:23 -10:00
slackersoft
a19e5b1bcd match form data in any order 2014-01-17 15:50:49 -08:00
slackersoft
75d0747e70 rudementary matching against the form data being submitted for a request stub 2014-01-17 15:50:48 -08:00
slackersoft
3ebf994356 trigger onreadystatechange everywhere we set readyState
- Partially addresses #19
2014-01-17 15:50:48 -08:00
Don McCaughey and Greg Cobb
c788f13224 Create requestHeaders object in FakeXMLHttpRequest constructor instead of on the prototype 2013-12-02 17:51:21 -08:00
JR Boyens
b0d4d0d573 [Fixes #32] add statusText to the response 2013-11-01 15:51:21 -07:00
JR Boyens
e3639a5a7c [Fixes #38][Fixes #35] Add filtering to the requests tracker 2013-11-01 15:05:30 -07:00
pivotal
14ca64b77a [Fixes #39] Uninstall should clear requests / stubs 2013-11-01 14:41:35 -07:00
JR and Sheel Choksi
546549cb5f Merge pull request #41 2013-11-01 12:09:55 -07:00
Sheel Choksi
b5c99709c3 Bump jasmine to 2.0.0rc5 2013-10-31 09:54:47 -07:00
Pavel Lishin
e8619f762b Set status to 0 and statusText to "abort" when FakeXMLHttpRequest.abort is called 2013-10-29 17:06:43 -04:00
Gregg Van Hove and JR Boyens
12e394353a Add at() to access specific request index; actually construct MockAjax 2013-10-18 13:05:47 -07:00
JR Boyens and Tim Jarratt
059d576faa Merge remote-tracking branch 'origin/jasmine_2_0_interface'
Conflicts:
	lib/mock-ajax.js
2013-10-18 12:44:34 -07:00
slackersoft
c2a02dbdf6 Rework jasmine ajax to behave more like the jasmine clock and spys
- use an instance of MockAjax for nicer tests
- the only global install is `mockAjax`
- mockAjax has a `requests` to track requests that have been made
- mockAjax has a `stubs` to track stubs that have been registered
- use just `install` and `uninstall` to be consistent with clock
2013-10-11 22:16:22 -07:00
slackersoft
7900fc3e18 Update to work the way that jasmine 2.0 expect plugins to work. 2013-10-10 13:27:26 -07:00
Ken Mayer
4711914056 Update mock-ajax.js
Update copyright date
2013-10-08 10:49:06 -07:00
JR Boyens
c821f7fbc4 Add Grunt; jshint fixes; more tests 2013-02-19 10:33:40 -08:00
JR Boyens
9b2852195a Merge with master 2013-02-18 21:18:26 -08:00
Ian Baker
980f9b48c7 Grammar fix leftover from the removal of Prototype 2013-02-12 22:19:04 -08:00
JR Boyens
b8ee919ea2 WIP 2013-02-04 19:32:59 -08:00
J Smith
ede994d75b jQuery 2.0 renamed onreadystatechange to onload. 2013-02-04 12:20:42 -05:00
JR Boyens
f75b12606a Support capturing HTTP Authentication - fixes #11 2013-01-09 00:05:07 -08:00
JR Boyens
358efd59fd Support capturing HTTP Authentication - fixes #11 2013-01-09 00:03:52 -08:00
JR Boyens
5da18cc238 Remove specific library support and move to supporting XMLHttpRequest 2013-01-08 23:47:56 -08:00
JR Boyens
b987b61da2 Mock at a higher level; add Zepto tests 2013-01-08 22:40:59 -08:00
JR Boyens
302aab3696 Removed Prototype.js support 2012-12-19 23:18:22 -08:00
JR Boyens
ae89125d72 Clean JSHint errors 2012-12-19 23:02:23 -08:00