use of jetbrains.buildServer.vcs.SVcsModification in project teamcity-rest by JetBrains.
the class ChangeStatusTest method testNoNewFailedTests.
public void testNoNewFailedTests() {
final BuildTypeImpl buildConf = registerBuildType("buildConf1", "project");
VcsRootInstance root1 = prepareSingleVscRoot(buildConf);
SVcsModification m20 = myFixture.addModification(modification().in(root1).version("20").parentVersions("10"));
SVcsModification m30 = myFixture.addModification(modification().in(root1).version("30").parentVersions("20"));
build().in(buildConf).onModifications(m20).withFailedTests("failedTestName").finish();
// same test failed
build().in(buildConf).onModifications(m30).withFailedTests("failedTestName").finish();
ChangeStatus status = new ChangeStatus(myFixture.getChangeStatusProvider().getMergedChangeStatus(m30), Fields.ALL_NESTED, getBeanContext(myFixture));
assertEquals(1, (int) status.getFinished());
assertEquals(0, (int) status.getSuccessful());
assertEquals(1, (int) status.getFailed());
assertEquals(0, (int) status.getNewFailedTests());
assertEquals(1, (int) status.getOtherFailedTests());
assertEquals(0, (int) status.getNewTestsFailedBuilds().count);
}
use of jetbrains.buildServer.vcs.SVcsModification in project teamcity-rest by JetBrains.
the class ChangeStatusTest method testSuccessfulRunning.
public void testSuccessfulRunning() {
final BuildTypeImpl buildConf = registerBuildType("buildConf1", "project");
VcsRootInstance root1 = prepareSingleVscRoot(buildConf);
SVcsModification m20 = myFixture.addModification(modification().in(root1).version("20").parentVersions("10"));
RunningBuildEx runningBuildEx = build().in(buildConf).onModifications(m20).run();
ChangeStatus status = new ChangeStatus(myFixture.getChangeStatusProvider().getMergedChangeStatus(m20), Fields.ALL_NESTED, getBeanContext(myFixture));
myFixture.finishBuild(runningBuildEx, false);
assertEquals(0, (int) status.getFinished());
assertEquals(1, (int) status.getRunning());
assertEquals(0, (int) status.getSuccessful());
assertEquals(1, (int) status.getRunningSuccessfuly());
}
use of jetbrains.buildServer.vcs.SVcsModification in project teamcity-rest by JetBrains.
the class ChangeRequest method getChangeFirstBuilds.
/**
* Experimental support only!
*/
@GET
@Path("/{changeLocator}/firstBuilds")
@Produces({ "application/xml", "application/json" })
@ApiOperation(value = "Get first builds of the matching change.", nickname = "getChangeFirstBuilds", hidden = true)
public Builds getChangeFirstBuilds(@ApiParam(format = LocatorName.CHANGE) @PathParam("changeLocator") String changeLocator, @QueryParam("fields") String fields) {
final SVcsModification change = myChangeFinder.getItem(changeLocator).getSVcsModification();
ChangeStatusProvider myStatusProvider = myServiceLocator.getSingletonService(ChangeStatusProvider.class);
ChangeStatus changeStatus = myStatusProvider.getMergedChangeStatus(change);
List<BuildPromotion> firstBuildsPromotions = changeStatus.getBuildTypesStatusMap().values().stream().filter(Objects::nonNull).collect(Collectors.toList());
return Builds.createFromBuildPromotions(firstBuildsPromotions, null, new Fields(fields), myBeanContext);
}
use of jetbrains.buildServer.vcs.SVcsModification in project teamcity-rest by JetBrains.
the class ChangeRequest method getDeploymentConfigurations.
/**
* Experimental support only!
*/
@GET
@Path("/{changeLocator}/deploymentConfigurations")
@Produces({ "application/xml", "application/json" })
@ApiOperation(value = "Get build configurations where this change could potentially be deployed.", nickname = "getDeploymentConfigurations", hidden = true)
public BuildTypes getDeploymentConfigurations(@ApiParam(format = LocatorName.CHANGE) @PathParam("changeLocator") String changeLocator, @QueryParam("fields") String fields) {
final SVcsModification change = myChangeFinder.getItem(changeLocator).getSVcsModification();
ChangeStatusProvider myStatusProvider = myServiceLocator.getSingletonService(ChangeStatusProvider.class);
ChangeStatus changeStatus = myStatusProvider.getMergedChangeStatus(change);
return new BuildTypes(BuildTypes.fromBuildTypes(changeStatus.getDeploymentStatus().keySet()), null, new Fields(fields), myBeanContext);
}
use of jetbrains.buildServer.vcs.SVcsModification in project teamcity-rest by JetBrains.
the class ChangeRequest method getRelatedBuildTypes.
/**
* Experimental support only!
*/
@GET
@Path("/{changeLocator}/buildTypes")
@Produces({ "application/xml", "application/json" })
@ApiOperation(value = "Get build configurations related to the matching change.", nickname = "getRelatedBuildTypes", hidden = true)
public BuildTypes getRelatedBuildTypes(@ApiParam(format = LocatorName.CHANGE) @PathParam("changeLocator") String changeLocator, @QueryParam("fields") String fields) {
final SVcsModification change = myChangeFinder.getItem(changeLocator).getSVcsModification();
ChangeStatusProvider myStatusProvider = myServiceLocator.getSingletonService(ChangeStatusProvider.class);
ChangeStatus changeStatus = myStatusProvider.getMergedChangeStatus(change);
return new BuildTypes(BuildTypes.fromBuildTypes(changeStatus.getRelatedConfigurations()), null, new Fields(fields), myBeanContext);
}
Aggregations