Exemplo n.º 1
0
        /// <summary>
        /// Lists installed DarkRift versions on the console along with the documentation
        /// </summary>
        public void PrintInstalledVersions()
        {
            // Since the free version only supports .Net Framework I'm not adding support here
            List <DarkRiftInstallation> freeInstallations = installationManager.GetVersions(ServerTier.Free, ServerPlatform.Framework);

            List <DarkRiftInstallation> proFrameworkInstallations = installationManager.GetVersions(ServerTier.Pro, ServerPlatform.Framework);
            List <DarkRiftInstallation> proCoreInstallations      = installationManager.GetVersions(ServerTier.Pro, ServerPlatform.Core);

            if (freeInstallations.Count == 0 && proFrameworkInstallations.Count == 0 && proCoreInstallations.Count == 0)
            {
                Console.Error.WriteLine(Output.Red($"You don't have any versions of DarkRift installed"));
                return;
            }

            foreach (DarkRiftInstallation installation in freeInstallations)
            {
                PrintVersion(installation, documentationManager.GetInstallation(installation.Version) != null);
            }
            foreach (DarkRiftInstallation installation in proFrameworkInstallations)
            {
                PrintVersion(installation, documentationManager.GetInstallation(installation.Version) != null);
            }
            foreach (DarkRiftInstallation installation in proCoreInstallations)
            {
                PrintVersion(installation, documentationManager.GetInstallation(installation.Version) != null);
            }
        }
Exemplo n.º 2
0
        public void TestGetVersionsWhenNonePresent()
        {
            // GIVEN the search directory does not exist
            mockIFileUtility.Setup(f => f.DirectoryExists(Path.Combine("a-dir", "pro"))).Returns(false);

            // WHEN I get the installed versions
            InstallationManager         classUnderTest = new InstallationManager(null, mockIFileUtility.Object, "a-dir", null);
            List <DarkRiftInstallation> result         = classUnderTest.GetVersions(ServerTier.Pro);

            // THEN the result is an empty array
            Assert.AreEqual(0, result.Count);
        }
        public void TestGetVersions()
        {
            // GIVEN at least version is available
            mockIFileUtility.Setup(f => f.DirectoryExists(Path.Combine("a-dir", "pro", "core"))).Returns(true);
            mockIFileUtility.Setup(f => f.GetDirectories(Path.Combine("a-dir", "pro", "core"))).Returns(new string[] { "dir1", "dir2" });

            // WHEN I get the installed versions
            InstallationManager         classUnderTest = new InstallationManager(null, mockIFileUtility.Object, "a-dir", null);
            List <DarkRiftInstallation> result         = classUnderTest.GetVersions(ServerTier.Pro, ServerPlatform.Core);

            // THEN the result is the correct DarkRiftInstallation objects
            Assert.AreEqual(2, result.Count);

            Assert.AreEqual("dir1", result[0].Version);
            Assert.AreEqual(ServerTier.Pro, result[0].Tier);
            Assert.AreEqual(ServerPlatform.Core, result[0].Platform);
            Assert.AreEqual(Path.Combine("a-dir", "pro", "core", "dir1"), result[0].InstallationPath);

            Assert.AreEqual("dir2", result[1].Version);
            Assert.AreEqual(ServerTier.Pro, result[1].Tier);
            Assert.AreEqual(ServerPlatform.Core, result[1].Platform);
            Assert.AreEqual(Path.Combine("a-dir", "pro", "core", "dir2"), result[1].InstallationPath);
        }