view IniFileTest.cs @ 5:467e09744775

Closes #7 - Add tests to INI parsing * Add IniFile tests
author IBBoard <dev@ibboard.co.uk>
date Sun, 18 Jan 2009 14:31:09 +0000
parents
children 4f281289bcdd
line wrap: on
line source

// This file (IniFileTest.cs) is a part of IBBoard.Ini.Tests library and is copyright 2009 IBBoard.
//
// The file and the library/program it is in are licensed under the GNU LGPL license. Please see COPYING.LGPL for more information and the full license.

using System;
using NUnit.Framework;

namespace IBBoard.Ini
{
	[TestFixture()]
	public class IniFileTest
	{		
		[Test()]
		public void TestAddingSectionMakesSectionAvailable()
		{
			IniFile file = new IniFile();
			IniSection section = new IniSection("section");
			file.AddSection(section);
			Assert.AreEqual(1, file.Sections.Length);
			Assert.IsTrue(file.HasSection("section"));
			Assert.AreEqual(section, file["section"]);
		}
		
		[Test()]
		[ExpectedException("IBBoard.Ini.DuplicateIniSectionException")]
		public void TestAddingDuplicateSectionThrowsDuplicateSectionException()
		{
			IniFile file = new IniFile();
			file.AddSection(new IniSection("key"));
			file.AddSection(new IniSection("key"));
		}

		[Test()]
		public void TestGettingNonExistantSectionDoesNotReturnNull()
		{
			IniFile file = new IniFile();
			Assert.IsNotNull(file["non-existant-section"]);
		}
	}
}