{
using System;
using System.Collections.Generic;
- using NUnit.Framework;
using Honememo.Parsers;
+ using Microsoft.VisualStudio.TestTools.UnitTesting;
/// <summary>
- /// MediaWikiLinkのテストクラスです。
+ /// <see cref="MediaWikiLink"/>のテストクラスです。
/// </summary>
- [TestFixture]
+ [TestClass]
public class MediaWikiLinkTest
{
#region コンストラクタテストケース
/// <summary>
/// コンストラクタテストケース。
/// </summary>
- [Test]
+ [TestMethod]
public void TestConstructor()
{
MediaWikiLink element;
/// <summary>
/// Titleプロパティテストケース。
/// </summary>
- [Test]
+ [TestMethod]
public void TestTitle()
{
MediaWikiLink element = new MediaWikiLink();
/// <summary>
/// Sectionプロパティテストケース。
/// </summary>
- [Test]
+ [TestMethod]
public void TestSection()
{
MediaWikiLink element = new MediaWikiLink();
/// <summary>
/// PipeTextsプロパティテストケース。
/// </summary>
- [Test]
+ [TestMethod]
public void TestPipeTexts()
{
MediaWikiLink element = new MediaWikiLink();
}
/// <summary>
- /// Codeプロパティテストケース。
+ /// Interwikiプロパティテストケース。
/// </summary>
- [Test]
- public void TestCode()
+ [TestMethod]
+ public void TestInterwiki()
{
MediaWikiLink element = new MediaWikiLink();
- Assert.IsNull(element.Code);
- element.Code = "test";
- Assert.AreEqual("test", element.Code);
+ Assert.IsNull(element.Interwiki);
+ element.Interwiki = "test";
+ Assert.AreEqual("test", element.Interwiki);
}
/// <summary>
/// IsColonプロパティテストケース。
/// </summary>
- [Test]
+ [TestMethod]
public void TestIsColon()
{
MediaWikiLink element = new MediaWikiLink();
#region 公開メソッドテストケース
/// <summary>
+ /// IsSubpageメソッドテストケース。
+ /// </summary>
+ [TestMethod]
+ public void TestIsSubpage()
+ {
+ MediaWikiLink element = new MediaWikiLink();
+
+ // 通常の記事へのリンク
+ element.Title = "testtitle";
+ Assert.IsFalse(element.IsSubpage());
+
+ // 先頭が / で始まるサブページへのリンク
+ element.Title = "/testtitle";
+ Assert.IsTrue(element.IsSubpage());
+ element.Title = "/testtitle/";
+ Assert.IsTrue(element.IsSubpage());
+
+ // 先頭が ../ で始まるサブページへのリンク
+ element.Title = "../";
+ Assert.IsTrue(element.IsSubpage());
+ element.Title = "../../";
+ Assert.IsTrue(element.IsSubpage());
+ element.Title = "../testtitle";
+ Assert.IsTrue(element.IsSubpage());
+ element.Title = "../../testtitle";
+ Assert.IsTrue(element.IsSubpage());
+ }
+
+ /// <summary>
/// GetLinkStringメソッドテストケース。
/// </summary>
- [Test]
+ [TestMethod]
public void TestGetLinkString()
{
MediaWikiLink element = new MediaWikiLink();
Assert.AreEqual("testtitle", element.GetLinkString());
// タイトルとセクション
- element.Section = String.Empty;
+ element.Section = string.Empty;
Assert.AreEqual("testtitle#", element.GetLinkString());
element.Section = "testsection";
Assert.AreEqual("testtitle#testsection", element.GetLinkString());
Assert.AreEqual("testtitle#testsection", element.GetLinkString());
// タイトルとセクションとパイプ後の文字列とコード
- element.Code = "en";
+ element.Interwiki = "en";
Assert.AreEqual("en:testtitle#testsection", element.GetLinkString());
// タイトルとセクションとパイプ後の文字列とコードとコロン
element.PipeTexts.Add(new TextElement("thumb"));
element.PipeTexts.Add(new TextElement("right"));
element.PipeTexts.Add(new TextElement("[[ケプラー22b]](想像図)"));
- element.Code = null;
+ element.Interwiki = null;
element.IsColon = false;
Assert.AreEqual("ファイル:Kepler22b-artwork.jpg", element.GetLinkString());
}
/// <summary>
/// ToStringメソッドテストケース。
/// </summary>
- [Test]
+ [TestMethod]
public void TestToString()
{
MediaWikiLink element = new MediaWikiLink();
Assert.AreEqual("[[testtitle]]", element.ToString());
// タイトルとセクション
- element.Section = String.Empty;
+ element.Section = string.Empty;
Assert.AreEqual("[[testtitle#]]", element.ToString());
element.Section = "testsection";
Assert.AreEqual("[[testtitle#testsection]]", element.ToString());
Assert.AreEqual("[[testtitle#testsection|testpipe1|testpipe2]]", element.ToString());
// タイトルとセクションとパイプ後の文字列とコード
- element.Code = "en";
+ element.Interwiki = "en";
Assert.AreEqual("[[en:testtitle#testsection|testpipe1|testpipe2]]", element.ToString());
// タイトルとセクションとパイプ後の文字列とコードとコロン
element.PipeTexts.Add(new TextElement("thumb"));
element.PipeTexts.Add(new TextElement("right"));
element.PipeTexts.Add(new TextElement("[[ケプラー22b]](想像図)"));
- element.Code = null;
+ element.Interwiki = null;
element.IsColon = false;
Assert.AreEqual("[[ファイル:Kepler22b-artwork.jpg|thumb|right|[[ケプラー22b]](想像図)]]", element.ToString());
}