コード例 #1
0
ファイル: SubmitContextTests.cs プロジェクト: aTiKhan/RESTier
 /// <summary>
 /// Initializes a new instance of the <see cref="SubmitContextTests"/> class.
 /// </summary>
 public SubmitContextTests()
 {
     serviceProviderFixture = new ServiceProviderMock();
     api       = new TestApi(serviceProviderFixture.ServiceProvider.Object);
     changeSet = new ChangeSet();
     testClass = new SubmitContext(api, changeSet);
 }
コード例 #2
0
        public static void ErrorWhenBindingStringFormatAndExplicitStringFormat()
        {
            var converter = new LengthConverter
            {
                StringFormat = "F1 mm",
            };

            var providerMock = new ServiceProviderMock
            {
                BindingStringFormat = "F2 cm",
            };

            converter.ProvideValue(providerMock.Object);
            var length = Length.FromMillimetres(1234);

            Wpf.Is.DesignMode = true;
            var ex       = Assert.Throws <InvalidOperationException>(() => converter.Convert(length, typeof(string), null, null));
            var expected = "ValueFormat cannot be set when Binding.StringFormat is a unit format.\r\n" +
                           "Ambiguous units StringFormat: {0:F1} mm Binding.StringFormat: {0:F2} cm";

            Assert.AreEqual(expected, ex.Message);

            Wpf.Is.DesignMode = false;
            var convert = converter.Convert(length, typeof(string), null, null);

            Assert.AreEqual(expected, convert);
        }
コード例 #3
0
ファイル: ModelContextTests.cs プロジェクト: aTiKhan/RESTier
        /// <summary>
        /// Initializes a new instance of the <see cref="ModelContextTests"/> class.
        /// </summary>
        public ModelContextTests()
        {
            var serviceProvider = new ServiceProviderMock().ServiceProvider.Object;

            api       = new TestApi(serviceProvider);
            testClass = new ModelContext(api);
        }
コード例 #4
0
        public void ValidateServiceResponseAndPublishException_PublishException()
        {
            var    eventPublished = false;
            string traceId        = "exId",
                   eventKey       = "ek";
            var wc = new WorkContext
            {
                CurrentEntityConfigRecord = new EntityConfigRecord {
                    EventKeys = new EventKeyRecord("create", null, null, null)
                },
                TraceId = traceId
            };
            var eb = new Mock <IEventBus>();

            eb.Setup(e => e.Publish(It.Is <string>(s => s == eventKey), It.Is <DomainEvent>(d => d.Data.GetPropertyValueByName <string>("TraceId") == traceId)))
            .Callback(() => eventPublished = true);

            ServiceProviderMock.Setup(s => s.GetService(typeof(IEventBus))).Returns(eb.Object);
            ServiceProviderMock.Setup(s => s.GetService(typeof(WorkContext))).Returns(wc);

            ServiceResponseWrapperExtensions.Init(ServiceProviderMock.Object);

            var serviceResponse = new ServiceResponse <object>();
            var w  = new ServiceResponseWrapper(serviceResponse);
            var pi = typeof(ServiceResponseWrapper).GetProperty("Exception");

            pi.SetValue(w, new Exception());

            ServiceResponseWrapperExtensions.ValidateServiceResponseAndPublishException <object>(w, eventKey, "ddd");
            eventPublished.ShouldBeTrue();
            serviceResponse.TraceId.ShouldBe(traceId);
        }
