1 // Copyright 2004-2007 Castle Project - http://www.castleproject.org/
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
7 // http://www.apache.org/licenses/LICENSE-2.0
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
15 namespace Castle
.MonoRail
.Framework
.Test
21 /// Represents a mock implementation of <see cref="IServerUtility"/> for unit test purposes.
23 public class MockServerUtility
: IServerUtility
26 /// Returns the physical path for the
27 /// specified virtual path.
29 /// <param name="virtualPath">The virtual path.</param>
30 /// <returns>The mapped path</returns>
31 public virtual string MapPath(string virtualPath
)
33 return Path
.Combine(AppDomain
.CurrentDomain
.BaseDirectory
, virtualPath
);
37 /// HTML encodes a string and returns the encoded string.
39 /// <param name="content">The text string to HTML encode.</param>
40 /// <returns>The HTML encoded text.</returns>
41 public virtual string HtmlEncode(string content
)
47 /// URL encodes a string and returns the encoded string.
49 /// <param name="content">The text to URL encode.</param>
50 /// <returns>The URL encoded text.</returns>
51 public virtual string UrlEncode(string content
)
53 return content
.Replace("&", "&");
57 /// URL decodes a string and returns the decoded string.
59 /// <param name="content">The text to URL decode.</param>
60 /// <returns>The URL decoded text.</returns>
61 public virtual string UrlDecode(string content
)
63 return content
.Replace("&", "&");
67 /// URL encodes the path portion of a URL string and returns the encoded string.
69 /// <param name="content">The text to URL encode.</param>
70 /// <returns>The URL encoded text.</returns>
71 public virtual string UrlPathEncode(string content
)
77 /// Escapes JavaScript with Url encoding and returns the encoded string.
79 /// <param name="content">The text to URL encode and escape JavaScript within.</param>
81 /// The URL encoded and JavaScript escaped text.
84 /// Converts quotes, single quotes and CR/LFs to their representation as an escape character.
86 public virtual string JavaScriptEscape(string content
)