コード例 #1
0
        private IMethodReturnMessage SyncProcessMessageOnServer(IMethodCallMessage mcm)
        {
            IMethodReturnMessage response;

            // Invoke instance method:
            response = (IMethodReturnMessage)nextMessageSink.SyncProcessMessage(mcm);
            // Return a wrapped result:
            return(MockingTools.BuildReturnMessage(response, mcm));
        }
コード例 #2
0
        private async void Test_Questions_Day_1_q1()
        {
            var dbContextMoq = new Mock <LearnAspDotNetCoreContext>();

            //Mock Save Changes Async being called on
            dbContextMoq.Setup(moq => moq.SaveChangesAsync(It.IsAny <CancellationToken>()))
            .Returns(Task.FromResult(It.IsAny <int>())).Verifiable();



            String testString = "Second Fake Test";

            var fakeTest = new Test()
            {
                Title = testString
            };

            var fakeTestComp = new TestComposite()
            {
                test = fakeTest
            };

            var mockTestDbSet = MockingTools.GetMockDbSetOrginal <Test>(new Test()
            {
                Title = "First Fake Test"
            });

            //Mock Add function for TestDbSet
            mockTestDbSet.Setup(moq => moq.Add(It.IsAny <Test>()))
            .Returns(It.IsAny <EntityEntry <Test> >()).Verifiable();

            //dbContextMoq.Setup(moq => moq.Test).Returns(mockTestDbSet.Object);

            dbContextMoq.Object.Test = mockTestDbSet.Object;

            //inject mock dbcontext
            var questController = new QuestionController(dbContextMoq.Object);

            //Wait until controller is finished doing function
            var result = await questController.Questions_Day_1_q1(fakeTestComp);

            //Asserts
            var redirectAction = Assert.IsType <RedirectToActionResult>(result);

            Assert.Equal("Questions_Day_1", redirectAction.ActionName);

            //Verify that all mocked functions were called
            mockTestDbSet.Verify();
            dbContextMoq.Verify();
        }
コード例 #3
0
        public void TestQuestions_Day_1()
        {
            var dbContextTest = new LearnAspDotNetCoreContext();

            var testObjectMock = MockingTools.GetMockDbSet <Test>(this.GenerateTestObjects());

            dbContextTest.Test = testObjectMock;

            QuestionController questionController = new QuestionController(dbContextTest);

            var result = questionController.Questions_Day_1();

            var viewResult = Assert.IsType <ViewResult>(result);

            Console.WriteLine("Checking View Name - " + viewResult.ViewName);
            Console.WriteLine(viewResult.ViewName);
            var model = Assert.IsAssignableFrom <TestComposite>(
                viewResult.ViewData.Model);

            Assert.Equal(2, model.tests.Count());

            Assert.Equal("Test 1", model.tests[0].Title);
        }
コード例 #4
0
        private void PlainObjectMockingTest_Scenario(bool mocking, bool plainInstanceCreation)
        {
            // Create instance of a plain object (not a MarshalByRef) for mocking:
            Sample.PlainCurrencyService.WatchInstanceCreation();
            Sample.ICurrencyService serv = (Sample.ICurrencyService)MockingTools.Construct("cs", typeof(Sample.PlainCurrencyService), typeof(Sample.ICurrencyService));

            decimal d1, d2, r1, r2;

            d1 = serv.ConvertAmount(100m, Sample.CurrencyUnit.GBP, Sample.CurrencyUnit.USD);
            d2 = serv.ConvertAmount(d1, Sample.CurrencyUnit.USD, Sample.CurrencyUnit.GBP);

            r1 = serv.GetRate(Sample.CurrencyUnit.USD);
            r2 = serv.GetRate(Sample.CurrencyUnit.GBP);

            // Check mocking:
            Assert.AreEqual(mocking, MockService.IsMock(serv), "Mock should have been created.");
            Assert.AreEqual(plainInstanceCreation, Sample.PlainCurrencyService.IsInstanceCreated);

            // Check call results:
            Assert.AreNotEqual(100m, d1);
            Assert.AreEqual(100m, d2);
            Assert.AreEqual(1.2m, r1);
            Assert.AreEqual(0.7m, r2);
        }