public void ReturnsDataPresentForDataHasBeenSet() { var connected = new object(); var key1 = new ConnectedDragDropKey <Type>(); var key2 = new ConnectedDragDropKey <Assembly>(); var dragDrop = new ConnectedDragDrop(this._uriDisconnectTable); dragDrop.Drag(connected); dragDrop.SetData(key1, typeof(ConnectedDragDropTests)); dragDrop.SetData(key2, typeof(ConnectedDragDropTests).Assembly); Assert.IsTrue(dragDrop.GetDataPresent(key1)); Assert.IsTrue(dragDrop.GetDataPresent(key2)); }
public void SetsMultipleFormatData() { var connected = new object(); var key1 = new ConnectedDragDropKey <Type>(); var key2 = new ConnectedDragDropKey <Assembly>(); var dragDrop = new ConnectedDragDrop(this._uriDisconnectTable); dragDrop.Drag(connected); dragDrop.SetData(key1, typeof(ConnectedDragDropTests)); dragDrop.SetData(key2, typeof(ConnectedDragDropTests).Assembly); Assert.AreSame(typeof(ConnectedDragDropTests), dragDrop.GetData(key1)); Assert.AreSame(typeof(ConnectedDragDropTests).Assembly, dragDrop.GetData(key2)); }
public void ThrowsExceptionWhenSettingDataWhileNotDragging() { var key = new ConnectedDragDropKey <Type>(); var data = typeof(ConnectedDragDropTests); var dragDrop = new ConnectedDragDrop(this._uriDisconnectTable); ExceptionAssert.Throws <InvalidOperationException>(() => dragDrop.SetData(key, data)); }
public void DoNotDisposesDataOnDrop() { var connected = new object(); var dragDrop = new ConnectedDragDrop(this._uriDisconnectTable); dragDrop.Drag(connected); var key1 = new ConnectedDragDropKey <IDisposable>(); var key2 = new ConnectedDragDropKey <IContainer>(); var disposable1 = Substitute.For <IDisposable>(); var disposable2 = Substitute.For <IContainer>(); dragDrop.SetData(key1, disposable1); dragDrop.SetData(key2, disposable2); var targetConnector = Substitute.For <IUriPlacementConnector>(); dragDrop.Drop(targetConnector); disposable1.DidNotReceive().Dispose(); disposable2.DidNotReceive().Dispose(); }
public void DisposesDataOnDisconnect() { var connected = new object(); var dragDrop = new ConnectedDragDrop(this._uriDisconnectTable); dragDrop.Drag(connected); var key1 = new ConnectedDragDropKey <IDisposable>(); var key2 = new ConnectedDragDropKey <IContainer>(); var disposable1 = Substitute.For <IDisposable>(); var disposable2 = Substitute.For <IContainer>(); dragDrop.SetData(key1, disposable1); dragDrop.SetData(key2, disposable2); IUriPlacementConnector dragDropConnector = dragDrop; dragDropConnector.Disconnect(connected); disposable1.Received(1).Dispose(); disposable2.Received(1).Dispose(); }