Пример #1
0
        public void ShouldAssertOccrenceForNonPublicFunction()
        {
            var foo = Mock.Create <Foo>(Behavior.CallOriginal);

            Mock.NonPublic.Assert <int>(foo, "IntValue", Occurs.Never());
        }
Пример #2
0
        public void ScaleSelectFigureTest()
        {
            var    rect   = Mock.Create <RectangleFigure>(() => new RectangleFigure());
            Figure figure = new Figure(new Pen(Color.AliceBlue), new GraphicsPath(), Color.Bisque, 1, false);
            Pivots pivots = new Pivots(new Pen(Color.AliceBlue), new GraphicsPath());

            rect.ScaleSelectFigure(figure, pivots, new int(), new int());
            Mock.Assert(() => rect.ScaleSelectFigure(figure, pivots, new int(), new int()), Occurs.AtLeastOnce());
        }
Пример #3
0
 public void Assert(object target, string methodName, Type[] methodParamTypes, string localFunctionName, Occurs occurs, Type[] methodGenericTypes, params object[] args)
 {
     ProfilerInterceptor.GuardInternal(() =>
     {
         Type[] emptyLocalFunctionGenericTypes = new Type[] { };
         this.Assert(target, methodName, methodParamTypes, localFunctionName, occurs, methodGenericTypes, emptyLocalFunctionGenericTypes, args);
     });
 }
Пример #4
0
        public void Assert(object target, string methodName, Type[] methodParamTypes, string localFunctionName, Occurs occurs, params object[] args)
        {
            ProfilerInterceptor.GuardInternal(() =>
            {
                MethodInfo method = MockingUtil.GetMethodWithLocalFunction(target, methodName, methodParamTypes, null);

                this.Assert(target, method, localFunctionName, occurs, args);
            });
        }
Пример #5
0
        private static void DoAssert(string message, object obj, Type objType, LambdaExpression expression, Args args, Occurs occurs)
        {
            var        repo = MockingContext.CurrentRepository;
            Expression parameterlessArrangeStmt = null;

            if (expression != null)
            {
                var instanceParam     = expression.Parameters[0];
                var instanceConstant  = Expression.Constant(obj);
                var parameterlessBody = ExpressionReplacer.Replace(expression.Body, instanceParam, instanceConstant);
                parameterlessArrangeStmt = Expression.Lambda(parameterlessBody);
            }
            repo.Assert(message, obj, parameterlessArrangeStmt, args, occurs);
        }
        public void ShouldAssertNonPublicMethodViaDynaMock()
        {
            var mock    = Mock.Create <TestBed>();
            var wrapper = Mock.NonPublic.Wrap(mock);

            Assert.Throws <AssertionException>(() => Mock.NonPublic.Assert(wrapper.Value = 123, Occurs.Once()));
            Assert.Throws <AssertionException>(() => Mock.NonPublic.Assert(wrapper.Value = ArgExpr.IsAny <int>(), Occurs.Once()));
            new TestBed.Accessor(mock).Value    = 123;
            Mock.NonPublic.Assert(wrapper.Value = 123, Occurs.Once());
            Mock.NonPublic.Assert(wrapper.Value = ArgExpr.IsAny <int>(), Occurs.Once());
        }
        public void Not_Update_Title_On_Edit() //Remove if we later decide to handle all title changes from El Dorado
        {
            Target.SyncToWordpress(Post);

            Client.Assert(cl => cl.GetRawResultOfBearerRequest(HttpMethod.Post, EditUrl, Arg.AnyString, Arg.Matches <string>(s => s.Contains($"\"title\":"))), Occurs.Never());
        }
Пример #8
0
 /// <summary>
 /// Assert a method on an registered mock.
 /// </summary>
 /// <typeparam name="TDependency">The type of the registered mock.</typeparam>
 /// <param name="container">The mocking container.</param>
 /// <param name="name">The contract name identifying the registered mock.</param>
 /// <param name="expression">The method to assert.</param>
 /// <param name="occurs">Occurrence expectation.</param>
 public static void Assert <TDependency>(this IUnityContainer container, string name, Expression <Action <TDependency> > expression, Occurs occurs)
 {
     container.RegisterMock <TDependency>(name).Assert(expression, occurs);
 }
