public void MoveTo_Target_Should_Contain_Source() { var item = new Item(); var folder = new Folder(); var rootItem = new RootItem(); rootItem.Add(item); rootItem.Add(folder); item.MoveTo(folder); Assert.IsTrue(folder.Contains(item)); }
public void Should_Duplicate_FoldersAndChildItems() { var jobScheduler = Substitute.For <IJobScheduler>(); var settingsStore = Substitute.For <ISettingsStore>(); var rootItem = new RootItem(); var folder = new Folder(); var item1 = new Item(); var item2 = new Item(); rootItem.Add(folder); folder.Add(item1); folder.Add(item2); var command = new DuplicateCommand(folder); var handler = new DuplicateCommandHandler(jobScheduler, settingsStore); handler.Handle(command); Assert.IsTrue(rootItem.Items.Count == 2); var newFolder = rootItem.Items[1]; Assert.IsTrue(newFolder.Items.Count == 2); Assert.AreSame(newFolder, newFolder.Items[0].Parent); Assert.AreSame(newFolder, newFolder.Items[1].Parent); jobScheduler.Received(1).Schedule(newFolder, true); settingsStore.Received(1).TrySave(); }
public void AddChallenge(string challenge, int expirationTimeInMsec) { using (new SecurityDisabler()) { EnsureTemplateExists(); var challengeItem = RootItem.Add("AUTH" + challenge, ChallengeTemplateId); using (new EditContext(challengeItem)) { challengeItem["Expires"] = DateTime.UtcNow.AddMilliseconds(expirationTimeInMsec).Ticks.ToString(); } } }