コード例 #1
0
        public void InstallUnitDescriptorFactoryDispatchesToNupkgDescriptorFactoryAndCreatesDescriptorTest()
        {
            EngineEnvironmentSettings.SettingsLoader.Components.Register(typeof(NupkgInstallUnitDescriptorFactory));

            string    serializedDescriptor = @"
{
    ""3A06B18C-224E-46E3-95EB-8E411DB61B0B"":
    {
        ""FactoryId"": """ + NupkgInstallUnitDescriptorFactory.FactoryId.ToString() + @""",
        ""MountPointId"": ""D1ADBDAF-0382-4EEA-A43C-8356A8BEFAA9"",
        ""Identifier"": ""TestPackage"",
        ""Details"": {
            ""Version"": ""1.2.3"",
            ""Author"": ""Microsoft"",
        }
    }
}";
            JObject   descriptorJObject    = JObject.Parse(serializedDescriptor);
            JProperty descriptorProperty   = descriptorJObject.Properties().First();

            Assert.True(InstallUnitDescriptorFactory.TryParse(EngineEnvironmentSettings, descriptorProperty, out IInstallUnitDescriptor parsedDescriptor));

            NupkgInstallUnitDescriptor nupkgDescriptor = parsedDescriptor as NupkgInstallUnitDescriptor;

            Assert.NotNull(nupkgDescriptor);

            Assert.Equal(NupkgInstallUnitDescriptorFactory.FactoryId, nupkgDescriptor.FactoryId);
            Assert.Equal("TestPackage", nupkgDescriptor.Identifier);
            Assert.Equal("D1ADBDAF-0382-4EEA-A43C-8356A8BEFAA9", nupkgDescriptor.MountPointId.ToString(), ignoreCase: true);
            Assert.Equal("1.2.3", nupkgDescriptor.Version);

            Assert.Equal("1.2.3", nupkgDescriptor.Details["Version"]);
        }
コード例 #2
0
        public void UpdateCheckerCorrectlyFindsUpdate()
        {
            EngineEnvironmentSettings.SettingsLoader.Components.Register(typeof(MockNupkgUpdater));

            // an updater that isn't related
            Guid unrelatedMountPointId = new Guid("44E776BF-0E75-43E3-97B0-1807B5207D90");
            IInstallUnitDescriptor unrelatedInstallDescriptor = new NupkgInstallUnitDescriptor(unrelatedMountPointId, "unrelatedPackage", "2.0.0");
            IUpdateUnitDescriptor  unrelatedUpdateDescriptor  = new UpdateUnitDescriptor(unrelatedInstallDescriptor, "unrelatedPackage::2.1.0", "Unrelated Package Version 2.1.0");

            // the update that should be found
            Guid mockMountPointId = new Guid("1EB31CA7-28C2-4AAD-B994-32A96A2EACB7");
            IInstallUnitDescriptor testInstallDescriptor = new NupkgInstallUnitDescriptor(mockMountPointId, "testPackage", "1.0.0");
            IUpdateUnitDescriptor  mockUpdateDescriptor  = new UpdateUnitDescriptor(testInstallDescriptor, "testPackage::1.1.0", "Test Package Version 1.0.0");

            MockNupkgUpdater.SetMockUpdates(new List <IUpdateUnitDescriptor>()
            {
                mockUpdateDescriptor, unrelatedUpdateDescriptor
            });

            TemplateUpdateChecker updateChecker = new TemplateUpdateChecker(EngineEnvironmentSettings);
            IReadOnlyList <IUpdateUnitDescriptor> foundUpdates = updateChecker.CheckForUpdatesAsync(new List <IInstallUnitDescriptor>()
            {
                testInstallDescriptor
            }).Result;

            Assert.Equal(1, foundUpdates.Count);
            Assert.Equal(mockMountPointId, foundUpdates[0].InstallUnitDescriptor.MountPointId);
        }