Пример #9
0
        public void RegisterCommand_WhenThrows_ShouldCatch()
        {
            Mock.Arrange(() => _remoteApiMap.RegisterCommand("action", Arg.IsAny <Action>(), string.Empty)).Throws <Exception>();
            _sut = new TraceableRemoteApiMap(_remoteApiMap, _remoteRecordsSender, _recorder);
            Action a = () => { };

            _sut.RegisterCommand("action", a, string.Empty);

            Mock.Assert(() => _recorder.DefaultException(Arg.IsAny <Object>(), Arg.IsAny <Exception>()), Occurs.Exactly(1));
        }
Пример #10
0
        public void When_no_events_are_published_then_no_events_are_reported_to_agent_health()
        {
            // Act
            _harvestAction();

            // Assert
            Mock.Assert(() => _agentHealthReporter.ReportCustomEventCollected(), Occurs.Never());
            Mock.Assert(() => _agentHealthReporter.ReportCustomEventsRecollected(Arg.IsAny <int>()), Occurs.Never());
            Mock.Assert(() => _agentHealthReporter.ReportCustomEventReservoirResized(Arg.IsAny <int>()), Occurs.Never());
            Mock.Assert(() => _agentHealthReporter.ReportCustomEventsSent(Arg.IsAny <int>()), Occurs.Never());
        }
Пример #11
0
        public void ShouldVerifyThatMockArgumentIsNotAssertedInsteadOfExpected()
        {
            var viewServiceMock = Mock.Create <IViewService>();

            var view1 = Mock.Create <IView>();
            var view2 = Mock.Create <IView>();
            var view3 = Mock.Create <IView>();

            Mock.Arrange(() => viewServiceMock.Views).Returns(new[] { view1, view2, view3 });
            Mock.Arrange(() => viewServiceMock.ActiveView).Returns(view2);

            Mock.Arrange(() => viewServiceMock.TryCloseViews(Arg.IsAny <IEnumerable <IView> >()));

            viewServiceMock.TryCloseViews(viewServiceMock.Views.Except(new[] { viewServiceMock.ActiveView }));

            // this will increase the execution number of GetHashCode()
            Assert.True(new[] { view1, view3 }.All((view) => view == view1 || view == view3));
            Mock.Assert(() => viewServiceMock.TryCloseViews(Arg.Matches <IEnumerable <IView> >((views) => views.All((view) => view == view1 || view == view3))), Occurs.Once());
        }
Пример #12
0
        public void ShouldAssertForArgMatchesWhenArgumentCalulatedBasedOnMockValues()
        {
            var viewServiceMock = Mock.Create <IViewService>();

            var view1 = Mock.Create <IView>();
            var view2 = Mock.Create <IView>();
            var view3 = Mock.Create <IView>();

            Mock.Arrange(() => viewServiceMock.Views).Returns(new[] { view1, view2, view3 });
            Mock.Arrange(() => viewServiceMock.ActiveView).Returns(view2);

            Mock.Arrange(() => viewServiceMock.TryCloseViews(Arg.IsAny <IEnumerable <IView> >()));

            viewServiceMock.TryCloseViews(viewServiceMock.Views.Except(new[] { viewServiceMock.ActiveView }));

            Mock.Assert(() => viewServiceMock.TryCloseViews(Arg.Matches <IEnumerable <IView> >((views) => views.All((view) => view == view1 || view == view3))), Occurs.Once());
        }
Пример #13
0
        public void ShouldAssertForAnyArgumentsWhenIgnoreSwitchAndOccursSpecified()
        {
            var region = Mock.Create <IRegionManager>();

            Mock.Assert(() => region.RequestNavigate(RegionNames.OperationsEditRegion, null), Args.Ignore(), Occurs.Never());
        }
