public void RollbackWithDomainObject() { _order1.DeliveryDate = DateTime.Now; _mockRepository.BackToRecord(_order1MockEventReceiver); _mockRepository.BackToRecord(_clientTransactionExtensionMock); using (_mockRepository.Ordered()) { _clientTransactionExtensionMock.RollingBack(null, null); LastCall.Constraints(Is.Same(TestableClientTransaction), Property.Value("Count", 1) & List.IsIn(_order1)); _clientTransactionMockEventReceiver.RollingBack(_order1); _order1MockEventReceiver.RollingBack(null, null); LastCall.Constraints(Is.Same(_order1), Is.NotNull()); _order1MockEventReceiver.RolledBack(null, null); LastCall.Constraints(Is.Same(_order1), Is.NotNull()); _clientTransactionMockEventReceiver.RolledBack(_order1); _clientTransactionExtensionMock.RolledBack(null, null); LastCall.Constraints(Is.Same(TestableClientTransaction), Property.Value("Count", 1) & List.IsIn(_order1)); } _mockRepository.ReplayAll(); TestableClientTransaction.Rollback(); _mockRepository.VerifyAll(); }
public void TestBasicInterceptionExceptionThrow() { //Create and mock the interceptor. MockRepository mock = new MockRepository(); IAspect hmock = mock.CreateMock <IAspect>(); hmock.PreCall(null); LastCall.Return(MethodVoteOptions.Continue) .IgnoreArguments(); hmock.OnException(null, null, null); LastCall.Constraints( new Rhino.Mocks.Constraints.Anything(), Rhino.Mocks.Constraints.Is.TypeOf(typeof(NullReferenceException)), Rhino.Mocks.Constraints.Is.Anything()); mock.ReplayAll(); using (TestContainer container = new TestContainer(@"Concrete\Castle\AOP\TestSuite1\Configs\ConfigSample1.config")) { container.Kernel.RemoveComponent("interceptor"); container.Kernel.AddComponentInstance("interceptor", hmock); try { container.Resolve <ISomething>().OtherMethod(null, null); Assert.Fail("If reach here exception was not thrown"); } catch (Exception) { } } mock.VerifyAll(); }
public void Analyze_WebServiceThrows_SendsEmail() { MockRepository mocks = new MockRepository(); IWebService stubService = mocks.Stub <IWebService>(); IEmailService mockEmail = mocks.StrictMock <IEmailService>(); using (mocks.Record()) { stubService.LogError("aaa"); LastCall.Constraints(Is.Anything()); LastCall.Throw(new Exception("가짜 예외")); mockEmail.SendEmail("a", "subject", "가짜 예외"); } LogAnalyzer2 log = new LogAnalyzer2(); log.Service = stubService; log.Email = mockEmail; string tooShortFileName = "abc.ext"; log.Analyze(tooShortFileName); mocks.VerifyAll(); }
public static void Test4_ReportManagerCreateSimpleReport() { MockRepository rhinoEngine = new MockRepository(); var mockWriter = rhinoEngine.DynamicMock <TextWriter>(); TextWriterFactory.SetTextWriter(mockWriter); using (rhinoEngine.Record()) { mockWriter.Write("Nothing"); LastCall.Constraints(new Rhino.Mocks.Constraints.Contains("TestCustomer") & new Rhino.Mocks.Constraints.Contains("TestMovie") & new Rhino.Mocks.Constraints.Contains("6 days") & new Rhino.Mocks.Constraints.Contains(12.ToString("C")) & new Rhino.Mocks.Constraints.Contains("(Regular)")); mockWriter.Flush(); } Customer customer = new Customer("TestCustomer"); customer.Rentals.Add(new Renatal(Movie.RegularMovie("TestMovie"), 6)); ReportManager.CreateSimpleReport("SomePath", customer); rhinoEngine.VerifyAll(); }
public void Execute_WithEvaluatedItems_Works() { TreeNode root = new TreeNode("Root"); File.CreateText(@"CoolSuperSourceCode.cs").Close(); using (_mocks.Unordered()) { _buildEngine.LogMessageEvent(null); LastCall.IgnoreArguments().Repeat.Any(); Expect.Call(_item.GetMetadata("FullPath")).Return("CoolSuperSourceCode.cs").Repeat.Any(); _parserService.Parse(null, null); LastCall.Constraints(Is.NotNull(), Is.Equal("CoolSuperSourceCode.cs")); Expect.Call(_treeService.Root).Return(root).Repeat.Any(); _generator.Generate(root); Expect.Call(_source.Ccu).Return(_ccu).Repeat.Any(); } _task.BuildEngine = _buildEngine; _task.Sources = new ITaskItem[] { _item }; _task.ControllerSources = new ITaskItem[0]; _task.ViewSources = new ITaskItem[0]; _task.Namespace = "Eleutian.Empty"; _task.OutputFile = "SiteMap.generated.cs"; _mocks.ReplayAll(); Assert.IsTrue(_task.Execute()); Assert.AreEqual("SiteMap.generated.cs", _task.GeneratedItems[0].ItemSpec); File.Delete(_task.OutputFile); }
public static void PropertyConstraintTestUsingAnd() { var excepetionToThrow = new Exception("TestMessage"); MockRepository rhinoEngine = new MockRepository(); var mailService = rhinoEngine.DynamicMock <IMailService>(); var logService = rhinoEngine.Stub <ILogService>(); FileManager mgr = new FileManager(logService, mailService); And addStatement = new And(Property.Value("Destination", "*****@*****.**"), Property.Value("Theme", excepetionToThrow.GetType().Name)); And combinedAnd = new And(addStatement, Property.Value("MessageText", excepetionToThrow.Message)); using (rhinoEngine.Record()) { logService.LogError("Anything"); LastCall.Constraints(new Anything()); LastCall.Throw(excepetionToThrow); mailService.SendMail(null); LastCall.Constraints(combinedAnd); } mgr.Analize("file.exe"); rhinoEngine.VerifyAll(); }
public static void FileManagerIsMatchingConstraintTest() { var excepetionToThrow = new Exception("TestMessage"); MockRepository rhinoEngine = new MockRepository(); var mailService = rhinoEngine.DynamicMock <IMailService>(); var logService = rhinoEngine.Stub <ILogService>(); FileManager mgr = new FileManager(logService, mailService); using (rhinoEngine.Record()) { logService.LogError("Anything"); LastCall.Constraints(new Anything()); LastCall.Throw(excepetionToThrow); mailService.SendMail(null); LastCall.Constraints(Rhino.Mocks.Constraints.Is.Matching <MailMessage>( message => { if (message.Destination == "*****@*****.**" && message.Theme == excepetionToThrow.GetType().Name&& message.MessageText == excepetionToThrow.Message) { return(true); } return(false); })); } mgr.Analize("file.exe"); rhinoEngine.VerifyAll(); }
public void AddToOneToManyRelationWithOldRelatedObject() { DomainObjectCollection preloadedOrderItemsOfOrder1 = _order1.OrderItems; preloadedOrderItemsOfOrder1.EnsureDataComplete(); OrderItem newOrderItem = DomainObjectIDs.OrderItem3.GetObject <OrderItem>(); Order oldOrderOfNewOrderItem = newOrderItem.Order; oldOrderOfNewOrderItem.EnsureDataAvailable(); _mockRepository.BackToRecord(_extension); var newOrderItemEventReceiver = _mockRepository.StrictMock <DomainObjectMockEventReceiver> (newOrderItem); var oldOrderOfNewOrderItemEventReceiver = _mockRepository.StrictMock <DomainObjectMockEventReceiver> (oldOrderOfNewOrderItem); using (_mockRepository.Ordered()) { _extension.RelationReading( TestableClientTransaction, _order1, GetEndPointDefinition(typeof(Order), "OrderItems"), ValueAccess.Current); _extension.RelationRead(null, null, null, (ReadOnlyDomainObjectCollectionAdapter <DomainObject>)null, ValueAccess.Current); LastCall.Constraints( Is.Same(TestableClientTransaction), Is.Same(_order1), Is.Equal(GetEndPointDefinition(typeof(Order), "OrderItems")), Property.Value("Count", preloadedOrderItemsOfOrder1.Count) & new ContainsConstraint(preloadedOrderItemsOfOrder1), Is.Equal(ValueAccess.Current)); _extension.RelationChanging( TestableClientTransaction, newOrderItem, GetEndPointDefinition(typeof(OrderItem), "Order"), oldOrderOfNewOrderItem, _order1); newOrderItemEventReceiver.RelationChanging(GetEndPointDefinition(typeof(OrderItem), "Order"), oldOrderOfNewOrderItem, _order1); _extension.RelationChanging( TestableClientTransaction, _order1, GetEndPointDefinition(typeof(Order), "OrderItems"), null, newOrderItem); _order1EventReceiver.RelationChanging(GetEndPointDefinition(typeof(Order), "OrderItems"), null, newOrderItem); _extension.RelationChanging( TestableClientTransaction, oldOrderOfNewOrderItem, GetEndPointDefinition(typeof(Order), "OrderItems"), newOrderItem, null); oldOrderOfNewOrderItemEventReceiver.RelationChanging(GetEndPointDefinition(typeof(Order), "OrderItems"), newOrderItem, null); oldOrderOfNewOrderItemEventReceiver.RelationChanged(GetEndPointDefinition(typeof(Order), "OrderItems"), newOrderItem, null); _extension.RelationChanged( TestableClientTransaction, oldOrderOfNewOrderItem, GetEndPointDefinition(typeof(Order), "OrderItems"), newOrderItem, null); _order1EventReceiver.RelationChanged(GetEndPointDefinition(typeof(Order), "OrderItems"), null, newOrderItem); _extension.RelationChanged(TestableClientTransaction, _order1, GetEndPointDefinition(typeof(Order), "OrderItems"), null, newOrderItem); newOrderItemEventReceiver.RelationChanged(GetEndPointDefinition(typeof(OrderItem), "Order"), oldOrderOfNewOrderItem, _order1); _extension.RelationChanged(TestableClientTransaction, newOrderItem, GetEndPointDefinition(typeof(OrderItem), "Order"), oldOrderOfNewOrderItem, _order1); } _mockRepository.ReplayAll(); _order1.OrderItems.Add(newOrderItem); _mockRepository.VerifyAll(); }
private void ExpectHandleReference(ICloneStrategy strategyMock, TestDomainBase original, TestDomainBase clone, string propertyName, ClientTransaction sourceTransaction, ClientTransaction cloneTransaction) { strategyMock.HandleReference(new PropertyAccessor(), new PropertyAccessor(), null); LastCall.Constraints( Rhino.Mocks.Constraints.Is.Equal(original.Properties[original.GetPublicDomainObjectType(), propertyName, sourceTransaction]), Rhino.Mocks.Constraints.Is.Equal(clone.Properties[clone.GetPublicDomainObjectType(), propertyName, cloneTransaction]), Rhino.Mocks.Constraints.Is.Anything()); }
public void CreateJob_DelegatesToJobStore() { mockJobStore.CreateJob(dummyJobSpec, DateTime.UtcNow, CreateJobConflictAction.Update); LastCall.Constraints(Rhino.Mocks.Constraints.Is.Same(dummyJobSpec), Rhino.Mocks.Constraints.Is.Anything(), Rhino.Mocks.Constraints.Is.Equal(CreateJobConflictAction.Update)).Return(true); Mocks.ReplayAll(); Assert.IsTrue(scheduler.CreateJob(dummyJobSpec, CreateJobConflictAction.Update)); }
public void should_register_for_the_main_shell_views_closing_event() { using (mockery.Record()) { shellView.Closed += null; LastCall.Constraints(Is.NotNull()); } using (mockery.Playback()) { CreateSUT(); } }
public void ShouldShowViewAndAttachEmailClickedEvent() { factory.Stub(x => x.CreateAboutView()).Return(view); view.Stub(x => x.ShowView()).Repeat.Once(); view.EmailClicked += null; LastCall.Constraints(Is.NotNull()); mocks.ReplayAll(); var controller = new AboutController(factory); controller.Show(); }
public void Should_redirect_to_page() { using (_mockery.Record( )) { _mockGateway.RedirectTo(null); LastCall.Constraints(Is.NotNull( )); } using (_mockery.Playback( )) { CreateSUT( ).Render( ); } }
public void CanSendSMSWhenUserRequestForgottenPasswordReminder() { smsSender.SendSMS(null, null); LastCall.Constraints(Is.Equal("1234"), Text.StartsWith("new password: "******"Should send sms"); mocks.ReplayAll(); LoginController controller = new LoginController(userRepository, smsSender); controller.ForgottenPassword("sally"); }
public void UsingPredicateWhenExpectationViolated() { demo.VoidStringArg(null); LastCall.Constraints( Is.Matching <string>(JustPredicate) ); mocks.Replay(demo); Assert.Throws <ExpectationViolationException>( "IDemo.VoidStringArg(\"cc\"); Expected #0, Actual #1.\r\nIDemo.VoidStringArg(Predicate (ConstraintTests.JustPredicate(obj);)); Expected #1, Actual #0.", () => demo.VoidStringArg("cc")); }
public void ComplexConstraintsWithCallbacks() { MockRepository mocks = new MockRepository(); IWebService mockservice = mocks.CreateMock <IWebService>(); using (mocks.Record()) { mockservice.LogError(new TraceMessage("", 0, "")); LastCall.Constraints( Is.Matching <ComplexTraceMessage>(verifyComplexMessage)); } }
public void FormatWritesTheTransformedReport() { string resourcePath = Path.Combine(Path.GetDirectoryName(AssemblyUtils.GetAssemblyLocalPath(GetType().Assembly)), @"..\Reports"); IReportWriter reportWriter = Mocks.StrictMock <IReportWriter>(); IReportContainer reportContainer = Mocks.StrictMock <IReportContainer>(); IProgressMonitor progressMonitor = NullProgressMonitor.CreateInstance(); string reportPath = SpecialPathPolicy.For <XsltReportFormatter>().CreateTempFileWithUniqueName().FullName; using (Stream tempFileStream = File.OpenWrite(reportPath)) { using (Mocks.Record()) { SetupResult.For(reportWriter.ReportContainer).Return(reportContainer); reportWriter.SerializeReport(null, AttachmentContentDisposition.Link); LastCall.Constraints(Is.NotNull(), Is.Equal(AttachmentContentDisposition.Link)) .Do((SerializeReportDelegate) delegate(XmlWriter writer, AttachmentContentDisposition contentDisposition) { XmlDocument doc = new XmlDocument(); doc.InnerXml = "<report>The report.</report>"; doc.Save(writer); }); SetupResult.For(reportContainer.ReportName).Return("Foo"); Expect.Call(reportContainer.OpenWrite("Foo.ext", MimeTypes.PlainText, new UTF8Encoding(false))) .Return(tempFileStream); reportWriter.AddReportDocumentPath("Foo.ext"); Expect.Call(reportContainer.OpenWrite(@"Foo\MbUnitLogo.png", MimeTypes.Png, null)).Return(new MemoryStream()); reportWriter.SaveReportAttachments(null); LastCall.Constraints(Is.NotNull()); } using (Mocks.Playback()) { XsltReportFormatter formatter = new XsltReportFormatter("ext", MimeTypes.PlainText, new DirectoryInfo(resourcePath), "Diagnostic.xslt", new string[] { "MbUnitLogo.png" }); var reportFormatterOptions = new ReportFormatterOptions(); reportFormatterOptions.AddProperty(XsltReportFormatter.AttachmentContentDispositionOption, AttachmentContentDisposition.Link.ToString()); formatter.Format(reportWriter, reportFormatterOptions, progressMonitor); string reportContents = File.ReadAllText(reportPath); TestLog.EmbedXml("Diagnostic report contents", reportContents); Assert.Contains(reportContents, "<resourceRoot>Foo</resourceRoot>"); Assert.Contains(reportContents, "The report."); File.Delete(reportPath); } } }
/// <summary> /// Ensures, that all interface methods delegate to Write() with correct level + arguments /// and that arguments are still not evaluated up to this point (e.g. calling ToString()) /// </summary> private static void WriteIsCalledWithCorrectLogLevel(string levelName) { MockRepository mocks = new MockRepository(); AbstractTestLogger log = (AbstractTestLogger)mocks.PartialMock(typeof(AbstractTestLogger)); Exception ex = (Exception)mocks.StrictMock(typeof(Exception)); object messageObject = mocks.StrictMock(typeof(object)); object formatArg = mocks.StrictMock(typeof(object)); FormatMessageCallback failCallback = TestFormatMessageCallback.FailCallback(); MethodInfo[] logMethods = GetLogMethodSignatures(levelName); LogLevel logLevel = (LogLevel)Enum.Parse(typeof(LogLevel), levelName); using (mocks.Ordered()) { log.Log(logLevel, null, null); LastCall.Constraints(Is.Equal(logLevel), Is.Anything(), Is.Null()); log.Log(logLevel, null, ex); LastCall.Constraints(Is.Equal(logLevel), Is.Anything(), Is.Same(ex)); log.Log(logLevel, null, null); LastCall.Constraints(Is.Equal(logLevel), Is.Anything(), Is.Null()); log.Log(logLevel, null, ex); LastCall.Constraints(Is.Equal(logLevel), Is.Anything(), Is.Same(ex)); log.Log(logLevel, null, null); LastCall.Constraints(Is.Equal(logLevel), Is.Anything(), Is.Null()); log.Log(logLevel, null, ex); LastCall.Constraints(Is.Equal(logLevel), Is.Anything(), Is.Same(ex)); log.Log(logLevel, null, null); LastCall.Constraints(Is.Equal(logLevel), Is.Anything(), Is.Null()); log.Log(logLevel, null, ex); LastCall.Constraints(Is.Equal(logLevel), Is.Anything(), Is.Same(ex)); log.Log(logLevel, null, null); LastCall.Constraints(Is.Equal(logLevel), Is.Anything(), Is.Null()); log.Log(logLevel, null, ex); LastCall.Constraints(Is.Equal(logLevel), Is.Anything(), Is.Same(ex)); } mocks.ReplayAll(); Invoke(log, logMethods[0], messageObject); Invoke(log, logMethods[1], messageObject, ex); Invoke(log, logMethods[2], "format", new object[] { formatArg }); Invoke(log, logMethods[3], "format", ex, new object[] { formatArg }); Invoke(log, logMethods[4], CultureInfo.InvariantCulture, "format", new object[] { formatArg }); Invoke(log, logMethods[5], CultureInfo.InvariantCulture, "format", ex, new object[] { formatArg }); Invoke(log, logMethods[6], failCallback); Invoke(log, logMethods[7], failCallback, ex); Invoke(log, logMethods[8], CultureInfo.InvariantCulture, failCallback); Invoke(log, logMethods[9], CultureInfo.InvariantCulture, failCallback, ex); mocks.VerifyAll(); }
public void ReplaceInOneToManyRelation() { Assert.Greater(_order1.OrderItems.Count, 0); OrderItem oldOrderItem = _order1.OrderItems[0]; DomainObjectCollection preloadedOrderItems = _order1.OrderItems; OrderItem newOrderItem = OrderItem.NewObject(); _mockRepository.BackToRecord(_extension); var oldOrderItemEventReceiver = _mockRepository.StrictMock <DomainObjectMockEventReceiver> (oldOrderItem); var newOrderItemEventReceiver = _mockRepository.StrictMock <DomainObjectMockEventReceiver> (newOrderItem); using (_mockRepository.Ordered()) { _extension.RelationReading( TestableClientTransaction, _order1, GetEndPointDefinition(typeof(Order), "OrderItems"), ValueAccess.Current); _extension.RelationRead(null, null, null, (ReadOnlyDomainObjectCollectionAdapter <DomainObject>)null, ValueAccess.Current); LastCall.Constraints( Is.Same(TestableClientTransaction), Is.Same(_order1), Is.Equal(GetEndPointDefinition(typeof(Order), "OrderItems")), Property.Value("Count", preloadedOrderItems.Count) & new ContainsConstraint(preloadedOrderItems), Is.Equal(ValueAccess.Current)); _extension.RelationChanging( TestableClientTransaction, oldOrderItem, GetEndPointDefinition(typeof(OrderItem), "Order"), _order1, null); oldOrderItemEventReceiver.RelationChanging(GetEndPointDefinition(typeof(OrderItem), "Order"), _order1, null); _extension.RelationChanging( TestableClientTransaction, newOrderItem, GetEndPointDefinition(typeof(OrderItem), "Order"), null, _order1); newOrderItemEventReceiver.RelationChanging(GetEndPointDefinition(typeof(OrderItem), "Order"), null, _order1); _extension.RelationChanging( TestableClientTransaction, _order1, GetEndPointDefinition(typeof(Order), "OrderItems"), oldOrderItem, newOrderItem); _order1EventReceiver.RelationChanging(GetEndPointDefinition(typeof(Order), "OrderItems"), oldOrderItem, newOrderItem); _order1EventReceiver.RelationChanged(GetEndPointDefinition(typeof(Order), "OrderItems"), oldOrderItem, newOrderItem); _extension.RelationChanged(TestableClientTransaction, _order1, GetEndPointDefinition(typeof(Order), "OrderItems"), oldOrderItem, newOrderItem); newOrderItemEventReceiver.RelationChanged(GetEndPointDefinition(typeof(OrderItem), "Order"), null, _order1); _extension.RelationChanged(TestableClientTransaction, newOrderItem, GetEndPointDefinition(typeof(OrderItem), "Order"), null, _order1); oldOrderItemEventReceiver.RelationChanged(GetEndPointDefinition(typeof(OrderItem), "Order"), _order1, null); _extension.RelationChanged(TestableClientTransaction, oldOrderItem, GetEndPointDefinition(typeof(OrderItem), "Order"), _order1, null); } _mockRepository.ReplayAll(); _order1.OrderItems[0] = newOrderItem; _mockRepository.VerifyAll(); }
public void ModifyOtherObjectInClientTransactionRollingBack() { _order1.DeliveryDate = DateTime.Now; _mockRepository.BackToRecord(_order1MockEventReceiver); _mockRepository.BackToRecord(_clientTransactionExtensionMock); using (_mockRepository.Ordered()) { _clientTransactionExtensionMock.RollingBack(null, null); LastCall.Constraints(Is.Same(TestableClientTransaction), Property.Value("Count", 1) & List.IsIn(_order1)); _clientTransactionMockEventReceiver.RollingBack(_order1); LastCall.Do(new EventHandler <ClientTransactionEventArgs> (ChangeCustomerNameCallback)); _clientTransactionExtensionMock.PropertyValueChanging(TestableClientTransaction, null, null, null, null); LastCall.IgnoreArguments(); _customer1MockEventReceiver.PropertyChanging(null, null); LastCall.IgnoreArguments(); _customer1MockEventReceiver.PropertyChanged(null, null); LastCall.IgnoreArguments(); _clientTransactionExtensionMock.PropertyValueChanged(TestableClientTransaction, null, null, null, null); LastCall.IgnoreArguments(); _order1MockEventReceiver.RollingBack(null, null); LastCall.Constraints(Is.Same(_order1), Is.NotNull()); _clientTransactionExtensionMock.RollingBack(null, null); LastCall.Constraints(Is.Same(TestableClientTransaction), Property.Value("Count", 1) & List.IsIn(_customer1)); _clientTransactionMockEventReceiver.RollingBack(_customer1); _customer1MockEventReceiver.RollingBack(null, null); LastCall.Constraints(Is.Same(_customer1), Is.NotNull()); _customer1MockEventReceiver.RolledBack(null, null); LastCall.Constraints(Is.Same(_customer1), Is.NotNull()); _order1MockEventReceiver.RolledBack(null, null); LastCall.Constraints(Is.Same(_order1), Is.NotNull()); _clientTransactionMockEventReceiver.RolledBack(_order1, _customer1); _clientTransactionExtensionMock.RolledBack(null, null); LastCall.Constraints(Is.Same(TestableClientTransaction), Property.Value("Count", 2) & new ContainsConstraint(_order1, _customer1)); } _mockRepository.ReplayAll(); TestableClientTransaction.Rollback(); _mockRepository.VerifyAll(); }
public void SimpleStringConstraints() { var mocks = new MockRepository(); var mockService = mocks.StrictMock <IWebService>(); using (mocks.Record()) { mockService.LogError("ignored string"); LastCall.Constraints(new Rhino.Mocks.Constraints.Contains("abc")); } mockService.LogError(Guid.NewGuid() + " abc"); mocks.VerifyAll(); }
public void ShouldSetDescriptionForExistingFieldsIfEmpty() { ICategoryRepository categoryRepository; const string categoryName = "category"; List <FieldInfo> existingFields = new List <FieldInfo>(); existingFields.Add(new FieldInfo("existingField1", FieldType.TextBox, "User-defined description")); existingFields.Add(new FieldInfo("existingField2", FieldType.CheckBox, String.Empty)); List <FieldInfo> newFields = new List <FieldInfo>(); newFields.Add(new FieldInfo("existingField1", FieldType.TextBox, "Field description 1")); newFields.Add(new FieldInfo("existingField2", FieldType.CheckBox, "Field description 2")); using (Mocks.Record()) { categoryRepository = Mocks.StrictMock <ICategoryRepository>(); CustomFormSettings formSettings = new CustomFormSettings(); formSettings.Fields = existingFields.ToCustomFieldList(); Expect.Call(categoryRepository.GetFormSettings(categoryName)).Return(formSettings); List <CustomField> expectedFormSettings = new List <CustomField>(); expectedFormSettings.Add(existingFields.ToCustomFieldList()[0]); expectedFormSettings.Add(newFields.ToCustomFieldList()[1]); categoryRepository.SaveFormSettings(null); LastCall.Constraints(Is.Matching((CustomFormSettings cfs) => { for (int i = 0; i < cfs.Fields.Count; i++) { CustomField field = cfs.Fields[i]; CustomField expectedField = expectedFormSettings[i]; if (expectedField.Name != field.Name || expectedField.Description != field.Description || expectedField.FieldType != field.FieldType) { return(false); } } return(true); })); } using (Mocks.Playback()) { Migrator fm = new Migrator(categoryRepository, new PostRepository()); fm.EnsureFields(categoryName, newFields); } }
public void UsingPredicateConstraintWhenTypesNotMatching() { demo.VoidStringArg(null); LastCall.Constraints( Is.Matching <DataSet>(delegate(DataSet s) { return(false); })); mocks.Replay(demo); Assert.Throws <InvalidOperationException>( "Predicate accept System.Data.DataSet but parameter is System.String which is not compatible", () => demo.VoidStringArg("ab")); }
public void UsingPredicateConstraintWithSubtype() { demo.VoidStringArg(null); LastCall.Constraints( Is.Matching <object>(delegate(object o) { return(o.Equals("ab")); })); mocks.Replay(demo); demo.VoidStringArg("ab"); mocks.VerifyAll(); }
public void SimpleStringConstraints() { MockRepository mocks = new MockRepository(); IWebService mockService = mocks.CreateMock <IWebService>(); using (mocks.Record()) { mockService.LogError("무시된 문자열"); LastCall.Constraints(new Contains("abc")); } mockService.LogError(Guid.NewGuid() + "abc"); mocks.VerifyAll(); }
public void CallOriginalMethodProblem2() { MockRepository mockRepository = new MockRepository(); MockedClass mock = mockRepository.StrictMock <MockedClass>(); mock.Method(null); LastCall.Constraints(Is.Equal("parameter")).CallOriginalMethod (OriginalCallOptions.CreateExpectation); mockRepository.ReplayAll(); mock.Method("parameter"); mockRepository.VerifyAll(); }
public void should_execute_the_exit_application_command() { IEventRaiser raiser; using (mockery.Record()) { shellView.Closed += null; raiser = LastCall.Constraints(Is.NotNull()).GetEventRaiser(); exitCommand.Execute(); } using (mockery.Playback()) { CreateSUT(); raiser.Raise(null, null); } }
public void ChangeOtherObjectBackToOriginalInClientTransactionRollingBack() { _order1.DeliveryDate = DateTime.Now; _customer1.Name = "New customer name"; _mockRepository.BackToRecord(_order1MockEventReceiver); _mockRepository.BackToRecord(_customer1MockEventReceiver); _mockRepository.BackToRecord(_clientTransactionExtensionMock); using (_mockRepository.Ordered()) { _clientTransactionExtensionMock.RollingBack(null, null); LastCall.Constraints(Is.Same(TestableClientTransaction), Property.Value("Count", 2) & new ContainsConstraint(_order1, _customer1)); _clientTransactionMockEventReceiver.RollingBack(_order1, _customer1); LastCall.Do(new EventHandler <ClientTransactionEventArgs> (ChangeCustomerNameBackToOriginalCallback)); _clientTransactionExtensionMock.PropertyValueChanging(TestableClientTransaction, null, null, null, null); LastCall.IgnoreArguments(); _customer1MockEventReceiver.PropertyChanging(null, null); LastCall.IgnoreArguments(); _customer1MockEventReceiver.PropertyChanged(null, null); LastCall.IgnoreArguments(); _clientTransactionExtensionMock.PropertyValueChanged(TestableClientTransaction, null, null, null, null); LastCall.IgnoreArguments(); _order1MockEventReceiver.RollingBack(null, null); LastCall.Constraints(Is.Same(_order1), Is.NotNull()); _customer1MockEventReceiver.RollingBack(null, null); LastCall.Constraints(Is.Same(_customer1), Is.NotNull()); _order1MockEventReceiver.RolledBack(null, null); LastCall.Constraints(Is.Same(_order1), Is.NotNull()); // Note: Customer1 must not raise a RolledBack event, because its Name has been set back to the OriginalValue. _clientTransactionMockEventReceiver.RolledBack(_order1); _clientTransactionExtensionMock.RolledBack(null, null); LastCall.Constraints(Is.Same(TestableClientTransaction), Property.Value("Count", 1) & List.IsIn(_order1)); } _mockRepository.ReplayAll(); TestableClientTransaction.Rollback(); _mockRepository.VerifyAll(); }
public static void FileManagerTest10_2() { string fileName = "SomeFileName.exe"; using (rhinoEngine.Record()) { logService.LogError("WhatEver"); LastCall.Constraints(new Rhino.Mocks.Constraints.Contains("FileExtension")); } FileManager mgr = new FileManager(logService); mgr.Analize(fileName); rhinoEngine.Verify(logService); }
public void The_original_file_is_replaced_when_an_entry_is_added_or_updated() { string specifiedFile = @"c:\data\tnsnames.ora"; task.TnsNamesFile = specifiedFile; task.EntryName = "foo.world"; using (mocks.Record()) { SetupResult.For(fileSystem.ReadTextFromFile(specifiedFile)).Return(SAMPLE_FILE); fileSystem.WriteTextToFile(specifiedFile, SAMPLE_FILE); LastCall.Constraints(Rhino.Mocks.Constraints.Is.Equal(specifiedFile), Rhino.Mocks.Constraints.Is.Anything()); } Assert.IsTrue(task.Execute()); mocks.VerifyAll(); }