public void BlankRegionLoadsWithNoAreas() { var reader = new BufferedReader(string.Empty); var region = new ImperatorRegion(reader); Assert.Empty(region.Areas); }
public void AreaCanBeLoaded() { var reader = new BufferedReader("areas = { testarea } \n"); var region = new ImperatorRegion(reader); Assert.Collection(region.Areas, item => Assert.Equal("testarea", item.Key) ); }
public void MultipleAreasCanBeLoaded() { var reader = new BufferedReader("areas = { test1 test2 test3 } \n"); var region = new ImperatorRegion(reader); Assert.Collection(region.Areas, item => Assert.Equal("test1", item.Key), item => Assert.Equal("test2", item.Key), item => Assert.Equal("test3", item.Key) ); }
public void LinkedRegionWillFailForProvinceMismatch() { var reader1 = new BufferedReader(string.Empty); var region = new ImperatorRegion(reader1); var reader2 = new BufferedReader("{ provinces = { 3 6 2 }} \n"); var area = new ImperatorArea(reader2); region.LinkArea("test2", area); Assert.False(region.ContainsProvince(7)); }
public void LinkedRegionCanLocateProvince() { var reader1 = new BufferedReader(string.Empty); var region = new ImperatorRegion(reader1); var reader2 = new BufferedReader("{ provinces = { 3 6 2 }} \n"); var area = new ImperatorArea(reader2); region.LinkArea("test2", area); Assert.True(region.ContainsProvince(6)); }
public void RegionCanBeLinkedToArea() { var reader1 = new BufferedReader("areas = { test1 test2 test3 } \n"); var region = new ImperatorRegion(reader1); var reader2 = new BufferedReader("{ provinces = { 3 6 2 }} \n"); var area = new ImperatorArea(reader2); Assert.Null(region.Areas["test2"]); // null before linking region.LinkArea("test2", area); Assert.NotNull(region.Areas["test2"]); }
public void LinkedRegionWillFailForProvinceMismatch() { var reader1 = new BufferedReader("{ areas={area1} }"); var region = new ImperatorRegion("region1", reader1); var reader2 = new BufferedReader("{ provinces = { 3 6 2 }}"); var area = new ImperatorArea("area1", reader2); var areas = new IdObjectCollection <string, ImperatorArea> { area }; region.LinkAreas(areas); Assert.False(region.ContainsProvince(7)); }
public void LinkedRegionCanLocateProvince() { var reader1 = new BufferedReader("{ areas={area1} }"); var region = new ImperatorRegion("region1", reader1); var reader2 = new BufferedReader("{ provinces = { 3 6 2 }}"); var area = new ImperatorArea("area1", reader2); var areas = new IdObjectCollection <string, ImperatorArea> { area }; region.LinkAreas(areas); Assert.True(region.ContainsProvince(6)); }
public void RegionCanBeLinkedToArea() { var reader1 = new BufferedReader("areas = { test1 }"); var region = new ImperatorRegion("region1", reader1); var reader2 = new BufferedReader("{ provinces = { 3 6 2 }}"); var area = new ImperatorArea("test1", reader2); var areas = new IdObjectCollection <string, ImperatorArea> { area }; region.LinkAreas(areas); Assert.NotNull(region.Areas["test1"]); }
public void MultipleAreasCanBeLoaded() { var reader = new BufferedReader("areas = { test1 test2 test3 }"); var region = new ImperatorRegion("region1", reader); var emptyReader = new BufferedReader(string.Empty); var area1 = new ImperatorArea("test1", emptyReader); var area2 = new ImperatorArea("test2", emptyReader); var area3 = new ImperatorArea("test3", emptyReader); var areas = new IdObjectCollection <string, ImperatorArea> { area1, area2, area3 }; region.LinkAreas(areas); Assert.Collection(region.Areas, item => Assert.Equal("test1", item.Id), item => Assert.Equal("test2", item.Id), item => Assert.Equal("test3", item.Id) ); }