Search in sources :

Example 66 with Modification

use of com.thoughtworks.go.domain.materials.Modification in project gocd by gocd.

the class PipelineInstanceModelTest method shouldGetCurrentRevisionForMaterialByName.

@Test
public void shouldGetCurrentRevisionForMaterialByName() {
    MaterialRevisions revisions = new MaterialRevisions();
    HgMaterial material = MaterialsMother.hgMaterial();
    SvnMaterial svnMaterial = MaterialsMother.svnMaterial();
    material.setName(new CaseInsensitiveString("hg_material"));
    revisions.addRevision(svnMaterial, new Modification(new Date(), "1024", "MOCK_LABEL-12", null));
    revisions.addRevision(material, HG_MATERIAL_MODIFICATION);
    BuildCause buildCause = BuildCause.createWithModifications(revisions, "");
    PipelineInstanceModel model = PipelineInstanceModel.createPipeline("pipeline", -1, "label", buildCause, new StageInstanceModels());
    assertThat(model.getCurrentRevision("hg_material").getRevision(), is("a087402bd2a7828a130c1bdf43f2d9ef8f48fd46"));
}
Also used : Modification(com.thoughtworks.go.domain.materials.Modification) MaterialRevisions(com.thoughtworks.go.domain.MaterialRevisions) SvnMaterial(com.thoughtworks.go.config.materials.svn.SvnMaterial) HgMaterial(com.thoughtworks.go.config.materials.mercurial.HgMaterial) CaseInsensitiveString(com.thoughtworks.go.config.CaseInsensitiveString) Date(java.util.Date) BuildCause(com.thoughtworks.go.domain.buildcause.BuildCause) Test(org.junit.Test)

Example 67 with Modification

use of com.thoughtworks.go.domain.materials.Modification in project gocd by gocd.

the class SvnLogXmlParserTest method shouldGetAllModifiedFilesUnderRootPath.

@Test
public void shouldGetAllModifiedFilesUnderRootPath() {
    SvnLogXmlParser parser = new SvnLogXmlParser();
    List<Modification> materialRevisions = parser.parse(MULTIPLE_FILES, "", new SAXBuilder());
    Modification mod = materialRevisions.get(0);
    List<ModifiedFile> files = mod.getModifiedFiles();
    assertThat(files.size(), is(2));
    ModifiedFile file = files.get(0);
    assertThat(file.getFileName(), is("/trunk/revision3.txt"));
    assertThat(file.getAction(), is(ModifiedAction.added));
    file = files.get(1);
    assertThat(file.getFileName(), is("/branch/1.1/readme.txt"));
    assertThat(file.getAction(), is(ModifiedAction.deleted));
}
Also used : Modification(com.thoughtworks.go.domain.materials.Modification) SAXBuilder(org.jdom2.input.SAXBuilder) ModifiedFile(com.thoughtworks.go.domain.materials.ModifiedFile) Test(org.junit.Test)

Example 68 with Modification

use of com.thoughtworks.go.domain.materials.Modification in project gocd by gocd.

the class SvnLogXmlParserTest method shouldParse.

@Test
public void shouldParse() throws ParseException {
    SvnLogXmlParser parser = new SvnLogXmlParser();
    List<Modification> materialRevisions = parser.parse(XML, "", new SAXBuilder());
    assertThat(materialRevisions.size(), is(1));
    Modification mod = materialRevisions.get(0);
    assertThat(mod.getRevision(), is("3"));
    assertThat(mod.getUserName(), is("cceuser"));
    assertThat(mod.getModifiedTime(), is(convertDate("2008-03-11T07:52:41.162075Z")));
    assertThat(mod.getComment(), is("[Liyanhui & Gabbar] Checked in new file for test"));
    List<ModifiedFile> files = mod.getModifiedFiles();
    assertThat(files.size(), is(1));
    ModifiedFile file = files.get(0);
    assertThat(file.getFileName(), is("/trunk/revision3.txt"));
    assertThat(file.getAction(), is(ModifiedAction.added));
}
Also used : Modification(com.thoughtworks.go.domain.materials.Modification) SAXBuilder(org.jdom2.input.SAXBuilder) ModifiedFile(com.thoughtworks.go.domain.materials.ModifiedFile) Test(org.junit.Test)