コード例 #5
0
        /// <summary>
        /// Initializes a new instance of the <see cref="InvocationContextTests"/> class.
        /// </summary>
        public InvocationContextTests()
        {
            var serviceProvider = new ServiceProviderMock();

            api       = new TestApi(serviceProvider.ServiceProvider.Object);
            testClass = new InvocationContext(api);
        }
        public async Task TestFindToolWindow_ReturnsExistingInstance()
        {
            Mock <IVsUIShell> uiShellMock = ServiceProviderMock.SetupService <SVsUIShell, IVsUIShell>();
            Guid classId         = Guid.Empty;
            Guid activate        = Guid.Empty;
            Guid persistenceSlot = typeof(LogsViewerToolWindow).GUID;
            // ReSharper disable once RedundantAssignment
            IVsWindowFrame frame = VsWindowFrameMocks.GetMockedWindowFrame();

            uiShellMock.Setup(
                shell => shell.CreateToolWindow(
                    It.IsAny <uint>(),
                    It.IsAny <uint>(),
                    It.IsAny <object>(),
                    ref classId,
                    ref persistenceSlot,
                    ref activate,
                    It.IsAny <IServiceProvider>(),
                    It.IsAny <string>(),
                    It.IsAny <int[]>(),
                    out frame))
            .Returns(VSConstants.S_OK);

            await RunPackageInitializeAsync();

            _objectUnderTest.AddService(
                typeof(SVsUIShell),
                (container, token, type) => Task.FromResult <object>(uiShellMock.Object));
            var toolWindow     = _objectUnderTest.FindToolWindow <LogsViewerToolWindow>(true);
            var existingWindow = _objectUnderTest.FindToolWindow <LogsViewerToolWindow>(false);

            Assert.AreEqual(toolWindow, existingWindow);
        }
コード例 #7
0
        public void InitWpfServiceProvider()
        {
            // Allow previous windows to die before bringing up a new one.
            Dispatcher.CurrentDispatcher.Invoke(() => { }, DispatcherPriority.ApplicationIdle);

            _packageMock = new Mock <Package> {
                CallBase = true
            };

            Mock <IVsSettingsManager> settingsManagerMock =
                ServiceProviderMock.SetupService <SVsSettingsManager, IVsSettingsManager>();

            // ReSharper disable once RedundantAssignment
            var intValue = 0;
            // ReSharper disable once RedundantAssignment
            var store = Mock.Of <IVsSettingsStore>(
                ss => ss.GetIntOrDefault(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <int>(), out intValue) == 0);

            settingsManagerMock.Setup(sm => sm.GetReadOnlySettingsStore(It.IsAny <uint>(), out store)).Returns(0);

            ServiceProviderMock.SetupService <IVsUIShell, IVsUIShell>();

            // Reset the service provider in an internal microsoft class.
            Type         windowHelper            = typeof(Microsoft.Internal.VisualStudio.PlatformUI.WindowHelper);
            PropertyInfo serviceProviderProperty =
                windowHelper.GetProperty("ServiceProvider", BindingFlags.NonPublic | BindingFlags.Static);

            Debug.Assert(serviceProviderProperty != null);
            serviceProviderProperty.SetMethod.Invoke(null, new object[] { null });

            // Set the global service provider.
            RunPackageInitalize();
        }
コード例 #8
0
        public void NewGameShouldCreateNewGameFromMoves()
        {
            //arrange
            ServiceProviderMock
            .Setup(a => a.GetService(typeof(IGame)))
            .Returns(GameMock.Object);

            var movesToMake = new[] {
                Move.Center,
                Move.Western,
                Move.Eastern
            };

            GameMock
            .Setup(a => a.IsMoveValid(It.Is <Move>(b => movesToMake.Contains(b))))
            .Returns(true);

            //act
            var newGame = TicTacToeFactory.NewGame(movesToMake);

            //assert
            newGame.Should().BeSameAs(GameMock.Object);

            GameMock
            .Verify(a => a.Move(Move.Center), Times.Once());
            GameMock
            .Verify(a => a.Move(Move.Western), Times.Once());
            GameMock
            .Verify(a => a.Move(Move.Eastern), Times.Once());
        }
        public void TestInitialize()
        {
            var taskSchedulerMock = new Mock <IVsTaskSchedulerService>();
            Mock <IVsTaskSchedulerService2> taskScheduler2Mock = taskSchedulerMock.As <IVsTaskSchedulerService2>();

            taskSchedulerMock.Setup(ts => ts.CreateTaskCompletionSource())
            .Returns(() => new FakeIVsTaskCompletionSource());
            taskScheduler2Mock.Setup(ts => ts.GetAsyncTaskContext())
            .Returns(AssemblyInitialize.JoinableApplicationContext);
            taskScheduler2Mock.Setup(ts => ts.GetTaskScheduler(It.IsAny <uint>()))
            .Returns((uint context) => FakeIVsTask.GetSchedulerFromContext((__VSTASKRUNCONTEXT)context));

            DteMock             = new Mock <DTE>().As <DTE2>();
            ServiceProviderMock = DteMock.As <IServiceProvider>();
            ServiceProviderMock.SetupService <SDTE, DTE2>(DteMock);
            ServiceProviderMock.SetupService <DTE, DTE2>(DteMock);
            ComponentModelMock =
                ServiceProviderMock.SetupService <SComponentModel, IComponentModel>(DefaultValueProvider.Mock);
            ServiceProviderMock.SetupService <SVsTaskSchedulerService, IVsTaskSchedulerService2>(taskScheduler2Mock);
            ServiceProviderMock.SetupDefaultServices();

            ServiceProvider oldProvider = ServiceProvider.GlobalProvider;

            ServiceProvider.CreateFromSetSite(ServiceProviderMock.Object);
            Assert.AreNotEqual(oldProvider, ServiceProvider.GlobalProvider);
        }
