2 // System.Web.HttpCacheVaryByHeadersTest.cs - Unit tests for System.Web.HttpCacheByHeaders
5 // Chris Toshok <toshok@novell.com>
7 // Copyright (C) 2005 Novell, Inc (http://www.novell.com)
9 // Permission is hereby granted, free of charge, to any person obtaining
10 // a copy of this software and associated documentation files (the
11 // "Software"), to deal in the Software without restriction, including
12 // without limitation the rights to use, copy, modify, merge, publish,
13 // distribute, sublicense, and/or sell copies of the Software, and to
14 // permit persons to whom the Software is furnished to do so, subject to
15 // the following conditions:
17 // The above copyright notice and this permission notice shall be
18 // included in all copies or substantial portions of the Software.
20 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
21 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
22 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
23 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
24 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
25 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
26 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
32 using NUnit.Framework;
34 namespace MonoTests.System.Web {
37 public class HttpCacheVaryByHeadersTest {
40 public void Properties ()
42 HttpResponse response = new HttpResponse (Console.Out);
43 HttpCacheVaryByHeaders hdrs = response.Cache.VaryByHeaders;
45 /* first test all the getters/setters for the builtin fields */
46 hdrs.AcceptTypes = true;
47 hdrs.UserAgent = true;
48 hdrs.UserCharSet = true;
49 hdrs.UserLanguage = true;
50 hdrs["custom-field"] = true;
52 Assert.IsTrue (hdrs.AcceptTypes, "hdrs.AcceptTypes == true");
53 Assert.IsTrue (hdrs.UserAgent, "hdrs.UserAgent == true");
54 Assert.IsTrue (hdrs.UserCharSet, "hdrs.UserCharSet == true");
55 Assert.IsTrue (hdrs.UserLanguage, "hdrs.UserLanguage == true");
56 Assert.IsTrue (hdrs["custom-field"], "hdrs['custom-field'] == true");
58 /* test case sensitivity */
59 Assert.IsTrue (hdrs["Custom-Field"], "hdrs['Custom-Field'] == true");
61 hdrs.VaryByUnspecifiedParameters();
63 /* now verify that they're all false */
64 Assert.IsFalse (hdrs.AcceptTypes, "hdrs.AcceptTypes == false");
65 Assert.IsFalse (hdrs.UserAgent, "hdrs.UserAgent == false");
66 Assert.IsFalse (hdrs.UserCharSet, "hdrs.UserCharSet == false");
67 Assert.IsFalse (hdrs.UserLanguage, "hdrs.UserLanguage == false");
68 Assert.IsFalse (hdrs["custom-field"], "hdrs['custom-field'] == false");