public void GetAllModerationClassesFromDb_NoReads_ReturnsEmptyList() { var reader = Mocks.DynamicMock<IDnaDataReader>(); reader.Stub(x => x.Read()).Return(false); var readerCreator = Mocks.DynamicMock<IDnaDataReaderCreator>(); readerCreator.Stub(x => x.CreateDnaDataReader("getmoderationclasslist")).Return(reader); var cache = Mocks.DynamicMock<ICacheManager>(); cache.Stub(x => x.Contains("")).Constraints(Is.Anything()).Return(false); var diag = Mocks.DynamicMock<IDnaDiagnostics>(); Mocks.ReplayAll(); var actual = new ModerationClassListCache(readerCreator, diag, cache, null, null); ; Assert.IsNotNull(actual); Assert.AreEqual(0, actual.GetObjectFromCache().ModClassList.Count); }
public void TermsFilterImportPage_AddSingleReferTermToAll_PassesValidation() { //refresh mod classes SendSignal(); //set up data var reason = "this has a reason"; var term = "potato"; var action = TermAction.Refer; var moderationClasses = new ModerationClassListCache(DnaMockery.CreateDatabaseReaderCreator(), DnaDiagnostics.Default, CacheFactory.GetCacheManager(), null, null); var moderationClassList = moderationClasses.GetObjectFromCache(); var termsLists = new TermsLists(); foreach (var modClass in moderationClassList.ModClassList) { var termsList = new TermsList { ModClassId = modClass.ClassId }; termsList.Terms.Add(new TermDetails { Value = term, Action = action }); termsLists.Termslist.Add(termsList); } Assert.AreNotEqual(0, termsLists.Termslist.Count); var postParams = new Queue<KeyValuePair<string, string>>(); postParams.Enqueue(new KeyValuePair<string, string>("reason", reason)); postParams.Enqueue(new KeyValuePair<string, string>("termtext", term)); postParams.Enqueue(new KeyValuePair<string, string>("action_modclassid_all", action.ToString())); var request = new DnaTestURLRequest(SiteName) { UseEditorAuthentication = true }; request.SetCurrentUserSuperUser(); request.RequestPage("termsfilterimport?action=UPDATETERMS&skin=purexml", postParams); ValidateResponse(request); //check correct error message returned ValidateOkResult(request, "TermsUpdateSuccess", "Term updated successfully."); //check history table termsLists = ValidateHistory(request, reason, termsLists); //Check that all terms are actually associated ValidateTermAssociations(request, termsLists); }