Mercurial > repos > IBBoard.Tests
view Lang/AbstractTranslationSetTest.cs @ 18:20189f3a3479
Re #34: Get name for translation
* Add tests for translation names
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Tue, 06 Apr 2010 18:19:48 +0000 |
parents | e3e4f7a92f8b |
children | bcb6e83752a6 |
line wrap: on
line source
// This file (TranslationSetTest.cs) is a part of the IBBoard.Tests project and is copyright 2010 IBBoard // // The file and the library/program it is in are licensed and distributed, without warranty, under the GNU Affero GPL license, either version 3 of the License or (at your option) any later version. Please see COPYING for more information and the full license. using System; using NUnit.Framework; namespace IBBoard.Lang { public abstract class AbstractTranslationSetTest { [Test()] public void TestTranslationSetReturnForMissingValue() { AbstractTranslationSet translations = GetTranslationSet(); Assert.IsNull(translations["missing"]); } [Test()] public void TestTranslationSetSettingAndRetrieval() { AbstractTranslationSet translations = GetTranslationSetWithFixedValue(); Assert.AreEqual(GetFixedValueTranslation(), translations[GetFixedValueKey()]); } [Test()] public void TestTranslationSetName() { AbstractTranslationSet translations = GetTranslationSet("en"); Assert.AreEqual("English", translations.LanguageName); translations = GetTranslationSet("it"); Assert.AreEqual("italiano", translations.LanguageName); translations = GetTranslationSet("zz"); Assert.AreEqual("Unknown (zz)", translations.LanguageName); } protected virtual AbstractTranslationSet GetTranslationSet() { return GetTranslationSet("en"); } protected abstract AbstractTranslationSet GetTranslationSet(string language); protected abstract AbstractTranslationSet GetTranslationSetWithFixedValue(); protected abstract string GetFixedValueKey(); protected abstract string GetFixedValueTranslation(); } }