public void GetPathInfo_With_Tail_Test() { MockRepository mocks = new MockRepository(); IAspNetRuntime aspNetRuntime = mocks.CreateMock <IAspNetRuntime>(); ITransaction transaction = mocks.CreateMock <ITransaction>(); IResponse response = mocks.CreateMock <IResponse>(); IRequest request = mocks.CreateMock <IRequest>(); using (mocks.Unordered()) { Expect.Call(request.RawUrl).Return("/foo/Page.aspx/ATail").Repeat.Any(); Expect.Call(transaction.Request).Return(request).Repeat.Any(); Expect.Call(transaction.Response).Return(response).Repeat.Any(); Expect.Call(delegate { aspNetRuntime.ProcessRequest(null); }).IgnoreArguments(); } mocks.ReplayAll(); AspNetWorker aspNetWorker = new AspNetWorker(aspNetRuntime, "/foo", @"c:\temp"); aspNetWorker.ProcessTransaction(transaction); Assert.AreEqual("/ATail", aspNetWorker.GetPathInfo()); }
public void FlushResponse_Is_Final_Test() { MockRepository mocks = new MockRepository(); IAspNetRuntime aspNetRuntime = mocks.CreateMock <IAspNetRuntime>(); ITransaction transaction = mocks.CreateMock <ITransaction>(); IResponse response = mocks.CreateMock <IResponse>(); IRequest request = mocks.CreateMock <IRequest>(); using (mocks.Unordered()) { Expect.Call(request.RawUrl).Return("/test/").Repeat.Any(); Expect.Call(transaction.Request).Return(request).Repeat.Any(); Expect.Call(transaction.Response).Return(response).Repeat.Any(); Expect.Call(delegate { aspNetRuntime.ProcessRequest(null); }).IgnoreArguments(); Expect.Call(delegate { response.Flush(); }).IgnoreArguments(); } mocks.ReplayAll(); AspNetWorker aspNetWorker = new AspNetWorker(aspNetRuntime, "/", @"c:\temp"); aspNetWorker.ProcessTransaction(transaction); aspNetWorker.FlushResponse(true); }
public void GetHttpVerbName_When_Is_Delete_Test() { MockRepository mocks = new MockRepository(); IAspNetRuntime aspNetRuntime = mocks.CreateMock <IAspNetRuntime>(); ITransaction transaction = mocks.CreateMock <ITransaction>(); IResponse response = mocks.CreateMock <IResponse>(); IRequest request = mocks.CreateMock <IRequest>(); using (mocks.Unordered()) { Expect.Call(request.RawUrl).Return("/foo/").Repeat.Any(); Expect.Call(request.HttpMethod).Return("DELETE").Repeat.Any(); Expect.Call(transaction.Request).Return(request).Repeat.Any(); Expect.Call(transaction.Response).Return(response).Repeat.Any(); Expect.Call(delegate { aspNetRuntime.ProcessRequest(null); }).IgnoreArguments(); } mocks.ReplayAll(); AspNetWorker aspNetWorker = new AspNetWorker(aspNetRuntime, "/foo", @"c:\temp"); aspNetWorker.ProcessTransaction(transaction); Assert.AreEqual("DELETE", aspNetWorker.GetHttpVerbName()); }
public void GetProtocol_When_Request_Is_Not_Secure_And_Response_Is_Secure_Test() { MockRepository mocks = new MockRepository(); IAspNetRuntime aspNetRuntime = mocks.CreateMock <IAspNetRuntime>(); ITransaction transaction = mocks.CreateMock <ITransaction>(); IResponse response = mocks.CreateMock <IResponse>(); IRequest request = mocks.CreateMock <IRequest>(); using (mocks.Unordered()) { Expect.Call(response.IsSecure).Return(false).Repeat.Any(); Expect.Call(request.IsSecure).Return(true).Repeat.Any(); Expect.Call(request.RawUrl).Return("/test/").Repeat.Any(); Expect.Call(transaction.Request).Return(request).Repeat.Any(); Expect.Call(transaction.Response).Return(response).Repeat.Any(); Expect.Call(delegate { aspNetRuntime.ProcessRequest(null); }).IgnoreArguments(); } mocks.ReplayAll(); AspNetWorker aspNetWorker = new AspNetWorker(aspNetRuntime, "/", @"c:\temp"); aspNetWorker.ProcessTransaction(transaction); Assert.AreEqual("HTTP", aspNetWorker.GetProtocol()); }
public void GetLocalPort_Test() { MockRepository mocks = new MockRepository(); IAspNetRuntime aspNetRuntime = mocks.CreateMock <IAspNetRuntime>(); ITransaction transaction = mocks.CreateMock <ITransaction>(); IResponse response = mocks.CreateMock <IResponse>(); IRequest request = mocks.CreateMock <IRequest>(); IPEndPoint ipEndPoint = new IPEndPoint(new IPAddress(new byte[] { 47, 94, 23, 12 }), 1238); using (mocks.Unordered()) { Expect.Call(request.RawUrl).Return("/foo/").Repeat.Any(); Expect.Call(transaction.Request).Return(request).Repeat.Any(); Expect.Call(transaction.Response).Return(response).Repeat.Any(); Expect.Call(request.LocalEndPoint).Return(ipEndPoint).Repeat.Any(); Expect.Call(delegate { aspNetRuntime.ProcessRequest(null); }).IgnoreArguments(); } mocks.ReplayAll(); AspNetWorker aspNetWorker = new AspNetWorker(aspNetRuntime, "/foo", @"c:\temp"); aspNetWorker.ProcessTransaction(transaction); Assert.AreEqual(ipEndPoint.Port, aspNetWorker.GetLocalPort()); }
public void GetBytesRead_When_No_Bytes_Read_Test() { MockRepository mocks = new MockRepository(); IAspNetRuntime aspNetRuntime = mocks.CreateMock <IAspNetRuntime>(); ITransaction transaction = mocks.CreateMock <ITransaction>(); IResponse response = mocks.CreateMock <IResponse>(); IRequest request = mocks.CreateMock <IRequest>(); byte[] postData = new byte[] { }; using (mocks.Unordered()) { Expect.Call(request.PostData).Return(postData).Repeat.Any(); Expect.Call(request.RawUrl).Return("/test/").Repeat.Any(); Expect.Call(transaction.Request).Return(request).Repeat.Any(); Expect.Call(transaction.Response).Return(response).Repeat.Any(); Expect.Call(delegate { aspNetRuntime.ProcessRequest(null); }).IgnoreArguments(); } mocks.ReplayAll(); AspNetWorker aspNetWorker = new AspNetWorker(aspNetRuntime, "/", @"c:\temp"); aspNetWorker.ProcessTransaction(transaction); Assert.AreEqual(postData.Length, aspNetWorker.GetBytesRead()); }
public void GetKnownRequestHeader_Test() { MockRepository mocks = new MockRepository(); IAspNetRuntime aspNetRuntime = mocks.CreateMock <IAspNetRuntime>(); ITransaction transaction = mocks.CreateMock <ITransaction>(); IResponse response = mocks.CreateMock <IResponse>(); IRequest request = mocks.CreateMock <IRequest>(); string expectedValue = (new Guid()).ToString(); int index = (new Random()).Next(); using (mocks.Unordered()) { Expect.Call(request.RawUrl).Return("/foo/").Repeat.Any(); Expect.Call(transaction.Request).Return(request).Repeat.Any(); Expect.Call(transaction.Response).Return(response).Repeat.Any(); Expect.Call(request.GetKnownRequestHeader(index)).Return(expectedValue).Repeat.Any(); Expect.Call(delegate { aspNetRuntime.ProcessRequest(null); }).IgnoreArguments(); } mocks.ReplayAll(); AspNetWorker aspNetWorker = new AspNetWorker(aspNetRuntime, "/foo", @"c:\temp"); aspNetWorker.ProcessTransaction(transaction); Assert.AreEqual(expectedValue, aspNetWorker.GetKnownRequestHeader(index)); }