|
|
|
@ -151,5 +151,58 @@ namespace ICSharpCode.WpfDesign.Tests.Designer
@@ -151,5 +151,58 @@ namespace ICSharpCode.WpfDesign.Tests.Designer
|
|
|
|
|
Assert.AreEqual(_name, grid.ContentProperty.CollectionElements[3].Name); |
|
|
|
|
Assert.AreEqual(grid.ContentProperty.CollectionElements[3], selection.PrimarySelection); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
|
public void PasteSameElementMultipleTimesCheckCopiesNames() |
|
|
|
|
{ |
|
|
|
|
var grid = IntializePasteOperationsTest(); |
|
|
|
|
var xamlContext = grid.Context as XamlDesignContext; |
|
|
|
|
Assert.IsNotNull(xamlContext); |
|
|
|
|
|
|
|
|
|
var selection = grid.Services.Selection; |
|
|
|
|
var innerGrid = grid.ContentProperty.CollectionElements[0]; |
|
|
|
|
|
|
|
|
|
selection.SetSelectedComponents(new[] {innerGrid}); |
|
|
|
|
xamlContext.XamlEditAction.Paste(); |
|
|
|
|
Assert.AreEqual(innerGrid.ContentProperty.CollectionElements[1], selection.PrimarySelection); |
|
|
|
|
|
|
|
|
|
selection.SetSelectedComponents(new[] {innerGrid}); |
|
|
|
|
xamlContext.XamlEditAction.Paste(); |
|
|
|
|
Assert.AreEqual(innerGrid.ContentProperty.CollectionElements[2], selection.PrimarySelection); |
|
|
|
|
|
|
|
|
|
selection.SetSelectedComponents(new[] {innerGrid}); |
|
|
|
|
xamlContext.XamlEditAction.Paste(); |
|
|
|
|
Assert.AreEqual(innerGrid.ContentProperty.CollectionElements[3], selection.PrimarySelection); |
|
|
|
|
|
|
|
|
|
selection.SetSelectedComponents(new[] {innerGrid}); |
|
|
|
|
xamlContext.XamlEditAction.Paste(); |
|
|
|
|
Assert.AreEqual(innerGrid.ContentProperty.CollectionElements[4], selection.PrimarySelection); |
|
|
|
|
|
|
|
|
|
Assert.IsNullOrEmpty(innerGrid.ContentProperty.CollectionElements[0].Name); |
|
|
|
|
Assert.AreEqual(_name, innerGrid.ContentProperty.CollectionElements[1].Name); |
|
|
|
|
Assert.AreEqual(_name + "_Copy", innerGrid.ContentProperty.CollectionElements[2].Name); |
|
|
|
|
Assert.AreEqual(_name + "_Copy1", innerGrid.ContentProperty.CollectionElements[3].Name); |
|
|
|
|
Assert.AreEqual(_name + "_Copy2", innerGrid.ContentProperty.CollectionElements[4].Name); |
|
|
|
|
|
|
|
|
|
xamlContext.XamlEditAction.Copy(new[] {innerGrid.ContentProperty.CollectionElements[3]}); |
|
|
|
|
var cutXaml = Clipboard.GetText(TextDataFormat.Xaml); |
|
|
|
|
Assert.That(cutXaml, Is.StringContaining(":Name=\"" + _name + "_Copy1\"")); |
|
|
|
|
|
|
|
|
|
selection.SetSelectedComponents(new[] {innerGrid}); |
|
|
|
|
xamlContext.XamlEditAction.Paste(); |
|
|
|
|
Assert.AreEqual(innerGrid.ContentProperty.CollectionElements[5], selection.PrimarySelection); |
|
|
|
|
Assert.AreEqual(_name + "_Copy3", innerGrid.ContentProperty.CollectionElements[5].Name); |
|
|
|
|
|
|
|
|
|
var gridDepObj = grid.Component as DependencyObject; |
|
|
|
|
Assert.IsNotNull(gridDepObj); |
|
|
|
|
var nameScope = NameScope.GetNameScope(gridDepObj); |
|
|
|
|
Assert.IsNotNull(nameScope); |
|
|
|
|
Assert.IsNotNull(nameScope.FindName(_name)); |
|
|
|
|
Assert.IsNotNull(nameScope.FindName(_name + "_Copy")); |
|
|
|
|
Assert.IsNotNull(nameScope.FindName(_name + "_Copy1")); |
|
|
|
|
Assert.IsNotNull(nameScope.FindName(_name + "_Copy2")); |
|
|
|
|
Assert.IsNotNull(nameScope.FindName(_name + "_Copy3")); |
|
|
|
|
Assert.IsNull(nameScope.FindName(_name + "_Copy4")); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|