コード例 #10
0
 public void TestInitalize()
 {
     DteMock             = new Mock <DTE>();
     ServiceProviderMock = DteMock.As <IServiceProvider>();
     ServiceProviderMock.SetupService <DTE, DTE>(DteMock);
     ComponentModelMock = ServiceProviderMock.SetupService <SComponentModel, IComponentModel>();
     ComponentModelMock.DefaultValueProvider = DefaultValueProvider.Mock;
     ServiceProviderMock.SetupDefaultServices();
 }
コード例 #11
0
        public void VsWhidbey604087()
        {
            // Make sure that an exception during a flush doesn't crash
            //   VS.

            //Prepare
            const string basePath = "c:\\temp\\Fake\\";

            ServiceProviderMock spMock = new ServiceProviderMock();

            spMock.Fake_AddUiServiceFake();
            Mock <IComponentChangeService> componentChangeServiceMock = new Mock <IComponentChangeService>();

            componentChangeServiceMock.Implement("add_ComponentChanged",
                                                 new object[] { MockConstraint.IsAnything <ComponentChangedEventHandler>() });
            componentChangeServiceMock.Implement("add_ComponentRename",
                                                 new object[] { MockConstraint.IsAnything <ComponentRenameEventHandler>() });
            componentChangeServiceMock.Implement("add_ComponentRemoved",
                                                 new object[] { MockConstraint.IsAnything <ComponentEventHandler>() });
            componentChangeServiceMock.Implement("add_ComponentAdded",
                                                 new object[] { MockConstraint.IsAnything <ComponentEventHandler>() });
            spMock.Fake_AddService(typeof(IComponentChangeService), componentChangeServiceMock.Instance);
            Mock <IVsHierarchy> hierarchyMock = new Mock <IVsHierarchy>(typeof(IVsProject));

            hierarchyMock.Implement(new MethodId(typeof(IVsProject), "GetItemContext"),
                                    new object[] { (uint)VSITEMID.ROOT, MockConstraint.IsAnything <Microsoft.VisualStudio.OLE.Interop.IServiceProvider>() },
                                    new object[] { (uint)0, null },
                                    VSConstants.E_FAIL);
            spMock.Fake_AddService(typeof(IVsHierarchy), hierarchyMock.Instance);

            ResourceEditorRootComponent rootComponent = new ResourceEditorRootComponent();

            Mock <ResourceFile> resourceFileMock = new Mock <ResourceFile>();

            resourceFileMock.SetCreateArguments(new object[] { null, rootComponent, spMock.Instance, basePath });
            SequenceMock <ResourceEditorDesignerLoader> designerLoaderMock = new SequenceMock <ResourceEditorDesignerLoader>();
            ResourceEditorViewMock view = new ResourceEditorViewMock(spMock.Instance);

            view.Fake_designerLoader = designerLoaderMock.Instance;
            resourceFileMock.Implement("get_View", view);
            Dictionary <string, object> styles = new Dictionary <string, object>();

            //Make The RunSingleFileGenerator call throw an exception, and make sure we don't
            //  blow up because of it.
            designerLoaderMock.AddExpectation("RunSingleFileGenerator",
                                              new object[] { true },
                                              new Exception("Whoops"));

            //Run test
            Microsoft_VisualStudio_Editors_ResourceEditor_ResourceFileAccessor accessor = new Microsoft_VisualStudio_Editors_ResourceEditor_ResourceFileAccessor(resourceFileMock.Instance);

            accessor.DelayFlushAndRunCustomToolImpl();

            //Verify
            Assert.AreEqual("Whoops", view.FakeResult_DSMsgBoxWasCalledWithThisString);
            designerLoaderMock.Verify();
        }
