⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 httprequesttest.js

📁 Browser independent JavaScript SDK. ClassLoader to lazy load JavaScript classes, extensions to core
💻 JS
字号:
/* * JavaScript Software Development Kit - what JavaScript should be and can be - js-sdk.sourceforge.net * Copyright (C) 2006-2007 Mathew Sheets * * == BEGIN LICENSE == * * Licensed under the terms of any of the following licenses at your * choice: * *  - GNU Lesser General Public License Version 2.1 or later (the "LGPL") *    http://www.gnu.org/licenses/lgpl.html * * == END LICENSE == */package test.jsx.io.http;import test.jsx.TestBase;import jsx.io.http.HttpRequest;import jsx.collections.HashMap;import jsx.collections.ArrayList;class HttpRequestTest extends TestBase{	HttpRequestTest()	{	}    instance setUp()    {    	super.setUp();		this.transportMock = {};		this.transportMock.open = function(){}		this.transportMock.send = function(){}		this.transportMock.setRequestHeader = function(){}		this.transportMock.readyState = 0;    }    instance tearDown()    {		super.tearDown();		this.transportMock = null;    }	instance testOpenNormal()	{		var request = new HttpRequest(this.transportMock);		request.setUrl("http://www.thebestsite.com");		var _method = null;		var _url = null;		var _asyn = null;		this.transportMock.open = function()		{			_method = arguments[0];			_url = arguments[1];			_asyn = arguments[2];		}		request.request();		this.assertTrue("POST".equals(_method));		this.assertTrue("http://www.thebestsite.com".equals(_url));		this.assertTrue(true == _asyn);	}	instance testOpenWithUrlParamerters()	{		var request = new HttpRequest(this.transportMock);		request.setUrl("http://www.thebestsite.com")			.setMethod("get")			.addParameter("one", "1")			.addParameter("two", "2");		var _method = null;		var _url = null;		var _asyn = null;		this.transportMock.open = function()		{			_method = arguments[0];			_url = arguments[1];			_asyn = arguments[2];		}		request.request();		this.assertTrue("GET".equals(_method));		this.assertTrue("http://www.thebestsite.com?one=1&two=2".equals(_url));		this.assertTrue(true == _asyn);	}	instance testOpenWithUser()	{		var request = new HttpRequest(this.transportMock);		request.setUrl("http://www.thebestsite.com")			.setMethod("get")			.addParameter("one", "1")			.addParameter("two", "2")			.setUser("msheets");		var _method = null;		var _url = null;		var _asyn = null;		var _user = null;		this.transportMock.open = function()		{			_method = arguments[0];			_url = arguments[1];			_asyn = arguments[2];			_user = arguments[3];		}		request.request();		this.assertTrue("GET".equals(_method));		this.assertTrue("http://www.thebestsite.com?one=1&two=2".equals(_url));		this.assertTrue(true == _asyn);		this.assertTrue("msheets".equals(_user));	}	instance testOpenWithUserPassword()	{		var request = new HttpRequest(this.transportMock);		request.setUrl("http://www.thebestsite.com")			.setMethod("get")			.addParameter("one", "1")			.addParameter("two", "2")			.setUser("msheets")			.setPassword("passw0rd");		var _method = null;		var _url = null;		var _asyn = null;		var _user = null;		var _password = null;		this.transportMock.open = function()		{			_method = arguments[0];			_url = arguments[1];			_asyn = arguments[2];			_user = arguments[3];			_password = arguments[4];		}		request.request();		this.assertTrue("GET".equals(_method));		this.assertTrue("http://www.thebestsite.com?one=1&two=2".equals(_url));		this.assertTrue(true == _asyn);		this.assertTrue("msheets".equals(_user));		this.assertTrue("passw0rd".equals(_password));	}	instance testSendWithNull()	{		var request = new HttpRequest(this.transportMock);		request.setUrl("http://www.thebestsite.com");		var _data = null;		this.transportMock.send = function()		{			_data = arguments[0];		}		request.request();		this.assertTrue(_data == null);	}	instance testSendWithParameters()	{		var request = new HttpRequest(this.transportMock);		request.setUrl("http://www.thebestsite.com")			.addParameter("one", "1")			.addParameter("two", "2");		var _data = null;		this.transportMock.send = function()		{			_data = arguments[0];		}		request.request();		this.assertTrue("one=1&two=2".equals(_data));	}	instance testSendWithPostBody()	{		var request = new HttpRequest(this.transportMock);		request.setUrl("http://www.thebestsite.com")			.setPostBody("one=1&two=2");		var _data = null;		this.transportMock.send = function()		{			_data = arguments[0];		}		request.request();		this.assertTrue("one=1&two=2".equals(_data));	}	instance testSendWithPostDoc()	{		var request = new HttpRequest(this.transportMock);		request.setUrl("http://www.thebestsite.com")			.setPostDoc("one=1&two=2");		var _data = null;		this.transportMock.send = function()		{			_data = arguments[0];		}		request.request();		this.assertTrue("one=1&two=2".equals(_data));	}	instance testSetRequestHeaders()	{		var request = new HttpRequest(this.transportMock);		request.setUrl("http://www.thebestsite.com")			.addRequestHeader("one", "1")			.addRequestHeader("two", "2")			.addRequestHeader("three", "3");		var _namesValues = new HashMap();		this.transportMock.setRequestHeader = function()		{			_namesValues.put(arguments[0], arguments[1]);		}		request.request();		this.assertTrue(_namesValues.get("one").equals("1"));		this.assertTrue(_namesValues.get("two").equals("2"));		this.assertTrue(_namesValues.get("three").equals("3"));	}	instance testOnStateChange()	{		var request = new HttpRequest(this.transportMock);		var _transPortState = -1;		request.handleStateChange = function(_state)		{			_transPortState = _state;		}		this.transportMock.readyState = 0;		request.onStateChange();		this.assertTrue(-1 == _transPortState);		_transPortState = -1;		this.transportMock.readyState = 1;		request.onStateChange();		this.assertTrue(-1 == _transPortState);		_transPortState = -1;		this.transportMock.readyState = 2;		request.onStateChange();		this.assertTrue(2 == _transPortState);		_transPortState = -1;		this.transportMock.readyState = 3;		request.onStateChange();		this.assertTrue(3 == _transPortState);		_transPortState = -1;		this.transportMock.readyState = 4;		request.onStateChange();		this.assertTrue(4 == _transPortState);		_transPortState = -1;		this.transportMock.readyState = 4;		request.complete = true;		request.onStateChange();		this.assertTrue(-1 == _transPortState);	}	instance testHandleStateChangeSent()	{		var request = new HttpRequest(this.transportMock);		var test = 0;		request.addSentListener(function(_event)		{			test++;		});		request.handleStateChange(2);		this.assertTrue(test == 1);	}	instance testHandleStateChangeReceiving()	{		var request = new HttpRequest(this.transportMock);		var test = 0;		request.addReceivingListener(function(_event)		{			test++;		});		request.handleStateChange(3);		this.assertTrue(test == 1);	}	instance testHandleStateChangeReceivedSuccess()	{		var request = new HttpRequest(this.transportMock);		var test = 0;		request.addReceivedListener(function(_event)		{			test++;		});		request.addSuccessListener(function(_event)		{			test++;		});		request.addCompleteListener(function(_event)		{			test++;		});		this.assertTrue(request.complete == false);		request.handleStateChange(4);		this.assertTrue(test == 3);		this.assertTrue(request.complete == true);	}	instance testHandleStateChangeReceivedFailure()	{		var request = new HttpRequest(this.transportMock);		this.transportMock.status = 199;		var test = 0;		request.addReceivedListener(function(_event)		{			test++;		});		request.addFailureListener(function(_event)		{			test++;		});		request.addCompleteListener(function(_event)		{			test++;		});		this.assertTrue(request.complete == false);		request.handleStateChange(4);		this.assertTrue(test == 3);		this.assertTrue(request.complete == true);	}	instance testParametersToString()	{		var _params = new ArrayList();		_params.add({name:"one", value:"1"});		_params.add({name:"two", value:"2"});		_params.add({name:"three", value:"3"});		_params.add({name:"four", value:"4"});		_params.add({name:"five", value:"5"});		var _paramsString = HttpRequest.__buildParametersForRequest__(_params);		this.assertTrue("one=1&two=2&three=3&four=4&five=5".equals(_paramsString));	}	instance testCreateEvent()	{		var request = new HttpRequest({});		var test = 0;		request.addCreateListener(function(_event)		{			test++;		});		request.oncreate({target:request,type:"create"});		this.assertTrue(test == 1);	}	instance testOpenEvent()	{		var request = new HttpRequest({});		var test = 0;		request.addOpenListener(function(_event)		{			test++;		});		request.onopen({target:request,type:"open"});		this.assertTrue(test == 1);	}	instance testSentEvent()	{		var request = new HttpRequest({});		var test = 0;		request.addSentListener(function(_event)		{			test++;		});		request.onsent({target:request,type:"sent"});		this.assertTrue(test == 1);	}	instance testReceivingEvent()	{		var request = new HttpRequest({});		var test = 0;		request.addReceivingListener(function(_event)		{			test++;		});		request.onreceiving({target:request,type:"receiving"});		this.assertTrue(test == 1);	}	instance testReceivedEvent()	{		var request = new HttpRequest({});		var test = 0;		request.addReceivedListener(function(_event)		{			test++;		});		request.onreceived({target:request,type:"received"});		this.assertTrue(test == 1);	}	instance testCompleteEvent()	{		var request = new HttpRequest({});		var test = 0;		request.addCompleteListener(function(_event)		{			test++;		});		request.oncomplete({target:request,type:"complete"});		this.assertTrue(test == 1);	}	instance testSuccessEvent()	{		var request = new HttpRequest({});		var test = 0;		request.addSuccessListener(function(_event)		{			test++;		});		request.onsuccess({target:request,type:"success"});		this.assertTrue(test == 1);	}	instance testFailureEvent()	{		var request = new HttpRequest({});		var test = 0;		request.addFailureListener(function(_event)		{			test++;		});		request.onfailure({target:request,type:"failure"});		this.assertTrue(test == 1);	}	instance testCancelEvent()	{		var request = new HttpRequest(this.transportMock);		var test = 0;		this.transportMock.abort = function()		{			test++;		}		request.addCancelListener(function(_event)		{			test++;		});		request.cancel();		this.assertTrue(test == 2);	}	instance testExceptionEvent()	{		var request = new HttpRequest({});		var test = null;		request.addExceptionListener(function(_event)		{			test = _event.target.getException();		});		request.handleException("should throw exception")		this.assertNotNull(test);	}	instance testRequest()	{}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -