Mercurial > repos > IBDev-IBBoard.WarFoundry.API.Tests
diff API/WarFoundryLoaderTest.cs @ 12:a4e7e938d065
Re #195: Setting max equipment without min may not function correctly
* Initial commit of tests for limits (percentage and numeric)
Also:
* Reshuffle and refactoring of existing tests
* Additional mocks required by the new tests
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Mon, 12 Oct 2009 19:42:30 +0000 |
parents | WarFoundryLoaderTest.cs@8d9d49332d44 |
children | 4302e6b2c5c1 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/API/WarFoundryLoaderTest.cs Mon Oct 12 19:42:30 2009 +0000 @@ -0,0 +1,47 @@ +// This file (WarFoundryLoaderTest.cs) is a part of the IBBoard.WarFoundry.API.Tests project and is copyright 2008, 2009 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 System.IO; +using NUnit.Framework; +using IBBoard.WarFoundry.API.Factories.Mock; +using IBBoard.WarFoundry.API.Objects; + +namespace IBBoard.WarFoundry.API.Factories +{ + [TestFixture()] + public class WarFoundryLoaderTest + { + private AbstractNativeWarFoundryFactory sysFactory; + + [Test()] + public void TestLoadWithoutFactoriesCompletesWithoutError() + { + WarFoundryLoader.GetDefault().LoadFiles(); + } + + [Test()] + public void TestLoadingSystemCompletesWithoutError() + { + WarFoundryLoader loader = WarFoundryLoader.GetDefault(); + DirectoryInfo dir = new DirectoryInfo("testdata"); + loader.RegisterFactory(GetSystemFactory()); + loader.AddLoadDirectory(dir); + loader.LoadFiles(); + Assert.Greater(loader.GetGameSystems().Length, 0); + loader.RemoveLoadDirectory(dir); + loader.UnregisterFactory(GetSystemFactory()); + } + + private AbstractNativeWarFoundryFactory GetSystemFactory() + { + if (sysFactory == null) + { + sysFactory = new MockSystemFactory(); + } + + return sysFactory; + } + } +}