コード例 #3
0
        public void InstallUnitDescriptorFactoryDispatchesToNupkgDescriptorFactoryAndCreatesDescriptorTest()
        {
            EngineEnvironmentSettings.SettingsLoader.Components.Register(typeof(NupkgInstallUnitDescriptorFactory));

            string  serializedDescriptor = @"
{
    ""FactoryId"": """ + NupkgInstallUnitDescriptorFactory.FactoryId.ToString() + @""",
    ""Details"": {
        ""MountPointId"": ""D1ADBDAF-0382-4EEA-A43C-8356A8BEFAA9"",
        ""PackageName"": ""TestPackage"",
        ""Version"": ""1.2.3""
    }
}";
            JObject descriptorJObject    = JObject.Parse(serializedDescriptor);

            Assert.True(InstallUnitDescriptorFactory.TryParse(EngineEnvironmentSettings, descriptorJObject, out IInstallUnitDescriptor parsedDescriptor));

            NupkgInstallUnitDescriptor nupkgDescriptor = parsedDescriptor as NupkgInstallUnitDescriptor;

            Assert.NotNull(nupkgDescriptor);

            Assert.Equal(NupkgInstallUnitDescriptorFactory.FactoryId, nupkgDescriptor.FactoryId);
            Assert.Equal("TestPackage", nupkgDescriptor.Identifier);
            Assert.Equal("TestPackage", nupkgDescriptor.PackageName);
            Assert.Equal("D1ADBDAF-0382-4EEA-A43C-8356A8BEFAA9", nupkgDescriptor.MountPointId.ToString(), ignoreCase: true);
            Assert.Equal("1.2.3", nupkgDescriptor.Version);

            Assert.Equal("D1ADBDAF-0382-4EEA-A43C-8356A8BEFAA9", nupkgDescriptor.Details["MountPointId"], ignoreCase: true);
            Assert.Equal("TestPackage", nupkgDescriptor.Details["PackageName"]);
            Assert.Equal("1.2.3", nupkgDescriptor.Details["Version"]);
        }
コード例 #4
0
        public void NupkgDescriptorConstructorCreatesFromValuesTest()
        {
            Guid   descriptorId = Guid.NewGuid();
            Guid   mountPointId = new Guid("E0DE1C04-FD83-4BC5-BC4B-A675703F2266");
            string packageName  = "TestPackage";
            string version      = "1.2.3";
            string author       = "TestAuthor";

            IInstallUnitDescriptor descriptor = new NupkgInstallUnitDescriptor(descriptorId, mountPointId, packageName, version, author);

            Assert.Equal(descriptorId, descriptor.DescriptorId);
            Assert.Equal(packageName, descriptor.Identifier);
            Assert.Equal(NupkgInstallUnitDescriptorFactory.FactoryId, descriptor.FactoryId);
            Assert.Equal(mountPointId, descriptor.MountPointId);
            Assert.Equal(version, descriptor.Details[VersionKey]);
            Assert.Equal(author, descriptor.Details[nameof(NupkgInstallUnitDescriptor.Author)]);
        }
コード例 #5
0
        public void NupkgDescriptorConstructorCreatesFromValuesTest()
        {
            Guid   mountPointId = new Guid("E0DE1C04-FD83-4BC5-BC4B-A675703F2266");
            string packageName  = "TestPackage";
            string version      = "1.2.3";

            IInstallUnitDescriptor descriptor = new NupkgInstallUnitDescriptor(mountPointId, packageName, version);

            Assert.Equal(packageName, descriptor.Identifier);
            Assert.Equal(NupkgInstallUnitDescriptorFactory.FactoryId, descriptor.FactoryId);
            Assert.Equal(mountPointId, descriptor.MountPointId);

            Assert.True(Guid.TryParse(descriptor.Details[MountPointIdKey], out Guid detailsMountPointId));
            Assert.Equal(mountPointId, detailsMountPointId);

            Assert.Equal(packageName, descriptor.Details[PackageNameKey]);
            Assert.Equal(version, descriptor.Details[VersionKey]);
        }