コード例 #1
0
        public void TestConstructor_AddsGroupLinkChildren()
        {
            var objectUnderTest = new ConsoleLinksRoot(Mock.Of <ICloudSourceContext>());

            List <TreeNode> linkGroupChildren = objectUnderTest.Children
                                                .Skip(ConsoleLinksRoot.PrimaryConsoleLinkFormats.Count()).ToList();

            CollectionAssert.AllItemsAreInstancesOfType(linkGroupChildren, typeof(ConsoleLinkGroup));
            CollectionAssert.AreEqual(
                ConsoleLinksRoot.GroupedConsoleLinkFormats.Select(t => t.groupCaption).ToList(),
                linkGroupChildren.Select(c => c.Caption).ToList());
        }
コード例 #2
0
        public void TestNavigateCommand_NavigatesToUrlMissingProject()
        {
            var startProcessMock = new Mock <Func <string, Process> >();
            var objectUnderTest  = new ConsoleLinksRoot(
                Mock.Of <ICloudSourceContext>(c => c.CurrentProject == null), startProcessMock.Object);

            objectUnderTest.NavigateCommand.Execute(null);

            const string expectedUrl = "https://console.cloud.google.com/?project=";

            startProcessMock.Verify(f => f(expectedUrl), Times.Once);
        }
コード例 #3
0
        public void TestConstructor_AddsDirectLinkChildren()
        {
            var objectUnderTest = new ConsoleLinksRoot(Mock.Of <ICloudSourceContext>());

            List <TreeNode> directLinkChildren = objectUnderTest.Children
                                                 .Take(ConsoleLinksRoot.PrimaryConsoleLinkFormats.Count()).ToList();

            CollectionAssert.AllItemsAreInstancesOfType(directLinkChildren, typeof(ConsoleLink));
            CollectionAssert.AreEqual(
                ConsoleLinksRoot.PrimaryConsoleLinkFormats.Select(l => l.Caption).ToList(),
                directLinkChildren.Select(c => c.Caption).ToList());
        }
コード例 #4
0
        public void TestNavigateCommand_NavigatesToUrlOfCurrentProject()
        {
            var startProcessMock = new Mock <Func <string, Process> >();
            var contextMock      = new Mock <ICloudSourceContext>();
            var objectUnderTest  = new ConsoleLinksRoot(
                contextMock.Object, startProcessMock.Object);

            contextMock.Setup(c => c.CurrentProject.ProjectId).Returns("firstProjectId");
            objectUnderTest.NavigateCommand.Execute(null);
            contextMock.Setup(c => c.CurrentProject.ProjectId).Returns("secondProjectId");
            objectUnderTest.NavigateCommand.Execute(null);

            const string firstExpectedUrl  = "https://console.cloud.google.com/?project=firstProjectId";
            const string secondExpectedUrl = "https://console.cloud.google.com/?project=secondProjectId";

            startProcessMock.Verify(f => f(firstExpectedUrl), Times.Once);
            startProcessMock.Verify(f => f(secondExpectedUrl), Times.Once);
        }
コード例 #5
0
        public void TestConstructor_InitalizesNavigateCommand()
        {
            var objectUnderTest = new ConsoleLinksRoot(Mock.Of <ICloudSourceContext>());

            Assert.IsTrue(objectUnderTest.NavigateCommand.CanExecuteCommand);
        }
コード例 #6
0
        public void TestConstructor_SetsCaption()
        {
            var objectUnderTest = new ConsoleLinksRoot(Mock.Of <ICloudSourceContext>());

            Assert.AreEqual(ConsoleLinksRoot.s_consoleHomeFormatInfo.Caption, objectUnderTest.Caption);
        }
コード例 #7
0
        public void TestInvalidateProjectOrAccount_DoesNotThrow()
        {
            var objectUnderTest = new ConsoleLinksRoot(Mock.Of <ICloudSourceContext>());

            objectUnderTest.InvalidateProjectOrAccount();
        }
コード例 #8
0
        public void TestRefresh_DoesNotThrow()
        {
            var objectUnderTest = new ConsoleLinksRoot(Mock.Of <ICloudSourceContext>());

            objectUnderTest.Refresh();
        }