public void MultiCustom() { // отдельный пользовательский словарь на врача // первый создает слово var newW = CreateWordAsInEditor("123"); Assert.IsTrue(newW.Vocabularies.Single().IsCustom); Assert.AreEqual(d1, newW.Vocabularies.Single().Doctor); // другой врач не видит это слово AuthorityController.TryLogIn(d2); using (var wordList = new WordsListViewModel()) { Assert.IsFalse(wordList.Words.Select(x => x.word).Contains(newW)); // но может добавить var newW2 = CreateWordAsInEditor("123"); Assert.AreEqual(newW, newW2); // это слово в двух пользовательских словарях Assert.IsTrue(newW.Vocabularies.Count() == 2); Assert.IsTrue(newW.Vocabularies.All(x => x.IsCustom)); } }
internal void OpenWordsList() { WordsListWindow wnd = new WordsListWindow(); WordsListViewModel vm = wnd.DataContext as WordsListViewModel; vm.PropertyChanged += SelectedWord_PropertyChanged; wnd.ShowDialog(); }
public void CreateWordInQueryEditor_ThanInWordList() { // внутри используется GetSameWordFromCreated var qe = new QueryEditorViewModel(session); var wl = new WordsListViewModel(); qe.QueryBlocks[0].IsSelected = true; // prevent making options on AllEmpty changes after typing in autocomplete var auto = (qe.QueryBlocks[0].AutocompleteAll as AutocompleteViewModel); var w = auto.CompleteWord("1"); var fromList = wl.AddWord("1"); Assert.AreEqual(w, fromList); qe.Dispose(); wl.Dispose(); }
public void DeleteWordRemovesFromDoctorVocs() { var newW = CreateWordAsInEditor("123"); AuthorityController.TryLogIn(d2); var newW2 = CreateWordAsInEditor("123"); using (var wordList = new WordsListViewModel()) { wordList.SelectWord(newW2); wordList.DeleteCommand.Execute(null); Assert.IsFalse(wordList.Words.Select(x => x.word).Contains(newW2)); Assert.IsFalse(d2.Words.Contains(newW2)); // пока врач удаляет как админ, сразу для всех врачей // при удалении одним врачом остается для другого //Assert.IsTrue(d1.Words.Contains(newW2)); //Assert.AreEqual(d1, newW.Vocabularies.Single().Doctor); } }