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"]); }
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); }
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"]); }
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)]); }
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]); }