コード例 #12
0
        public async Task TestGetServiceSI_GetsServiceOfTypeIRegisteredByS()
        {
            Mock <IVsSolution> solutionMock = ServiceProviderMock.SetupService <SVsSolution, IVsSolution>();

            await RunPackageInitalizeAsync();

            IVsSolution service = _objectUnderTest.GetService <SVsSolution, IVsSolution>();

            Assert.AreEqual(solutionMock.Object, service);
        }
コード例 #13
0
 public AbstractTest()
 {
     _tracingService  = new TracingServiceTest();
     _service         = new OrganizationServiceMock();
     _serviceProvider = new ServiceProviderMock()
     {
         Service = _service
     };
     _pluginExecutionContext = new PluginExecutionContextMock();
 }
コード例 #14
0
        public void NewArtificialIntelligenceShouldCreateBruteForceAI()
        {
            //arrange

            //act
            var newAi = TicTacToeFactory.NewArtificialIntelligence(ArtificialIntelligenceTypes.BruteForce);

            //assert
            ServiceProviderMock
            .Verify(a => a.GetService(typeof(BruteForce)), Times.Once());
        }
コード例 #15
0
        public void NewArtificialIntelligenceShouldCreateOmniscientGodAI()
        {
            //arrange

            //act
            var newAi = TicTacToeFactory.NewArtificialIntelligence(ArtificialIntelligenceTypes.OmniscientGod);

            //assert
            ServiceProviderMock
            .Verify(a => a.GetService(typeof(OmniscientGod)), Times.Once());
        }
コード例 #16
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ConventionBasedQueryExpressionProcessorTests"/> class.
        /// </summary>
        public ConventionBasedQueryExpressionProcessorTests()
        {
            var serviceProviderFixture = new ServiceProviderMock();

            serviceProvider = serviceProviderFixture.ServiceProvider.Object;
            Type type = typeof(Test);

            serviceProviderFixture.ModelMapper
            .Setup(x => x.TryGetRelevantType(It.IsAny <ModelContext>(), It.IsAny <string>(), out type))
            .Returns(true);
            Trace.Listeners.Add(testTraceListener);
        }
コード例 #17
0
        public void NewGameShouldCreateNewGame()
        {
            //arrange
            ServiceProviderMock
            .Setup(a => a.GetService(typeof(IGame)))
            .Returns(GameMock.Object);

            //act
            var newGame = TicTacToeFactory.NewGame();

            //assert
            newGame.Should().BeSameAs(GameMock.Object);
        }
コード例 #18
0
        public static void WithBindingStringFormat(Type targetType, string stringFormat)
        {
            var converter    = new LengthConverter();
            var providerMock = new ServiceProviderMock
            {
                BindingStringFormat = stringFormat,
            };

            converter.ProvideValue(providerMock.Object);
            var length = Length.FromMillimetres(1234);
            var actual = converter.Convert(length, targetType, null, null);

            Assert.AreEqual(length, actual);
        }
