public void OnNodeChecked_WithContextAndStateMixed_SetMapDataVisibilityAndNotifyObservers() { // Setup var observer1 = mocks.StrictMock <IObserver>(); var observer2 = mocks.StrictMock <IObserver>(); observer2.Expect(o => o.UpdateObserver()); mocks.ReplayAll(); var featureBasedMapData1 = new TestFeatureBasedMapData(); var featureBasedMapData2 = new TestFeatureBasedMapData { IsVisible = false }; var mapDataCollection = new MapDataCollection("test"); mapDataCollection.Add(featureBasedMapData1); mapDataCollection.Add(featureBasedMapData2); MapDataCollectionContext context = GetContext(mapDataCollection); featureBasedMapData1.Attach(observer1); featureBasedMapData2.Attach(observer2); // Call info.OnNodeChecked(context, null); // Assert Assert.IsTrue(context.WrappedData.IsVisible); Assert.IsTrue(featureBasedMapData1.IsVisible); Assert.IsTrue(featureBasedMapData2.IsVisible); mocks.VerifyAll(); }
public void OnNodeChecked_WithContext_SetMapDataVisibilityAndNotifyObservers(bool initialVisibleState) { // Setup var collectionObserver = mocks.StrictMock <IObserver>(); collectionObserver.Expect(o => o.UpdateObserver()); mocks.ReplayAll(); var featureBasedMapData = new TestFeatureBasedMapData(); var mapDataCollection = new MapDataCollection("test"); mapDataCollection.Add(featureBasedMapData); MapDataCollectionContext context = GetContext(mapDataCollection); context.WrappedData.IsVisible = initialVisibleState; context.WrappedData.Attach(collectionObserver); // Call info.OnNodeChecked(context, null); // Assert Assert.AreEqual(!initialVisibleState, context.WrappedData.IsVisible); Assert.AreEqual(!initialVisibleState, featureBasedMapData.IsVisible); mocks.VerifyAll(); }
public void ContextMenuStrip_Always_CallsBuilder() { // Setup var mapData = new MapDataCollection("test data"); MapDataCollectionContext context = GetContext(mapData); var builder = mocks.StrictMock <IContextMenuBuilder>(); using (mocks.Ordered()) { builder.Expect(mb => mb.AddImportItem(null, null, null)).IgnoreArguments().Return(builder); builder.Expect(mb => mb.AddSeparator()).Return(builder); builder.Expect(mb => mb.AddCustomItem(Arg <StrictContextMenuItem> .Is.NotNull)).Return(builder); builder.Expect(mb => mb.AddSeparator()).Return(builder); builder.Expect(mb => mb.AddPropertiesItem()).Return(builder); builder.Expect(mb => mb.Build()).Return(null); } contextMenuBuilderProvider.Expect(p => p.Get(context, null)).Return(builder); mocks.ReplayAll(); // Call info.ContextMenuStrip(context, null, null); // Assert // Assert expectancies are called in TearDown() }
public void ChildNodeObjects_Always_ReturnsChildrenWithContextAndDataReversed() { // Setup var mapPointData = new MapPointData("points"); var mapLineData = new MapLineData("lines"); var nestedCollection = new MapDataCollection("nested"); var mapPolygonData = new MapPolygonData("polygons"); var mapDataCollection = new MapDataCollection("test data"); mapDataCollection.Add(mapPointData); mapDataCollection.Add(mapLineData); mapDataCollection.Add(nestedCollection); mapDataCollection.Add(mapPolygonData); MapDataCollectionContext parentCollectionContext = GetContext(mapDataCollection); // Call object[] objects = info.ChildNodeObjects(GetContext(mapDataCollection)); // Assert CollectionAssert.AreEqual(new MapDataContext[] { new MapPolygonDataContext(mapPolygonData, parentCollectionContext), GetContext(nestedCollection, parentCollectionContext), new MapLineDataContext(mapLineData, parentCollectionContext), new MapPointDataContext(mapPointData, parentCollectionContext) }, objects); }
public void OnDrop_MapDataCollectionContextMovedToPositionInsideRange_SetsNewReverseOrder(int position) { // Setup var observer = mocks.StrictMock <IObserver>(); observer.Expect(o => o.UpdateObserver()); mocks.ReplayAll(); var mapDataCollection1 = new MapDataCollection("Collection 1"); var mapDataCollection2 = new MapDataCollection("Collection 2"); var mapDataCollection3 = new MapDataCollection("Collection 3"); var parentMapDataCollection = new MapDataCollection("test data"); parentMapDataCollection.Add(mapDataCollection1); parentMapDataCollection.Add(mapDataCollection2); parentMapDataCollection.Add(mapDataCollection3); MapDataCollectionContext parentContext = GetContext(parentMapDataCollection); MapDataCollectionContext context = GetContext(mapDataCollection1); parentMapDataCollection.Attach(observer); using (var treeViewControl = new TreeViewControl()) { // Call info.OnDrop(context, parentContext, parentContext, position, treeViewControl); // Assert int reversedIndex = 2 - position; Assert.AreSame(context.WrappedData, parentMapDataCollection.Collection.ElementAt(reversedIndex)); } }
public void OnNodeChecked_WithContext_NotifyObserversOfParentMapDataCollections() { // Setup var collectionObserver = mocks.StrictMock <IObserver>(); collectionObserver.Expect(o => o.UpdateObserver()); var parentCollectionObserver = mocks.StrictMock <IObserver>(); parentCollectionObserver.Expect(o => o.UpdateObserver()); mocks.ReplayAll(); var featureBasedMapData = new TestFeatureBasedMapData(); var nestedMapDataCollection = new MapDataCollection("nested"); nestedMapDataCollection.Add(featureBasedMapData); var mapDataCollection = new MapDataCollection("test"); mapDataCollection.Add(nestedMapDataCollection); MapDataCollectionContext rootCollectionContext = GetContext(mapDataCollection); MapDataCollectionContext nestedCollectionContext = GetContext(nestedMapDataCollection, rootCollectionContext); FeatureBasedMapDataContext featureBasedMapDataContext = GetContext(featureBasedMapData, nestedCollectionContext); nestedMapDataCollection.Attach(collectionObserver); mapDataCollection.Attach(parentCollectionObserver); // Call info.OnNodeChecked(featureBasedMapDataContext, null); // Assert mocks.VerifyAll(); }
public void OnDrop_MapDataCollectionContextMovedToPositionOutsideRange_ThrowsException(int position) { // Setup var observer = mocks.StrictMock <IObserver>(); mocks.ReplayAll(); var mapDataCollection1 = new MapDataCollection("Collection 1"); var mapDataCollection2 = new MapDataCollection("Collection 2"); var mapDataCollection3 = new MapDataCollection("Collection 3"); var parentMapDataCollection = new MapDataCollection("test data"); parentMapDataCollection.Add(mapDataCollection1); parentMapDataCollection.Add(mapDataCollection2); parentMapDataCollection.Add(mapDataCollection3); parentMapDataCollection.Attach(observer); MapDataCollectionContext parentContext = GetContext(parentMapDataCollection); MapDataCollectionContext context = GetContext(mapDataCollection1); parentMapDataCollection.Attach(observer); using (var treeViewControl = new TreeViewControl()) { // Call TestDelegate test = () => info.OnDrop(context, parentContext, parentContext, position, treeViewControl); // Assert Assert.Throws <ArgumentOutOfRangeException>(test); } }
public void CreateFileImporter_Always_ReturnFileImporter() { // Setup var importTarget = new MapDataCollectionContext(new MapDataCollection("test"), null); // Call IFileImporter importer = importInfo.CreateFileImporter(importTarget, ""); // Assert Assert.IsInstanceOf <FeatureBasedMapDataImporter>(importer); }
public void CanDrag_ParentContextNotNull_ReturnsTrue() { // Setup MapDataCollectionContext context = GetContext(new MapDataCollection("test")); // Call bool canDrag = info.CanDrag(context, null); // Assert Assert.IsTrue(canDrag); }
public void GetParentsFromContext_ContextParentMapDataNull_ReturnsEmptyCollection() { // Setup var context = new MapDataCollectionContext(new MapDataCollection("test"), null); // Call IEnumerable <MapDataCollection> parents = MapDataContextHelper.GetParentsFromContext(context); // Assert CollectionAssert.IsEmpty(parents); }
public void CanInsert_TargetParentNotSameAsSourceParent_ReturnsFalse() { // Setup MapDataCollectionContext context = GetContext(new MapDataCollection("test")); // Call bool canInsert = info.CanInsert(context, GetContext(new MapDataCollection("parent"))); // Assert Assert.IsFalse(canInsert); }
public void CanDrag_ParentContextNull_ReturnsFalse() { // Setup var context = new MapDataCollectionContext(new MapDataCollection("test"), null); // Call bool canDrag = info.CanDrag(context, null); // Assert Assert.IsFalse(canDrag); }
public void CanInsert_TargetParentIsSameAsSourceParent_ReturnsTrue() { // Setup var mapDataCollection = new MapDataCollection("test 1"); MapDataCollectionContext context1 = GetContext(mapDataCollection); MapDataCollectionContext context2 = GetContext(new MapDataCollection("test 2"), context1); // Call bool canInsert = info.CanInsert(context2, context1); // Assert Assert.IsTrue(canInsert); }
public void CreateInstance_WithValidArguments_NewPropertiesWithMapDataCollectionAsData() { // Setup var mapDataCollection = new MapDataCollection("Test"); var context = new MapDataCollectionContext(mapDataCollection, null); // Call IObjectProperties objectProperties = info.CreateInstance(context); // Assert Assert.IsInstanceOf <MapDataCollectionProperties>(objectProperties); Assert.AreSame(mapDataCollection, objectProperties.Data); }
public void Constructor_ExpectedValues() { // Setup var data = new MapPolygonData("test"); var parent = new MapDataCollectionContext(new MapDataCollection("parent"), null); // Call var context = new MapPolygonDataContext(data, parent); // Assert Assert.IsInstanceOf <FeatureBasedMapDataContext>(context); Assert.AreSame(data, context.WrappedData); Assert.AreSame(parent, context.ParentMapData); }
public void Constructor_ExpectedValues() { // Setup var collection = new MapDataCollection("test"); var parentCollectionContext = new MapDataCollectionContext(new MapDataCollection("test"), null); // Call var context = new MapDataCollectionContext(collection, parentCollectionContext); // Assert Assert.IsInstanceOf <MapDataContext>(context); Assert.AreSame(collection, context.WrappedData); Assert.AreSame(parentCollectionContext, context.ParentMapData); }
public void CheckedState_WithContextAndMapDataCollectionVisibilityVisible_ReturnsStateChecked() { // Setup var featureBasedMapData = new TestFeatureBasedMapData(); var mapDataCollection = new MapDataCollection("test"); mapDataCollection.Add(featureBasedMapData); MapDataCollectionContext context = GetContext(mapDataCollection); // Call TreeNodeCheckedState checkedState = info.CheckedState(context); // Assert Assert.AreEqual(TreeNodeCheckedState.Checked, checkedState); }
public void GetParentsFromContext_ContextWithParents_ReturnsCollectionWithAllParents() { // Setup var rootContext = new MapDataCollectionContext(new MapDataCollection("root"), null); var nestedContext1 = new MapDataCollectionContext(new MapDataCollection("nested1"), rootContext); var nestedContext2 = new MapDataCollectionContext(new MapDataCollection("test"), nestedContext1); // Call IEnumerable <MapDataCollection> parents = MapDataContextHelper.GetParentsFromContext(nestedContext2); // Assert CollectionAssert.AreEqual(new[] { nestedContext1.WrappedData, rootContext.WrappedData }, parents); }
public void Constructor_ExpectedValues() { // Setup FeatureBasedMapData data = new TestFeatureBasedMapData(); var collection = new MapDataCollection("test"); collection.Add(data); var collectionContext = new MapDataCollectionContext(collection, null); // Call var context = new FeatureBasedMapDataContext(data, collectionContext); // Assert Assert.IsInstanceOf <MapDataContext>(context); Assert.AreSame(data, context.WrappedData); Assert.AreSame(collectionContext, context.ParentMapData); }
public void ContextMenuStrip_Always_ImportItemEnabled() { // Setup var mapDataCollection = new MapDataCollection("test data"); MapDataCollectionContext context = GetContext(mapDataCollection); var applicationFeatureCommands = mocks.Stub <IApplicationFeatureCommands>(); var importCommandHandler = mocks.Stub <IImportCommandHandler>(); importCommandHandler.Stub(ich => ich.GetSupportedImportInfos(null)).IgnoreArguments().Return(new[] { new ImportInfo() }); var exportCommandHandler = mocks.Stub <IExportCommandHandler>(); var updateCommandHandler = mocks.Stub <IUpdateCommandHandler>(); var viewCommands = mocks.Stub <IViewCommands>(); using (var treeViewControl = new TreeViewControl()) { var builder = new ContextMenuBuilder(applicationFeatureCommands, importCommandHandler, exportCommandHandler, updateCommandHandler, viewCommands, mapDataCollection, treeViewControl); contextMenuBuilderProvider.Expect(cmbp => cmbp.Get(context, treeViewControl)).Return(builder); mocks.ReplayAll(); // Call using (ContextMenuStrip contextMenu = info.ContextMenuStrip(context, null, treeViewControl)) { // Assert TestHelper.AssertContextMenuStripContainsItem(contextMenu, contextMenuAddMapLayerIndex, "&Voeg kaartlaag toe...", "Importeer een nieuwe kaartlaag en voeg deze toe.", Resources.MapPlusIcon); } } }
public void OnNodeChecked_WithContext_NotifyObserversOfChangedChildrenOnly(bool initialVisibility, int expectedNotifications) { // Setup var observer = mocks.StrictMock <IObserver>(); observer.Expect(o => o.UpdateObserver()).Repeat.Times(expectedNotifications); mocks.ReplayAll(); var featureBasedMapData1 = new TestFeatureBasedMapData(); var featureBasedMapData2 = new TestFeatureBasedMapData { IsVisible = initialVisibility }; var featureBasedMapData3 = new TestFeatureBasedMapData { IsVisible = initialVisibility }; var nestedMapDataCollection = new MapDataCollection("nested"); nestedMapDataCollection.Add(featureBasedMapData1); nestedMapDataCollection.Add(featureBasedMapData3); var mapDataCollection = new MapDataCollection("test"); mapDataCollection.Add(nestedMapDataCollection); mapDataCollection.Add(featureBasedMapData2); MapDataCollectionContext context = GetContext(mapDataCollection); nestedMapDataCollection.Attach(observer); featureBasedMapData1.Attach(observer); featureBasedMapData2.Attach(observer); featureBasedMapData3.Attach(observer); // Call info.OnNodeChecked(context, null); // Assert mocks.VerifyAll(); }
private static FeatureBasedMapDataContext GetContext(FeatureBasedMapData mapData, MapDataCollectionContext parentMapDataCollectionContext = null) { return(new FeatureBasedMapDataContext(mapData, parentMapDataCollectionContext ?? new MapDataCollectionContext(new MapDataCollection("test"), null))); }
private static MapDataCollectionContext GetContext(MapDataCollection mapDataCollection, MapDataCollectionContext parentMapDataCollectionContext = null) { return(new MapDataCollectionContext(mapDataCollection, parentMapDataCollectionContext ?? new MapDataCollectionContext(new MapDataCollection("test"), null))); }