public void TestWithSinglePackageAndBranchNamePrefix()
        {
            var packages = PackageUpdates.MakeUpdateSet("SomePackage")
                           .InList();

            var branchName = BranchNamer.MakeName(packages, BranchNameTemplate);

            Assert.That(branchName, Is.EqualTo("nukeeper/nukeeper-update-SomePackage-to-1.2.3"));
        }
        public void TestWithTwoPackagesAndBranchNamePrefix()
        {
            var packages = new List <PackageUpdateSet>
            {
                PackageUpdates.MakeUpdateSet("SomePackage"),
                PackageUpdates.MakeUpdateSet("OtherPackage")
            };

            var branchName = BranchNamer.MakeName(packages, BranchNameTemplate);

            Assert.That(branchName, Is.EqualTo("nukeeper/nukeeper-update-2-packages-AA9F9828431C8BFB7A18D3D8F0CF229D"));
        }
        public void TestWithThreePackagesAndBranchNamePrefix()
        {
            var packages = new List <PackageUpdateSet>
            {
                PackageUpdates.MakeUpdateSet("SomePackage"),
                PackageUpdates.MakeUpdateSet("OtherPackage"),
                PackageUpdates.MakeUpdateSet("SomethingElse"),
            };

            var branchName = BranchNamer.MakeName(packages, BranchNameTemplate);

            Assert.That(branchName, Is.EqualTo("nukeeper/nukeeper-update-3-packages-BBBB3BF2315D6111CFCBF6A4A7A29DD8"));
        }
Example #4
0
        public void MakeCommitDetails_DoesNotExceedPullRequestBodyLimit()
        {
            var packageNameExceedingPullRequestBodyLimit = new string('a', MaxCharacterCount + 1);
            var updateSet = PackageUpdates.MakeUpdateSet(packageNameExceedingPullRequestBodyLimit)
                            .InList();

            var report = _sut.MakeCommitDetails(updateSet);

            Assert.That(report, Is.Not.Null);
            Assert.That(report, Is.Not.Empty);
            Assert.That(report.Length, Is.EqualTo(MaxCharacterCount));
            Assert.That(report, Does.EndWith("..."));
        }
        public void WhenOneItemIsNotConsolidated()
        {
            var items = PackageUpdates.MakeUpdateSet("foo")
                        .InList();

            var output = UpdateConsolidator.Consolidate(items, false);

            var listOfLists = output.ToList();

            // one list, containing all the items
            Assert.That(listOfLists.Count, Is.EqualTo(1));
            Assert.That(listOfLists[0].Count, Is.EqualTo(1));
        }
        public void WhenItemsAreConsolidated()
        {
            var items = new List <PackageUpdateSet>
            {
                PackageUpdates.MakeUpdateSet("foo"),
                PackageUpdates.MakeUpdateSet("bar")
            };

            var output = UpdateConsolidator.Consolidate(items, true);

            var listOfLists = output.ToList();

            // one list, containing all the items
            Assert.That(listOfLists.Count, Is.EqualTo(1));
            Assert.That(listOfLists[0].Count, Is.EqualTo(2));
        }
        public void WhenItemsAreNotConsolidated()
        {
            var items = new List <PackageUpdateSet>
            {
                PackageUpdates.MakeUpdateSet("foo"),
                PackageUpdates.MakeUpdateSet("bar")
            };

            var output = UpdateConsolidator.Consolidate(items, false);

            var listOfLists = output.ToList();

            // two lists, each containing 1 item
            Assert.That(listOfLists.Count, Is.EqualTo(2));
            Assert.That(listOfLists.SelectMany(x => x).Count(), Is.EqualTo(2));
            Assert.That(listOfLists[0].Count, Is.EqualTo(1));
            Assert.That(listOfLists[1].Count, Is.EqualTo(1));
        }
        public void EquivalentInputs_HaveSameHash()
        {
            var packages1 = new List <PackageUpdateSet>
            {
                PackageUpdates.MakeUpdateSet("SomePackage", "2.3.4"),
                PackageUpdates.MakeUpdateSet("OtherPackage", "2.3.4")
            };

            var packages2 = new List <PackageUpdateSet>
            {
                PackageUpdates.MakeUpdateSet("SomePackage", "2.3.4"),
                PackageUpdates.MakeUpdateSet("OtherPackage", "2.3.4")
            };

            var branchName1 = BranchNamer.MakeName(packages1);
            var branchName2 = BranchNamer.MakeName(packages2);

            Assert.That(branchName1, Is.EqualTo(branchName2));
        }
        public void NameChangeWithBranchNamePrefix_ChangesHash()
        {
            var packages1 = new List <PackageUpdateSet>
            {
                PackageUpdates.MakeUpdateSet("SomePackage", "2.3.4"),
                PackageUpdates.MakeUpdateSet("OtherPackage", "2.3.4")
            };

            var packages2 = new List <PackageUpdateSet>
            {
                PackageUpdates.MakeUpdateSet("ZomePackage", "2.3.4"),
                PackageUpdates.MakeUpdateSet("OtherPackage", "2.3.4")
            };

            var branchName1 = BranchNamer.MakeName(packages1, BranchNameTemplate);
            var branchName2 = BranchNamer.MakeName(packages2, BranchNameTemplate);

            Assert.That(branchName1, Is.Not.EqualTo(branchName2));
        }
        public void VersionChange_ChangesHash()
        {
            var packages1 = new List <PackageUpdateSet>
            {
                PackageUpdates.MakeUpdateSet("SomePackage", "2.3.4"),
                PackageUpdates.MakeUpdateSet("OtherPackage", "2.3.4")
            };

            var packages2 = new List <PackageUpdateSet>
            {
                PackageUpdates.MakeUpdateSet("SomePackage", "2.3.4"),
                PackageUpdates.MakeUpdateSet("OtherPackage", "2.3.5")
            };

            var branchName1 = BranchNamer.MakeName(packages1);
            var branchName2 = BranchNamer.MakeName(packages2);

            Assert.That(branchName1, Is.Not.EqualTo(branchName2));
        }
        public async Task SingleItemCase()
        {
            var updates = PackageUpdates.MakeUpdateSet("foo")
                          .InList();

            var selection = Substitute.For <IUpdateSelection>();

            FilterIsPassThrough(selection);


            var runner   = Substitute.For <IUpdateRunner>();
            var logger   = Substitute.For <INuKeeperLogger>();
            var folder   = Substitute.For <IFolder>();
            var restorer = new SolutionsRestore(Substitute.For <IFileRestoreCommand>());

            var updater = new LocalUpdater(selection, runner, restorer, logger);

            await updater.ApplyUpdates(updates, folder, NuGetSources.GlobalFeed, Settings());

            await runner.Received(1)
            .Update(Arg.Any <PackageUpdateSet>(), Arg.Any <NuGetSources>());
        }