public void CreateDictionary(string text, string trueResult) { /* var mockDbSet = new Mock<DbSet<DictionaryWord>>(); * * var dbSetContent = new List<DictionaryWord>(); * * mockDbSet.As<IQueryable<DictionaryWord>>().Setup(m => m.Provider).Returns(dbSetContent.AsQueryable().Provider); * mockDbSet.As<IQueryable<DictionaryWord>>().Setup(m => m.Expression).Returns(dbSetContent.AsQueryable().Expression); * mockDbSet.As<IQueryable<DictionaryWord>>().Setup(m => m.ElementType).Returns(dbSetContent.AsQueryable().ElementType); * mockDbSet.As<IQueryable<DictionaryWord>>().Setup(m => m.GetEnumerator()).Returns(() => dbSetContent.GetEnumerator()); * mockDbSet.Setup(m => m.Add(It.IsAny<DictionaryWord>())).Callback<DictionaryWord>((s) => dbSetContent.Add(s)); * mockDbSet.Setup(m => m.Remove(It.IsAny<DictionaryWord>())).Callback<DictionaryWord>((s) => dbSetContent.Remove(s)); * * var mockDbContext = new Mock<DBDictionaryWord>(); * * mockDbContext.Setup(c => c.Set<DictionaryWord>()).Returns(mockDbSet.Object); * * GenericRepository<DictionaryWord> repoDictionaryWord = new GenericRepository<DictionaryWord>(mockDbContext.Object);*/ IGenericRepository <DictionaryWord> repoDictionaryWord = new FakeRepository(); ManagerDictionary manager = new ManagerDictionary(repoDictionaryWord); manager.CreateDictionary(text); StringBuilder result = new StringBuilder(); foreach (var word in repoDictionaryWord.Get()) { result.Append(word.Word).Append(" ").Append(word.Frequency).Append(" "); } NUnit.Framework.Assert.AreEqual(result.ToString(), trueResult); }
[TestCase("жил жил ", "жил жил ", "")] //0 + 0 public void UpdateDictionary(string text1, string text2, string trueResult) { IGenericRepository <DictionaryWord> repo = new FakeRepository(); ManagerDictionary manager = new ManagerDictionary(repo); manager.CreateDictionary(text1); manager.UpdateDictionary(text2); StringBuilder result = new StringBuilder(); foreach (var word in repo.Get()) { result.Append(word.Word).Append(" ").Append(word.Frequency).Append(" "); } NUnit.Framework.Assert.AreEqual(result.ToString(), trueResult); }