コード例 #19
0
        protected void Init()
        {
            this.PluginExecutionContextMock     = new Mock <IPluginExecutionContext>();
            this.TracingServiceMock             = new Mock <ITracingService>();
            this.OrganizationServiceFactoryMock = new Mock <IOrganizationServiceFactory>();

            InitPluginExecutionContextMock(PluginExecutionContextMock);

            ServiceProviderMock.Setup(provider => provider.GetService(typeof(ITracingService))).Returns(TracingServiceMock.Object);
            ServiceProviderMock.Setup(provider => provider.GetService(typeof(IOrganizationServiceFactory))).Returns(OrganizationServiceFactoryMock.Object);
            ServiceProviderMock.Setup(provider => provider.GetService(typeof(IPluginExecutionContext))).Returns(PluginExecutionContextMock.Object);

            OrganizationServiceFactoryMock.Setup(factory => factory.CreateOrganizationService(It.IsAny <Guid?>())).Returns(OrganizationService);
        }
コード例 #20
0
        /// <summary>
        /// Initializes a new instance of the <see cref="QueryExpressionContextTests"/> class.
        /// </summary>
        public QueryExpressionContextTests()
        {
            serviceProviderFixture = new ServiceProviderMock();
            var api             = new TestApi(serviceProviderFixture.ServiceProvider.Object);
            var queryableSource = new QueryableSource <Test>(Expression.Constant(new Mock <IQueryable>().Object));
            var request         = new QueryRequest(queryableSource);

            queryContext = new QueryContext(api, request);
            testClass    = new QueryExpressionContext(queryContext);
            var type       = typeof(DataSourceStub);
            var methodInfo = type.GetMethods(BindingFlags.Public | BindingFlags.Static).Where(x => x.Name == "GetQueryableSource");

            testGetQuerableSource = methodInfo.First().MakeGenericMethod(new Type[] { typeof(Test) });
        }
        public async Task TestGetServiceSI_GetsServiceOfTypeIRegisteredByS()
        {
            Mock <IVsSolution> solutionMock = ServiceProviderMock.SetupService <SVsSolution, IVsSolution>();

            await RunPackageInitializeAsync();

            _objectUnderTest.AddService(
                typeof(SVsSolution),
                (container, token, type) => Task.FromResult <object>(solutionMock.Object));

            IVsSolution service = _objectUnderTest.GetService <SVsSolution, IVsSolution>();

            Assert.AreEqual(solutionMock.Object, service);
        }
コード例 #22
0
        public void SmokeTest()
        {
            ServiceProviderMock
            .Setup(sp => sp.GetService(typeof(TestValidator1)))
            .Returns(() => new TestValidator1());

            var provider = new ValidatorProvider(ServiceProviderMock.Object, LoggerMock.Object);
            var result   = provider.GetValidator(nameof(TestValidator1));

            ServiceProviderMock
            .Verify(sp => sp.GetService(typeof(TestValidator1)), Times.Once());

            Assert.IsType <TestValidator1>(result);
        }
コード例 #23
0
            public void CanGetValidator()
            {
                var validator     = new TestValidator();
                var validatorType = validator.GetType();

                ServiceProviderMock
                .Setup(sp => sp.GetService(validatorType))
                .Returns(() => validator);

                var result = Target.GetValidator(ValidatorUtility.GetValidatorName(validatorType));

                ServiceProviderMock
                .Verify(sp => sp.GetService(validatorType), Times.Once);
                Assert.IsType(validatorType, result);
            }
コード例 #24
0
    public async Task TestReturnCorrectValuesForIApplicationContextUsingAppBase()
    {
        // ARRANGE
        var serviceProviderMock = new ServiceProviderMock();

        await using var ctx = new AppBaseApplicationContext(typeof(FakeNetDaemonAppBase), "id", serviceProviderMock.Object);
        var iCtx = ctx as IApplicationContext;

        ctx.IsEnabled = true;

        // ACT & ASSERT
        Assert.Equal("id", iCtx.Id);
        Assert.Equal("switch.netdaemon_id", iCtx.EntityId);
        Assert.True(iCtx.IsEnabled);
    }
