aboutsummaryrefslogtreecommitdiff
path: root/contexts/data/lib/closure-library/closure/goog/testing/net/xhrio_test.html
diff options
context:
space:
mode:
Diffstat (limited to 'contexts/data/lib/closure-library/closure/goog/testing/net/xhrio_test.html')
-rw-r--r--contexts/data/lib/closure-library/closure/goog/testing/net/xhrio_test.html384
1 files changed, 0 insertions, 384 deletions
diff --git a/contexts/data/lib/closure-library/closure/goog/testing/net/xhrio_test.html b/contexts/data/lib/closure-library/closure/goog/testing/net/xhrio_test.html
deleted file mode 100644
index 109a4d5..0000000
--- a/contexts/data/lib/closure-library/closure/goog/testing/net/xhrio_test.html
+++ /dev/null
@@ -1,384 +0,0 @@
-<!DOCTYPE html>
-<html>
-<!--
-Copyright 2008 The Closure Library Authors. All Rights Reserved.
-
-Use of this source code is governed by the Apache License, Version 2.0.
-See the COPYING file for details.
--->
-<head>
-<meta http-equiv="X-UA-Compatible" content="IE=edge">
-<title>Closure Unit Tests - goog.testing.net.XhrIo</title>
-<script src="../../base.js"></script>
-<script>
- goog.require('goog.dom.xml');
- goog.require('goog.events');
- goog.require('goog.events.Event');
- goog.require('goog.net.EventType');
- goog.require('goog.testing.asserts');
- goog.require('goog.testing.jsunit');
- goog.require('goog.testing.net.XhrIo');
- goog.require('goog.testing.mockmatchers.InstanceOf');
- goog.require('goog.testing.MockControl');
-</script>
-</head>
-<body>
-<script>
-
-var mockControl;
-
-function setUp() {
- mockControl = new goog.testing.MockControl();
-}
-
-function testStaticSend() {
- sendInstances = goog.testing.net.XhrIo.getSendInstances();
- goog.testing.net.XhrIo.send('url');
- assertEquals('sendInstances_ after send',
- 1, sendInstances.length);
- xhr = sendInstances[sendInstances.length - 1];
- assertTrue('isActive after request', xhr.isActive());
- assertEquals('readyState after request',
- goog.net.XmlHttp.ReadyState.LOADING,
- xhr.getReadyState());
-
- xhr.simulateResponse(200, '');
- assertFalse('isActive after response', xhr.isActive());
- assertEquals('readyState after response',
- goog.net.XmlHttp.ReadyState.COMPLETE,
- xhr.getReadyState());
-
- xhr.simulateReady();
- assertEquals('sendInstances_ after READY',
- 0, sendInstances.length);
-}
-
-function testStaticSendWithException() {
- goog.testing.net.XhrIo.send('url', function() {
- if (!this.isSuccess()) {
- throw Error('The xhr did not complete successfully!');
- }
- });
- var sendInstances = goog.testing.net.XhrIo.getSendInstances();
- var xhr = sendInstances[sendInstances.length - 1];
- try {
- xhr.simulateResponse(400, '');
- } catch(e) {
- // Do nothing with the exception; we just want to make sure
- // the class cleans itself up properly when an exception is
- // thrown.
- }
- assertEquals('Send instance array not cleaned up properly!',
- 0, sendInstances.length);
-}
-
-function testMultipleSend() {
- var xhr = new goog.testing.net.XhrIo();
- assertFalse('isActive before first request', xhr.isActive());
- assertEquals('readyState before first request',
- goog.net.XmlHttp.ReadyState.UNINITIALIZED,
- xhr.getReadyState());
-
- xhr.send('url');
- assertTrue('isActive after first request', xhr.isActive());
- assertEquals('readyState after first request',
- goog.net.XmlHttp.ReadyState.LOADING,
- xhr.getReadyState());
-
- xhr.simulateResponse(200, '');
- assertFalse('isActive after first response', xhr.isActive());
- assertEquals('readyState after first response',
- goog.net.XmlHttp.ReadyState.COMPLETE,
- xhr.getReadyState());
-
- xhr.send('url');
- assertTrue('isActive after second request', xhr.isActive());
- assertEquals('readyState after second request',
- goog.net.XmlHttp.ReadyState.LOADING,
- xhr.getReadyState());
-}
-
-function testGetLastUri() {
- var xhr = new goog.testing.net.XhrIo();
- assertEquals('nothing sent yet, empty URI', '', xhr.getLastUri());
-
- var requestUrl = 'http://www.example.com/';
- xhr.send(requestUrl);
- assertEquals('message sent, URI saved', requestUrl, xhr.getLastUri());
-}
-
-function testGetLastMethod() {
- var xhr = new goog.testing.net.XhrIo();
- assertUndefined('nothing sent yet, empty method', xhr.getLastMethod());
-
- var method = 'POKE';
- xhr.send('http://www.example.com/', method);
- assertEquals('message sent, method saved', method, xhr.getLastMethod());
- xhr.simulateResponse(200, '');
-
- xhr.send('http://www.example.com/');
- assertEquals('message sent, method saved', 'GET', xhr.getLastMethod());
-}
-
-function testGetLastContent() {
- var xhr = new goog.testing.net.XhrIo();
- assertUndefined('nothing sent yet, empty content', xhr.getLastContent());
-
- var postContent = 'var=value&var2=value2';
- xhr.send('http://www.example.com/', undefined, postContent);
- assertEquals('POST message sent, content saved',
- postContent, xhr.getLastContent());
- xhr.simulateResponse(200, '');
-
- xhr.send('http://www.example.com/');
- assertUndefined('GET message sent, content cleaned', xhr.getLastContent());
-}
-
-function testGetLastRequestHeaders() {
- var xhr = new goog.testing.net.XhrIo();
- assertUndefined('nothing sent yet, empty headers',
- xhr.getLastRequestHeaders());
-
- xhr.send('http://www.example.com/', undefined, undefined,
- {'From': 'page@google.com'});
- assertObjectEquals('Request sent with extra headers, headers saved',
- {'From': 'page@google.com'},
- xhr.getLastRequestHeaders());
- xhr.simulateResponse(200, '');
-
- xhr.send('http://www.example.com');
- assertUndefined('New request sent without extra headers',
- xhr.getLastRequestHeaders());
-}
-
-function testGetResponseText() {
- // Text response came.
- var called = false;
- var xhr = new goog.testing.net.XhrIo();
- goog.events.listen(xhr, goog.net.EventType.SUCCESS, function(e) {
- called = true;
- assertEquals('text', e.target.getResponseText());
- });
- xhr.simulateResponse(200, 'text');
- assertTrue(called);
-
- // XML response came.
- var called = false;
- var xhr = new goog.testing.net.XhrIo();
- var xml = goog.dom.xml.createDocument();
- xml.appendChild(xml.createElement('root'));
- goog.events.listen(xhr, goog.net.EventType.SUCCESS, function(e) {
- called = true;
- var text = e.target.getResponseText();
- assertTrue(/<root ?\/>/.test(text));
- });
- xhr.simulateResponse(200, xml);
- assertTrue(called);
-}
-
-function testGetResponseJson() {
- // Valid JSON response came.
- var called = false;
- var xhr = new goog.testing.net.XhrIo();
- goog.events.listen(xhr, goog.net.EventType.SUCCESS, function(e) {
- called = true;
- assertArrayEquals([0, 1], e.target.getResponseJson());
- });
- xhr.simulateResponse(200, '[0, 1]');
- assertTrue(called);
-
- // Valid JSON response with XSSI prefix encoded came.
- var called = false;
- var xhr = new goog.testing.net.XhrIo();
- goog.events.listen(xhr, goog.net.EventType.SUCCESS, function(e) {
- called = true;
- assertArrayEquals([0, 1], e.target.getResponseJson(')]}\', \n'));
- });
- xhr.simulateResponse(200, ')]}\', \n[0, 1]');
- assertTrue(called);
-
- // Invalid JSON response came.
- var called = false;
- var xhr = new goog.testing.net.XhrIo();
- goog.events.listen(xhr, goog.net.EventType.SUCCESS, function(e) {
- called = true;
- assertThrows(e.target.getResponseJson);
- });
- xhr.simulateResponse(200, '[0, 1');
- assertTrue(called);
-
- // XML response came.
- var called = false;
- var xhr = new goog.testing.net.XhrIo();
- var xml = goog.dom.xml.createDocument();
- xml.appendChild(xml.createElement('root'));
- goog.events.listen(xhr, goog.net.EventType.SUCCESS, function(e) {
- called = true;
- assertThrows(e.target.getResponseJson);
- });
- xhr.simulateResponse(200, xml);
- assertTrue(called);
-}
-
-function testGetResponseXml() {
- // Text response came.
- var called = false;
- var xhr = new goog.testing.net.XhrIo();
- goog.events.listen(xhr, goog.net.EventType.SUCCESS, function(e) {
- called = true;
- assertNull(e.target.getResponseXml());
- });
- xhr.simulateResponse(200, 'text');
- assertTrue(called);
-
- // XML response came.
- var called = false;
- var xhr = new goog.testing.net.XhrIo();
- var xml = goog.dom.xml.createDocument();
- xml.appendChild(xml.createElement('root'));
- goog.events.listen(xhr, goog.net.EventType.SUCCESS, function(e) {
- called = true;
- assertEquals(xml, e.target.getResponseXml());
- });
- xhr.simulateResponse(200, xml);
- assertTrue(called);
-}
-
-function testGetResponseHeaders_noHeadersPresent() {
- var xhr = new goog.testing.net.XhrIo();
- var mockListener = mockControl.createFunctionMock();
- mockListener(new goog.testing.mockmatchers.InstanceOf(goog.events.Event))
- .$does(function(e) {
- assertTrue(e.type == goog.net.EventType.SUCCESS);
- assertUndefined(e.target.getResponseHeader('XHR'));
- });
- mockControl.$replayAll();
- goog.events.listen(xhr, goog.net.EventType.SUCCESS, mockListener);
- xhr.simulateResponse(200, '');
-
- mockControl.$verifyAll();
- mockControl.$resetAll();
-}
-
-function testGetResponseHeaders_headersPresent() {
- var xhr = new goog.testing.net.XhrIo();
- var mockListener = mockControl.createFunctionMock();
- mockListener(new goog.testing.mockmatchers.InstanceOf(goog.events.Event))
- .$does(function(e) {
- assertTrue(e.type == goog.net.EventType.SUCCESS);
- assertUndefined(e.target.getResponseHeader('XHR'));
- assertEquals(e.target.getResponseHeader('Pragma'), 'no-cache');
- });
- mockControl.$replayAll();
- goog.events.listen(xhr, goog.net.EventType.SUCCESS, mockListener);
- xhr.simulateResponse(200, '', {'Pragma': 'no-cache'});
-
- mockControl.$verifyAll();
- mockControl.$resetAll();
-}
-
-function testAbort_WhenNoPendingSentRequests() {
- var xhr = new goog.testing.net.XhrIo();
- var eventListener = mockControl.createFunctionMock();
- mockControl.$replayAll();
-
- goog.events.listen(xhr, goog.net.EventType.COMPLETE, eventListener);
- goog.events.listen(xhr, goog.net.EventType.SUCCESS, eventListener);
- goog.events.listen(xhr, goog.net.EventType.ABORT, eventListener);
- goog.events.listen(xhr, goog.net.EventType.ERROR, eventListener);
- goog.events.listen(xhr, goog.net.EventType.READY, eventListener);
-
- xhr.abort();
-
- mockControl.$verifyAll();
- mockControl.$resetAll();
-}
-
-function testAbort_PendingSentRequest() {
- var xhr = new goog.testing.net.XhrIo();
- var mockListener = mockControl.createFunctionMock();
-
- mockListener(new goog.testing.mockmatchers.InstanceOf(goog.events.Event))
- .$does(function(e) {
- assertTrue(e.type == goog.net.EventType.COMPLETE);
- assertObjectEquals(e.target, xhr);
- assertEquals(e.target.getLastErrorCode(), goog.net.ErrorCode.ABORT);
- assertTrue(e.target.isActive());
- });
- mockListener(new goog.testing.mockmatchers.InstanceOf(goog.events.Event))
- .$does(function(e) {
- assertTrue(e.type == goog.net.EventType.ABORT);
- assertObjectEquals(e.target, xhr);
- assertTrue(e.target.isActive());
- });
- mockListener(new goog.testing.mockmatchers.InstanceOf(goog.events.Event))
- .$does(function(e) {
- assertTrue(e.type == goog.net.EventType.READY);
- assertObjectEquals(e.target, xhr);
- assertFalse(e.target.isActive());
- });
- mockControl.$replayAll();
-
- goog.events.listen(xhr, goog.net.EventType.COMPLETE, mockListener);
- goog.events.listen(xhr, goog.net.EventType.SUCCESS, mockListener);
- goog.events.listen(xhr, goog.net.EventType.ABORT, mockListener);
- goog.events.listen(xhr, goog.net.EventType.ERROR, mockListener);
- goog.events.listen(xhr, goog.net.EventType.READY, mockListener);
- xhr.send('dummyurl');
- xhr.abort();
-
- mockControl.$verifyAll();
- mockControl.$resetAll();
-}
-
-function testEvents_Success() {
- var xhr = new goog.testing.net.XhrIo();
- var mockListener = mockControl.createFunctionMock();
-
- var readyState = goog.net.XmlHttp.ReadyState.UNINITIALIZED;
- function readyStateListener(e) {
- assertEquals(e.type, goog.net.EventType.READY_STATE_CHANGE);
- assertObjectEquals(e.target, xhr);
- readyState++;
- assertEquals(e.target.getReadyState(), readyState);
- assertTrue(e.target.isActive());
- }
-
- mockListener(new goog.testing.mockmatchers.InstanceOf(goog.events.Event))
- .$does(function(e) {
- assertEquals(e.type, goog.net.EventType.COMPLETE);
- assertObjectEquals(e.target, xhr);
- assertEquals(e.target.getLastErrorCode(), goog.net.ErrorCode.NO_ERROR);
- assertTrue(e.target.isActive());
- });
- mockListener(new goog.testing.mockmatchers.InstanceOf(goog.events.Event))
- .$does(function(e) {
- assertEquals(e.type, goog.net.EventType.SUCCESS);
- assertObjectEquals(e.target, xhr);
- assertTrue(e.target.isActive());
- });
- mockListener(new goog.testing.mockmatchers.InstanceOf(goog.events.Event))
- .$does(function(e) {
- assertEquals(e.type, goog.net.EventType.READY);
- assertObjectEquals(e.target, xhr);
- assertFalse(e.target.isActive());
- });
- mockControl.$replayAll();
-
- goog.events.listen(xhr, goog.net.EventType.READY_STATE_CHANGE,
- readyStateListener);
- goog.events.listen(xhr, goog.net.EventType.COMPLETE, mockListener);
- goog.events.listen(xhr, goog.net.EventType.SUCCESS, mockListener);
- goog.events.listen(xhr, goog.net.EventType.ABORT, mockListener);
- goog.events.listen(xhr, goog.net.EventType.ERROR, mockListener);
- goog.events.listen(xhr, goog.net.EventType.READY, mockListener);
- xhr.send('dummyurl');
- xhr.simulateResponse(200, null);
-
- mockControl.$verifyAll();
- mockControl.$resetAll();
-}
-
-</script>
-</body>
-</html>