1 // ================================================================================================
3 // AppConfigWebProxyのテストクラスソース。</summary>
5 // <copyright file="AppConfigWebProxyTest.cs" company="honeplusのメモ帳">
6 // Copyright (C) 2012 Honeplus. All rights reserved.</copyright>
9 // ================================================================================================
11 namespace Honememo.Wptscs.Utilities
15 using Honememo.Wptscs.Properties;
16 using Honememo.Wptscs.Utilities;
17 using NUnit.Framework;
20 /// <see cref="AppConfigWebProxy"/>のテストクラスです。
23 class AppConfigWebProxyTest
28 /// テストデータが格納されているフォルダパス。
30 private static readonly string testFile = "Data\\config.xml";
34 #region インタフェース実装プロパティテストケース
37 /// <see cref="AppConfigWebProxy.UserAgent"/>プロパティテストケース。
39 /// <remarks>アプリ設定部分はアクセス権の関係上試験できず。</remarks>
41 public void TestUserAgent()
43 IWebProxy proxy = new AppConfigWebProxy();
44 ////Settings.Default.UserAgent = String.Empty;
47 Version ver = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version;
49 //// String.Format(Settings.Default.DefaultUserAgent, ver.Major, ver.Minor),
50 //// proxy.UserAgent);
52 String.Format("Translation Support for Wikipedia/{0}.{1:D2}", ver.Major, ver.Minor),
56 proxy.UserAgent = "test property useragent";
57 Assert.AreEqual("test property useragent", proxy.UserAgent);
60 proxy.UserAgent = String.Empty;
61 Assert.IsEmpty(proxy.UserAgent);
64 proxy.UserAgent = null;
65 Assert.IsNotEmpty(proxy.UserAgent);
67 // アプリ設定時はアプリに格納された設定値が最優先
68 ////Settings.Default.UserAgent = "test setting useragent";
69 ////Assert.AreEqual("test setting useragent", proxy.UserAgent);
73 /// <see cref="AppConfigWebProxy.Referer"/>プロパティテストケース。
75 /// <remarks>アプリ設定部分はアクセス権の関係上試験できず。</remarks>
77 public void TestReferer()
79 IWebProxy proxy = new AppConfigWebProxy();
80 ////Settings.Default.Referer = String.Empty;
83 Assert.IsEmpty(proxy.Referer);
86 proxy.Referer = "test property referer";
87 Assert.AreEqual("test property referer", proxy.Referer);
89 // アプリ設定時はアプリに格納された設定値
90 ////Settings.Default.Referer = "test setting referer";
91 ////Assert.AreEqual("test setting referer", proxy.Referer);
96 #region インタフェース実装メソッドテストケース
99 /// <see cref="AppConfigWebProxy.GetStream"/>メソッドテストケース。
101 /// <remarks>内容的に難しいため、fileプロトコルのみ確認。</remarks>
103 public void TestGetStream()
105 IWebProxy proxy = new AppConfigWebProxy();
107 // テストファイルを読んで例外が発生しなければOKとする
108 UriBuilder b = new UriBuilder("file", String.Empty);
109 b.Path = Path.GetFullPath(testFile);
110 using (proxy.GetStream(b.Uri))