コード例 #25
0
        public static void WithBindingStringFormatNull(Type targetType, object expected)
        {
            var converter = new LengthConverter {
                Unit = LengthUnit.Metres
            };
            var providerMock = new ServiceProviderMock
            {
                BindingStringFormat = null,
            };

            converter.ProvideValue(providerMock.Object);
            var length = Length.FromMillimetres(1234);
            var actual = converter.Convert(length, targetType, null, CultureInfo.GetCultureInfo("sv-SE"));

            Assert.AreEqual(expected, actual);
        }
コード例 #26
0
        public async Task CreateSpecificDayCase_Correct()
        {
            //arrange
            String s_dateTime = "22-01-2018 17:30";
            String nameCase   = "specific_case_test";
            String command    = String.Join(StringConstants.SPACE, TelegramCommandConstants.CREATE_SPECIFIC_DATE_CASE, nameCase, s_dateTime);

            Message expectedMessage = new Message()
            {
                Text = CaseMessages.CaseAdded(ScheduleType.ConcretyDate, nameCase, s_dateTime)
            };

            ServiceProviderMock.TryAddServiceMock <ICaseService>(new CaseServiceMock().SetupConcretyDateCase(String.Empty));

            await TestTelegramCommand(command, expectedMessage);
        }
コード例 #27
0
        public static void ErrorWhenProvideValueTargetThrows()
        {
            var converter = new LengthConverter {
                Unit = LengthUnit.Metres
            };
            var providerMock = new ServiceProviderMock();

            providerMock.ProvideValueTargetMock.Setup(x => x.TargetObject).Throws <NullReferenceException>();
            Wpf.Is.DesignMode = true;
            Assert.Throws <InvalidOperationException>(() => converter.ProvideValue(providerMock.Object));

            Wpf.Is.DesignMode = false;
            var length = Length.FromMillimetres(1234);
            var actual = converter.Convert(length, typeof(string), null, null);

            Assert.AreEqual("Touching provideValueTarget?.TargetObject threw", actual);
        }
コード例 #28
0
    public async Task TestReturnCorrectValuesForIApplicationContextUsingNonAppBase()
    {
        // ARRANGE
        var serviceProviderMock    = new ServiceProviderMock();
        var persistenceServiceMock = new Mock <IPersistenceService>();

        serviceProviderMock.Services.Add(typeof(IPersistenceService), persistenceServiceMock.Object);

        await using var ctx = new NonBaseApplicationContext(typeof(FakeNetDaemonAppBase), "no_app_base_app_id", serviceProviderMock.Object);
        var iCtx = ctx as IApplicationContext;

        ctx.IsEnabled = false;

        // ACT & ASSERT
        Assert.Equal("no_app_base_app_id", iCtx.Id);
        Assert.Equal("switch.netdaemon_no_app_base_app_id", iCtx.EntityId);
        Assert.False(iCtx.IsEnabled);
    }
コード例 #29
0
        public async Task CreateDailyCase_Correct()
        {
            //arrange
            String time     = "18:30";
            String nameCase = "daily_case_test";
            String command  = String.Join(StringConstants.SPACE, TelegramCommandConstants.CREATE_DAILY_CASE, nameCase, time);

            //Response message
            Message expectedMessage = new Message()
            {
                Text = CaseMessages.CaseAdded(ScheduleType.Daily, nameCase, time)
            };

            //Mocks
            ServiceProviderMock.TryAddServiceMock <ICaseService>(new CaseServiceMock().SetupDailyCase(String.Empty));

            await TestTelegramCommand(command, expectedMessage);
        }
コード例 #30
0
        public static void WithExplicitUnitAndBindingNonUnitStringFormat(Type targetType, object expected)
        {
            var converter = new LengthConverter
            {
                Unit = LengthUnit.Centimetres,
            };

            var providerMock = new ServiceProviderMock
            {
                BindingStringFormat = "{}{0:F2}",
            };

            converter.ProvideValue(providerMock.Object);
            var length = Length.FromMillimetres(12);
            var actual = converter.Convert(length, targetType, null, null);

            Assert.AreEqual(expected, actual);
        }