Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests/TestSupport
In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv23167/test/Spring/Spring.Web.Tests/TestSupport
Modified Files:
TestWebContext.cs VirtualEnvironmentMock.cs
Log Message:
fixed SPRNET-872
Index: TestWebContext.cs
===================================================================
RCS file: /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests/TestSupport/TestWebContext.cs,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** TestWebContext.cs 27 Jan 2008 23:29:55 -0000 1.4
--- TestWebContext.cs 14 Mar 2008 12:02:46 -0000 1.5
***************
*** 27,81 ****
using System.Web;
using System.Web.Hosting;
- using System.Web.UI;
- using NUnit.Framework;
- using Spring.Context;
- using Spring.Context.Support;
- using Spring.Web.Support;
#endregion
! public class TestWebContext : IDisposable
{
! private TextWriter _out;
! private HttpWorkerRequest _wr;
!
! public TestWebContext(string virtualPath, string page)
{
! _out = new StringWriter();
! HttpWorkerRequest wr;
! object appPath = Thread.GetDomain().GetData(".appPath");
! if (appPath != null)
! {
! wr = new SimpleWorkerRequest(page, string.Empty, _out);
! }
! else
{
! string physDir = AppDomain.CurrentDomain.BaseDirectory + "\\";
! wr = new SimpleWorkerRequest(virtualPath, physDir, page, string.Empty, _out);
! }
! HttpContext ctx = new HttpContext(wr);
! HttpContext.Current = ctx;
! HttpBrowserCapabilities browser = new HttpBrowserCapabilities();
#if NET_2_0
! browser.Capabilities = CollectionsUtil.CreateCaseInsensitiveHashtable();
! browser.Capabilities[string.Empty] = "Test User Agent"; // string.Empty is the key for "user agent"
#endif
! ctx.Request.Browser = browser;
! _wr = wr;
! }
! public HttpWorkerRequest HttpWorkerRequest
! {
! get { return _wr; }
! }
! public TextWriter Out
! {
! get { return _out; }
! }
! public void Dispose()
! {
! HttpContext.Current = null;
}
! }
--- 27,79 ----
using System.Web;
using System.Web.Hosting;
#endregion
! namespace Spring.TestSupport
{
! public class TestWebContext : IDisposable
{
! private readonly TextWriter _out;
! private readonly HttpWorkerRequest _wr;
!
! public TestWebContext(string virtualPath, string page)
{
! _out = new StringWriter();
! HttpWorkerRequest wr;
! object appPath = Thread.GetDomain().GetData(".appPath");
! if (appPath != null)
! {
! wr = new SimpleWorkerRequest(page, string.Empty, _out);
! }
! else
! {
! string physDir = AppDomain.CurrentDomain.BaseDirectory + "\\";
! wr = new SimpleWorkerRequest(virtualPath, physDir, page, string.Empty, _out);
! }
! HttpContext ctx = new HttpContext(wr);
! HttpContext.Current = ctx;
! HttpBrowserCapabilities browser = new HttpBrowserCapabilities();
#if NET_2_0
! browser.Capabilities = CollectionsUtil.CreateCaseInsensitiveHashtable();
! browser.Capabilities[string.Empty] = "Test User Agent"; // string.Empty is the key for "user agent"
#endif
! ctx.Request.Browser = browser;
! _wr = wr;
! }
! public HttpWorkerRequest HttpWorkerRequest
! {
! get { return _wr; }
! }
! public TextWriter Out
! {
! get { return _out; }
! }
! public void Dispose()
! {
! HttpContext.Current = null;
! }
}
! }
\ No newline at end of file
Index: VirtualEnvironmentMock.cs
===================================================================
RCS file: /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests/TestSupport/VirtualEnvironmentMock.cs,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** VirtualEnvironmentMock.cs 15 Dec 2007 21:22:11 -0000 1.4
--- VirtualEnvironmentMock.cs 14 Mar 2008 12:02:46 -0000 1.5
***************
*** 3,7 ****
using Spring.Util;
! namespace Spring.Web.TestSupport
{
/// <summary>
--- 3,7 ----
using Spring.Util;
! namespace Spring.TestSupport
{
/// <summary>
***************
*** 12,26 ****
internal class VirtualEnvironmentMock : IVirtualEnvironment, IDisposable
{
! private IVirtualEnvironment _prevEnvironment;
!
! private string _currentVirtualPath;
private string _currentExecutionFilePath;
! private string _applicationVirtualPath;
! public VirtualEnvironmentMock(string currentVirtualPath, string applicationVirtualPath, bool autoInitialize)
{
! _currentVirtualPath = currentVirtualPath;
! _applicationVirtualPath = applicationVirtualPath;
!
_prevEnvironment = VirtualEnvironment.SetInstance(this);
if (autoInitialize)
--- 12,29 ----
internal class VirtualEnvironmentMock : IVirtualEnvironment, IDisposable
{
! private readonly IVirtualEnvironment _prevEnvironment;
!
! private readonly string _currentVirtualFilePath;
! private readonly string _pathInfo;
private string _currentExecutionFilePath;
! private readonly string _applicationVirtualPath;
! public VirtualEnvironmentMock(string currentVirtualFilePath, string pathInfo, string applicationVirtualPath, bool autoInitialize)
{
! _currentVirtualFilePath = currentVirtualFilePath;
! _pathInfo = (pathInfo == null || pathInfo.Length == 0) ? "" : "/" + pathInfo.TrimStart('/'); // prevent null string and ensure '/' prefixed
! _applicationVirtualPath = "/" + ("" + applicationVirtualPath).Trim('/');
! if (!_applicationVirtualPath.EndsWith("/")) _applicationVirtualPath = _applicationVirtualPath + "/";
!
_prevEnvironment = VirtualEnvironment.SetInstance(this);
if (autoInitialize)
***************
*** 37,41 ****
public string CurrentVirtualPath
{
! get { return _currentVirtualPath; }
}
--- 40,52 ----
public string CurrentVirtualPath
{
! get
! {
! return _currentVirtualFilePath + _pathInfo;
! }
! }
!
! public string CurrentVirtualFilePath
! {
! get { return _currentVirtualFilePath; }
}
***************
*** 48,52 ****
public string MapPath(string virtualPath)
{
! string basePath = Path.GetDirectoryName( new Uri( GetType().Assembly.CodeBase ).LocalPath );
string resultPath = WebUtils.CreateAbsolutePath(this.ApplicationVirtualPath, virtualPath);
resultPath = basePath.TrimEnd('\\') + "\\" + resultPath.Replace('/', '\\').TrimStart('\\');
--- 59,63 ----
public string MapPath(string virtualPath)
{
! string basePath = Path.GetDirectoryName(new Uri(GetType().Assembly.CodeBase).LocalPath);
string resultPath = WebUtils.CreateAbsolutePath(this.ApplicationVirtualPath, virtualPath);
resultPath = basePath.TrimEnd('\\') + "\\" + resultPath.Replace('/', '\\').TrimStart('\\');
***************
*** 56,60 ****
public void Dispose()
{
! VirtualEnvironment.SetInstance(_prevEnvironment);
}
}
--- 67,71 ----
public void Dispose()
{
! VirtualEnvironment.SetInstance(_prevEnvironment);
}
}
|