public async Task OrderUpdatePackages(int projectId, SemVersion newVersion, SemVersion?previousVersion = null) { var updatePackages = _appDbContext.UpdatePackages.Where(x => x.ProjectId == projectId); var transaction = new OrderUpdatePackagesTransaction(); await transaction.Execute(updatePackages, newVersion, previousVersion); await _appDbContext.SaveChangesAsync(); }
public async Task HasOnePackage_ChangeToGreaterVersion() { var packages = new[] { CreateUpdatePackage("1.2.0", 0) }; var mock = packages.AsQueryable().BuildMock(); var transaction = new OrderUpdatePackagesTransaction(); await transaction.Execute(mock.Object, "1.2.0", "1.0.0"); Assert.Equal(0, packages[0].OrderNumber); }
public async Task HasOnePackage_NewOlderPackage_MajorMinor() { var packages = new[] { CreateUpdatePackage("1.2.0", 0), CreateUpdatePackage("1.0.0") }; var mock = packages.AsQueryable().BuildMock(); var transaction = new OrderUpdatePackagesTransaction(); await transaction.Execute(mock.Object, "1.0.0"); Assert.Equal(1, packages[0].OrderNumber); Assert.Equal(0, packages[1].OrderNumber); }
public async Task HasManyPackages_ChangeVersionFromTopToMiddle() { var packages = new[] { CreateUpdatePackage("1.0.0", 0), CreateUpdatePackage("2.0.2", 3), CreateUpdatePackage("1.1.0", 1), CreateUpdatePackage("2.0.0", 2), CreateUpdatePackage("1.0.1", 4) }; var mock = packages.AsQueryable().BuildMock(); var transaction = new OrderUpdatePackagesTransaction(); await transaction.Execute(mock.Object, "1.0.1", "3.0.0"); AssertCorrectOrderNumbers(packages); }
public async Task HasManyPackages_NewPackageOnTop_MajorMinor() { var packages = new[] { CreateUpdatePackage("1.0.0", 0), CreateUpdatePackage("2.0.1", 3), CreateUpdatePackage("1.1.0", 1), CreateUpdatePackage("2.0.0", 2), CreateUpdatePackage("2.2.0") }; var mock = packages.AsQueryable().BuildMock(); var transaction = new OrderUpdatePackagesTransaction(); await transaction.Execute(mock.Object, "2.2.0"); AssertCorrectOrderNumbers(packages); }