Пример #14
0
 internal ClrWildCardPropertyInfo(string ns, string targetNs, bool addToType, Occurs schemaOccurs)
 {
     namespaces = ns;
     targetNamespace = targetNs;
     this.contentType = ContentType.WildCardProperty;
     this.addToTypeDef = addToType;
     this.occursInSchema = schemaOccurs;
 }
        public void Create_A_New_Draft_When_Post_Has_No_Wordpress_Id()
        {
            Post.WordpressId = 0;

            Target.SyncToWordpress(Post);

            Client.Assert(cl => cl.GetRawResultOfBearerRequest(HttpMethod.Post, CreateUrl, Arg.AnyString, Arg.AnyString), Occurs.Once());
        }
Пример #16
0
        public void ShouldAssertCallWhenCombinedWithEnumFollowedByAnyTypeArgs()
        {
            var region = Mock.Create <IRegionManager>();

            region.RequestNavigate(RegionNames.OperationsEditRegion, new FooExrepssion());

            Mock.Assert(() => region.RequestNavigate(RegionNames.OperationsEditRegion, Arg.IsAny <FooExrepssion>()), Occurs.Once());
        }
Пример #17
0
        public void SendTwoMesssagesTest()
        {
            IMessageBus messageBus = new SimpleMessageBus();
            IFakeHost   host       = GetFakeHostMocked(messageBus);

            host.Init(messageBus);

            messageBus.SendMessage(MESSAGE_STRING, this, MessageActionType.Add);
            messageBus.SendMessage(MESSAGE_INT, this, MessageActionType.Add);

            Mock.Assert(() => host.OnMessageOneReceived(Arg.IsAny <Message>()), Occurs.Once());
            Mock.Assert(() => host.OnMessageOneReceivedExtended(Arg.IsAny <Message>()), Occurs.Exactly(2));
            Mock.Assert(() => host.OnMessageTwoReceived(Arg.IsAny <Message>()), Occurs.Once());
        }
Пример #18
0
 /// <summary>
 /// Asserts the specific call
 /// </summary>
 /// <typeparam name="T">Type of the mock.</typeparam>
 /// <param name="obj">Target mock object</param>
 /// <param name="expression">Target expression</param>
 /// <param name="occurs">Specifies the number of times a mock call should occur.</param>
 public static void Assert <T>(this T obj, Expression <Action <T> > expression, Occurs occurs, string message = null)
 {
     ProfilerInterceptor.GuardInternal(() =>
     {
         DoAssert(message, obj, typeof(T), expression, null, occurs);
     });
 }
Пример #19
0
        public void DontSendMesssageTest()
        {
            IMessageBus messageBus = new SimpleMessageBus();
            IFakeHost   host       = GetFakeHostMocked(messageBus);

            host.Init(messageBus);

            Mock.Assert(() => host.OnMessageOneReceived(Arg.IsAny <Message>()), Occurs.Never());
            Mock.Assert(() => host.OnMessageOneReceivedExtended(Arg.IsAny <Message>()), Occurs.Never());
            Mock.Assert(() => host.OnMessageTwoReceived(Arg.IsAny <Message>()), Occurs.Never());
        }
Пример #20
0
        public async Task Test1()
        {
            var entityId = new EntityId(nameof(LastChargeState), "*****@*****.**");

            Mock.Arrange(() => _durableOrchestrationContextMock.GetInput <OrchestrationData>()).Returns(new OrchestrationData()
            {
                EntityId = entityId
            });
            Mock.Arrange(() => _durableOrchestrationContextMock.CallActivityAsync <ChargeState>("CallTeslaAPI", Arg.IsAny <TeslaLogin>()))
            .Returns(Task.FromResult(new ChargeState()
            {
                ChargingState = ChargingStatus.Disconnected
            }));
            Mock.Arrange(() => _durableOrchestrationContextMock.CallEntityAsync <ChargingStatus>(entityId, "Get"))
            .Returns(Task.FromResult(ChargingStatus.Other));
            Mock.Arrange(() => _durableOrchestrationContextMock.CallActivityAsync("SaveCharge", Arg.IsAny <ChargeState>()));

            await CheckChargeStatus.RunOrchestrator(_durableOrchestrationContextMock, _loggerMock);

            Mock.Assert(() => _durableOrchestrationContextMock.CallActivityAsync("SaveCharge", Arg.IsAny <ChargeState>()), Occurs.Never());
            Mock.Assert(() => _durableOrchestrationContextMock.SignalEntity(entityId, "Set", Arg.IsAny <ChargingStatus>()), Occurs.Once());
        }
