Implement copying of elements.
This commit is contained in:
@ -156,7 +156,33 @@ namespace Tests.ViewModels
|
||||
[Test]
|
||||
public void CopyElement()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
string testString = "this text should be duplicated";
|
||||
_settingsVM.AddElementViewModel(
|
||||
new ControlElementViewModel(new SelectEachDay(new Items(testString))));
|
||||
int oldCount = _settingsVM.Elements.Count;
|
||||
_settingsVM.Elements.First().IsSelected = true;
|
||||
Assert.IsTrue(_settingsVM.CopyElementCommand.CanExecute(null),
|
||||
"CopyElementCommand should be enabled.");
|
||||
_settingsVM.CopyElementCommand.Execute(null);
|
||||
Assert.AreEqual(oldCount + 1, _settingsVM.Elements.Count);
|
||||
|
||||
// Access the first element
|
||||
ControlElementViewModel controlVM = _settingsVM.Elements.First() as ControlElementViewModel;
|
||||
FormatElementViewModel formatVM = controlVM.Elements.First() as FormatElementViewModel;
|
||||
Items items = formatVM.RevealModelObject() as Items;
|
||||
Assert.IsNotNull(items,
|
||||
"Child ViewModel of first ControlElementViewModel does not wrap Items object.");
|
||||
Assert.AreEqual(testString, items.Content,
|
||||
"First control element's child element has incorrect Content string.");
|
||||
|
||||
// Access the second element
|
||||
controlVM = _settingsVM.Elements.Last() as ControlElementViewModel;
|
||||
formatVM = controlVM.Elements.First() as FormatElementViewModel;
|
||||
items = formatVM.RevealModelObject() as Items;
|
||||
Assert.IsNotNull(items,
|
||||
"Child ViewModel of last ControlElementViewModel does not wrap Items object.");
|
||||
Assert.AreEqual(testString, items.Content,
|
||||
"First control element's child element has incorrect Content string.");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user