Filtration/Filtration.ObjectModel.Tests/TestItemFilterBlock.cs

72 lines
2.3 KiB
C#
Raw Normal View History

2015-06-24 14:57:16 -04:00
using Filtration.ObjectModel.BlockItemTypes;
2015-06-04 13:15:54 -04:00
using NUnit.Framework;
2015-06-24 14:57:16 -04:00
namespace Filtration.ObjectModel.Tests
2015-06-04 13:15:54 -04:00
{
[TestFixture]
public class TestItemFilterBlock
2015-06-04 13:15:54 -04:00
{
[Test]
public void ItemFilterBlock_BlockCount_ReturnsCorrectNumber()
2015-06-04 13:15:54 -04:00
{
// Arrange
var block = new ItemFilterBlock();
2015-06-04 13:15:54 -04:00
block.BlockItems.Add(new ItemLevelBlockItem());
block.BlockItems.Add(new ItemLevelBlockItem());
block.BlockItems.Add(new ItemLevelBlockItem());
block.BlockItems.Add(new ItemLevelBlockItem());
// Act
var count = block.BlockCount(typeof (ItemLevelBlockItem));
// Assert
Assert.AreEqual(4, count);
}
[Test]
public void ItemFilterBlock_AddBlockItemAllowed_LessThanMaximum_ReturnsTrue()
2015-06-04 13:15:54 -04:00
{
// Arrange
var block = new ItemFilterBlock();
2015-06-04 13:15:54 -04:00
block.BlockItems.Add(new ItemLevelBlockItem());
// Act
bool result = block.AddBlockItemAllowed(typeof (ItemLevelBlockItem));
// Assert
Assert.IsTrue(result);
}
[Test]
public void ItemFilterBlock_AddBlockItemAllowed_MoreThanMaximum_ReturnsFalse()
2015-06-04 13:15:54 -04:00
{
// Arrange
var block = new ItemFilterBlock();
2015-06-04 13:15:54 -04:00
block.BlockItems.Add(new SoundBlockItem());
// Act
bool result = block.AddBlockItemAllowed(typeof (SoundBlockItem));
// Assert
Assert.IsFalse(result);
}
[Test]
public void HasParentInBlockGroupHierarchy_ReturnsCorrectResult()
{
// Arrange
var testInputRootBlockGroup = new ItemFilterBlockGroup("Root Block Group", null);
var testInputSubBlockGroup = new ItemFilterBlockGroup("Sub Block Group", testInputRootBlockGroup);
var testInputSubSubBlockGroup = new ItemFilterBlockGroup("Sub Sub Block Group", testInputSubBlockGroup);
var block = new ItemFilterBlock {BlockGroup = testInputSubSubBlockGroup};
// Act
// Assert
Assert.AreEqual(true, block.HasBlockGroupInParentHierarchy(testInputRootBlockGroup, block.BlockGroup));
Assert.AreEqual(true, block.HasBlockGroupInParentHierarchy(testInputSubBlockGroup, block.BlockGroup));
}
2015-06-04 13:15:54 -04:00
}
}