Example 69 with Modification

use of com.thoughtworks.go.domain.materials.Modification in project gocd by gocd.

the class SvnLogXmlParserTest method shouldFilterModifiedFilesByPath.

@Test
public void shouldFilterModifiedFilesByPath() {
    SvnLogXmlParser parser = new SvnLogXmlParser();
    List<Modification> materialRevisions = parser.parse(MULTIPLE_FILES, "/branch", new SAXBuilder());
    Modification mod = materialRevisions.get(0);
    List<ModifiedFile> files = mod.getModifiedFiles();
    assertThat(files.size(), is(1));
    ModifiedFile file = files.get(0);
    assertThat(file.getFileName(), is("/branch/1.1/readme.txt"));
    assertThat(file.getAction(), is(ModifiedAction.deleted));
}
Also used : Modification(com.thoughtworks.go.domain.materials.Modification) SAXBuilder(org.jdom2.input.SAXBuilder) ModifiedFile(com.thoughtworks.go.domain.materials.ModifiedFile) Test(org.junit.Test)

Example 70 with Modification

use of com.thoughtworks.go.domain.materials.Modification in project gocd by gocd.

the class SvnLogXmlParserTest method shouldParseSvnLogContainingNullComments.

@Test
public void shouldParseSvnLogContainingNullComments() throws IOException {
    String xml;
    try (InputStream stream = getClass().getResourceAsStream("jemstep_svn_log.xml")) {
        xml = IOUtils.toString(stream, UTF_8);
    }
    SvnLogXmlParser parser = new SvnLogXmlParser();
    List<Modification> revisions = parser.parse(xml, "", new SAXBuilder());
    assertThat(revisions.size(), is(43));
    Modification modWithoutComment = null;
    for (Modification revision : revisions) {
        if (revision.getRevision().equals("7815")) {
            modWithoutComment = revision;
        }
    }
    assertThat(modWithoutComment.getComment(), is(nullValue()));
}
Also used : Modification(com.thoughtworks.go.domain.materials.Modification) SAXBuilder(org.jdom2.input.SAXBuilder) InputStream(java.io.InputStream) StringContains.containsString(org.hamcrest.core.StringContains.containsString) Test(org.junit.Test)

Aggregations

Modification (com.thoughtworks.go.domain.materials.Modification)246 Test (org.junit.Test)176 Date (java.util.Date)76 MaterialRevision (com.thoughtworks.go.domain.MaterialRevision)65 CaseInsensitiveString (com.thoughtworks.go.config.CaseInsensitiveString)54 DependencyMaterial (com.thoughtworks.go.config.materials.dependency.DependencyMaterial)40 MaterialRevisions (com.thoughtworks.go.domain.MaterialRevisions)38 ArrayList (java.util.ArrayList)35 File (java.io.File)25 BuildCause (com.thoughtworks.go.domain.buildcause.BuildCause)21 Modifications (com.thoughtworks.go.domain.materials.Modifications)21 SvnMaterial (com.thoughtworks.go.config.materials.svn.SvnMaterial)20 Material (com.thoughtworks.go.domain.materials.Material)20 Username (com.thoughtworks.go.server.domain.Username)17 StringRevision (com.thoughtworks.go.domain.materials.mercurial.StringRevision)16 HashMap (java.util.HashMap)16 StringContains.containsString (org.hamcrest.core.StringContains.containsString)15 DependencyMaterialRevision (com.thoughtworks.go.domain.materials.dependency.DependencyMaterialRevision)14 Stage (com.thoughtworks.go.domain.Stage)13 ModifiedFile (com.thoughtworks.go.domain.materials.ModifiedFile)13