Пример #21
0
        public void SendUnknownMesssageTest()
        {
            IMessageBus messageBus = new SimpleMessageBus();
            IFakeHost   host       = GetFakeHostMocked(messageBus);

            host.Init(messageBus);

            messageBus.SendMessage(MESSAGE_UNKNOWN, this, MessageActionType.Add);

            Mock.Assert(() => host.OnMessageOneReceived(Arg.IsAny <Message>()), Occurs.Never());
            Mock.Assert(() => host.OnMessageOneReceivedExtended(Arg.IsAny <Message>()), Occurs.Never());
            Mock.Assert(() => host.OnMessageTwoReceived(Arg.IsAny <Message>()), Occurs.Never());
        }
Пример #22
0
        public void Assert(object target, MethodInfo method, string localFunctionName, Occurs occurs, params object[] args)
        {
            ProfilerInterceptor.GuardInternal(() =>
            {
                Type type = target.GetType();
                MethodInfo localFunction = MockingUtil.GetLocalFunction(type, method, localFunctionName, null);

                Mock.NonPublic.Assert(target, localFunction, occurs, args);
            });
        }
Пример #23
0
		/// <summary>
		/// Assert a method on an exported mock.
		/// </summary>
		/// <typeparam name="TObject">The type of the exported mock.</typeparam>
		/// <param name="this">The mocking container.</param>
		/// <param name="expression">The method to assert.</param>
		/// <param name="occurs">Occurrence expectation.</param>
		public static void Assert<TObject>(this MockExportProvider @this, Expression<Func<TObject, object>> expression, Occurs occurs)
		{
			@this.GetExportedValue<TObject>().Assert(expression, occurs);
		}
Пример #24
0
        public void Assert(object target, string methodName, Type[] methodParamTypes, string localFunctionName, Occurs occurs, Type[] methodGenericTypes, Type[] localFunctionGenericTypes, params object[] args)
        {
            ProfilerInterceptor.GuardInternal(() =>
            {
                MethodInfo method         = MockingUtil.GetMethodWithLocalFunction(target, methodName, methodParamTypes, methodGenericTypes);
                List <Type> combinedTypes = new List <Type>();
                combinedTypes.AddRange(methodGenericTypes);
                combinedTypes.AddRange(localFunctionGenericTypes);

                MethodInfo localMethod = MockingUtil.GetLocalFunction(target.GetType(), method, localFunctionName, combinedTypes.ToArray());

                Mock.NonPublic.Assert(target, localMethod, occurs, args);
            });
        }
Пример #25
0
		/// <summary>
		/// Assert a method on an exported mock.
		/// </summary>
		/// <typeparam name="TObject">The type of the exported mock.</typeparam>
		/// <param name="this">The mocking container.</param>
		/// <param name="contractName">The contract name identifying the exported mock.</param>
		/// <param name="expression">The method to assert.</param>
		/// <param name="occurs">Occurrence expectation.</param>
		public static void Assert<TObject>(this MockExportProvider @this, string contractName, Expression<Action<TObject>> expression, Occurs occurs)
		{
			@this.GetExportedValue<TObject>(contractName).Assert(expression, occurs);
		}
Пример #26
0
        public void ShouldAssertSetPropertyOccurenceForAnyValue()
        {
            var foo = Mock.Create <IFoo>();

            Mock.ArrangeSet(() => foo.EffectiveFrom = DateTime.Now).IgnoreArguments();

            foo.EffectiveFrom = DateTime.Now;

            Assert.Throws <AssertionException>(() => Mock.AssertSet(() => foo.EffectiveFrom = Arg.IsAny <DateTime>(), Occurs.Never()));
        }
        public void Encode_The_Password()
        {
            const string password = "******";

            Client.Arrange(cl => cl.GetRawResultOfBasicPostRequest(Arg.AnyString)).Returns(RawResponseJson);

            Target.AuthorizeUser(Username, password);

            Client.Assert(cl => cl.GetRawResultOfBasicPostRequest($"{WordpressService.AuthEndpoint}?username={Username}&password=badpass%26"), Occurs.Once());
        }
