コード例 #1
0
            public async Task WritesToReplicaHives()
            {
                ReplicaHives.Add(HiveType.Gzipped);
                ReplicaHives.Add(HiveType.SemVer2);

                await Target.WriteLeafAsync(Hive, ReplicaHives, Id, Version, Leaf);

                LegacyBlob.Verify(x => x.UploadFromStreamAsync(It.IsAny <Stream>(), It.IsAny <AccessCondition>()), Times.Once);
                GzippedBlob.Verify(x => x.UploadFromStreamAsync(It.IsAny <Stream>(), It.IsAny <AccessCondition>()), Times.Once);
                SemVer2Blob.Verify(x => x.UploadFromStreamAsync(It.IsAny <Stream>(), It.IsAny <AccessCondition>()), Times.Once);
                EntityBuilder.Verify(x => x.UpdateLeafUrls(It.IsAny <RegistrationLeaf>(), It.IsAny <HiveType>(), It.IsAny <HiveType>()), Times.Exactly(3));
                EntityBuilder.Verify(x => x.UpdateLeafUrls(Leaf, HiveType.Legacy, HiveType.Gzipped), Times.Once);
                EntityBuilder.Verify(x => x.UpdateLeafUrls(Leaf, HiveType.Gzipped, HiveType.SemVer2), Times.Once);
                EntityBuilder.Verify(x => x.UpdateLeafUrls(Leaf, HiveType.SemVer2, HiveType.Legacy), Times.Once);
            }
コード例 #2
0
            public async Task MergesSemVer2VersionsOnSemVer2Hives()
            {
                AddPackageDetails("2.0.0-beta.1");

                await Target.UpdateAsync(Hive, ReplicaHives, Id, Entries, EntryToCatalogLeaf, RegistrationCommit);

                EntityBuilder.Verify(
                    x => x.NewLeaf(It.Is <RegistrationLeafItem>(i => i.CatalogEntry.Version == "2.0.0-beta.1")),
                    Times.Once);
                Storage.Verify(
                    x => x.WriteLeafAsync(Hive, ReplicaHives, Id, NuGetVersion.Parse("2.0.0-beta.1"), RegistrationLeaf),
                    Times.Once);
                Storage.Verify(
                    x => x.WriteIndexAsync(Hive, ReplicaHives, Id, RegistrationIndex),
                    Times.Once);
                Assert.Equal("2.0.0-beta.1", RegistrationIndex.Items[0].Items[1].CatalogEntry.Version);
            }
コード例 #3
0
            public async Task ExcludesSemVer2VersionsFromSemVer1Hives(HiveType hive)
            {
                Hive = hive;
                AddPackageDetails("2.0.0-beta.1");

                await Target.UpdateAsync(Hive, ReplicaHives, Id, Entries, EntryToCatalogLeaf, RegistrationCommit);

                EntityBuilder.Verify(x => x.NewLeaf(It.IsAny <RegistrationLeafItem>()), Times.Never);
                Storage.Verify(
                    x => x.WriteLeafAsync(It.IsAny <HiveType>(), It.IsAny <IReadOnlyList <HiveType> >(), It.IsAny <string>(), It.IsAny <NuGetVersion>(), It.IsAny <RegistrationLeaf>()),
                    Times.Never);
                Storage.Verify(
                    x => x.WritePageAsync(It.IsAny <HiveType>(), It.IsAny <IReadOnlyList <HiveType> >(), It.IsAny <string>(), It.IsAny <NuGetVersion>(), It.IsAny <NuGetVersion>(), It.IsAny <RegistrationPage>()),
                    Times.Never);
                Storage.Verify(
                    x => x.WriteIndexAsync(It.IsAny <HiveType>(), It.IsAny <IReadOnlyList <HiveType> >(), It.IsAny <string>(), It.IsAny <RegistrationIndex>()),
                    Times.Never);
                Assert.Equal(2, RegistrationIndex.Items[0].Items.Count);
                Assert.DoesNotContain("2.0.0-beta.1", RegistrationIndex.Items[0].Items.Select(x => x.CatalogEntry.Version));
            }
コード例 #4
0
            public async Task MergesCatalogCommitItems()
            {
                AddPackageDetails("2.0.0");

                await Target.UpdateAsync(Hive, ReplicaHives, Id, Entries, EntryToCatalogLeaf, RegistrationCommit);

                Merger.Verify(
                    x => x.MergeAsync(It.IsAny <IndexInfo>(), It.IsAny <IReadOnlyList <CatalogCommitItem> >()),
                    Times.Once);
                EntityBuilder.Verify(
                    x => x.NewLeaf(It.IsAny <RegistrationLeafItem>()),
                    Times.Once);
                EntityBuilder.Verify(
                    x => x.NewLeaf(It.Is <RegistrationLeafItem>(i => i.CatalogEntry.Version == "2.0.0")),
                    Times.Once);
                EntityBuilder.Verify(
                    x => x.NewLeaf(RegistrationIndex.Items[0].Items[1]),
                    Times.Once);
                Storage.Verify(
                    x => x.WriteLeafAsync(It.IsAny <HiveType>(), It.IsAny <IReadOnlyList <HiveType> >(), It.IsAny <string>(), It.IsAny <NuGetVersion>(), It.IsAny <RegistrationLeaf>()),
                    Times.Once);
                Storage.Verify(
                    x => x.WriteLeafAsync(Hive, ReplicaHives, Id, NuGetVersion.Parse("2.0.0"), RegistrationLeaf),
                    Times.Once);
                Storage.Verify(
                    x => x.WritePageAsync(It.IsAny <HiveType>(), It.IsAny <IReadOnlyList <HiveType> >(), It.IsAny <string>(), It.IsAny <NuGetVersion>(), It.IsAny <NuGetVersion>(), It.IsAny <RegistrationPage>()),
                    Times.Never);
                Storage.Verify(
                    x => x.WriteIndexAsync(It.IsAny <HiveType>(), It.IsAny <IReadOnlyList <HiveType> >(), It.IsAny <string>(), It.IsAny <RegistrationIndex>()),
                    Times.Once);
                Storage.Verify(
                    x => x.WriteIndexAsync(Hive, ReplicaHives, Id, RegistrationIndex),
                    Times.Once);
                Storage.Verify(
                    x => x.DeleteIndexAsync(It.IsAny <HiveType>(), It.IsAny <IReadOnlyList <HiveType> >(), It.IsAny <string>()),
                    Times.Never);
                Storage.Verify(
                    x => x.DeleteUrlAsync(It.IsAny <HiveType>(), It.IsAny <IReadOnlyList <HiveType> >(), It.IsAny <string>()),
                    Times.Never);
                Assert.Equal("2.0.0", RegistrationIndex.Items[0].Items[1].CatalogEntry.Version);
            }