Пример #28
0
        public void MouseDownTest()
        {
            var            rect = Mock.Create <RectangleFigure>(() => new RectangleFigure());
            MouseEventArgs e    = new MouseEventArgs(MouseButtons.Left, new int(), new int(), new int(), new int());

            rect.MouseDown(new List <PointF>(), e, new int(), new List <ITypesFigures>());
            Mock.Assert(() => rect.MouseDown(new List <PointF>(), e, new int(), new List <ITypesFigures>()), Occurs.AtLeastOnce());
        }
Пример #29
0
        public void OnTransactionFinalized_DoesNotCallTransform_IfTransactionWasAlreadyFinished()
        {
            var startTime = DateTime.Now;
            var segments  = new Segment[]
            {
                GetFinishedSegment(startTime, startTime.AddSeconds(0), TimeSpan.FromSeconds(3)),
                GetFinishedSegment(startTime, startTime.AddSeconds(1), TimeSpan.FromSeconds(1)),
                GetFinishedSegment(startTime, startTime.AddSeconds(2), TimeSpan.FromSeconds(1)),
            };
            var transaction       = BuildTestTransaction(segments, startTime);
            var mockedTransaction = Mock.Create <IInternalTransaction>();

            Mock.Arrange(() => mockedTransaction.Finish()).Returns(false);
            Mock.Arrange(() => mockedTransaction.ConvertToImmutableTransaction()).Returns(transaction);

            var transactionMetricName = new TransactionMetricName("c", "d");

            Mock.Arrange(() => _transactionMetricNameMaker.GetTransactionMetricName(Arg.IsAny <ITransactionName>())).Returns(transactionMetricName);

            EventBus <TransactionFinalizedEvent> .Publish(new TransactionFinalizedEvent(mockedTransaction));

            Mock.Assert(() => _transactionTransformer.Transform(Arg.IsAny <IInternalTransaction>()), Occurs.Never());
        }
Пример #30
0
 internal GroupingInfo(ContentModelType cmType, Occurs occursInSchema) {
     this.contentModelType = cmType;
     this.occursInSchema = occursInSchema;
     this.contentType = ContentType.Grouping;
     if ((int)occursInSchema > (int)Occurs.ZeroOrOne) {
         groupingFlags |= GroupingFlags.Repeating;
     }
 }
Пример #31
0
 /// <summary>
 /// Assert a method on an registered mock.
 /// </summary>
 /// <typeparam name="TDependency">The type of the registered mock.</typeparam>
 /// <param name="container">The mocking container.</param>
 /// <param name="expression">The method to assert.</param>
 /// <param name="occurs">Occurrence expectation.</param>
 public static void Assert <TDependency>(this IUnityContainer container, Expression <Func <TDependency, object> > expression, Occurs occurs)
 {
     container.RegisterMock <TDependency>().Assert(expression, occurs);
 }
Пример #32
0
 internal ClrPropertyInfo(
     string propertyName,
     string propertyNs,
     string schemaName,
     Occurs occursInSchema)
 {
     this.contentType = ContentType.Property;
     this.propertyName = propertyName;
     this.propertyNs = propertyNs;
     this.schemaName = schemaName;
     this.hasSet = true;
     this.returnType = null;
     this.clrTypeName = null;
     this.occursInSchema = occursInSchema;
     if (this.occursInSchema > Occurs.ZeroOrOne)
     {
         this.propertyFlags |= PropertyFlags.IsList;
     }
     if (this.IsOptional)
     {
         this.propertyFlags |= PropertyFlags.IsNullable;
     }
     XNameGetExpression();
 }
Пример #33
0
        public void ShouldNotThrowDuringAssertForCallOriginalWhenNoArrangeSpecified()
        {
            var foo = Mock.Create <FooWithSetThatThows>(Behavior.CallOriginal);

            Mock.AssertSet(() => foo.Value = Arg.AnyInt, Occurs.Never());
        }