use of de.dagere.peass.vcs.VersionIterator in project peass by DaGeRe.
the class TestVersionSplitting method readDummyDependencies.
private void readDummyDependencies(final List<StaticTestSelection> dependencies, final int i, final List<GitCommit> currentCommits, final List<GitCommit> reserveCommits, final GitCommit minimumCommit) throws IOException {
File dummyFolder = new File(TestConstants.CURRENT_FOLDER, "part_" + i);
dummyFolder.mkdir();
File pom = new File(dummyFolder, "pom.xml");
try (BufferedWriter newBufferedWriter = Files.newBufferedWriter(pom.toPath())) {
newBufferedWriter.write("<project></project>");
}
final VersionIterator fakeIterator = new FakeVersionIterator(dummyFolder, currentCommits);
final ChangeManager changeManager = Mockito.mock(ChangeManager.class);
Mockito.when(changeManager.getChanges(Mockito.any())).thenReturn(null);
FirstRunningVersionFinder finder = new FirstRunningVersionFinder(null, null, null, null, null) {
@Override
public boolean searchFirstRunningCommit() {
return true;
}
};
DummyReader dummy = new DummyReader(dummyFolder, fakeIterator, changeManager);
System.out.println(minimumCommit.getTag());
final VersionIterator reserveIterator = new FakeVersionIterator(dummyFolder, reserveCommits);
OneReader reader = new OneReader(minimumCommit, reserveIterator, dummy, finder);
reader.run();
dependencies.add(dummy.getDependencies());
}
use of de.dagere.peass.vcs.VersionIterator in project peass by DaGeRe.
the class DependencyDetectorIT method testClassRemoval.
@Test
public void testClassRemoval() throws Exception {
final File secondVersion = new File(DependencyTestConstants.VERSIONS_FOLDER, "removed_class");
final Map<ChangedEntity, ClazzChangeData> changes = new TreeMap<>();
final ChangedEntity changedEntity = new ChangedEntity("defaultpackage.TestMe", "");
changes.put(changedEntity, new ClazzChangeData(changedEntity, false));
final ChangeManager changeManager = Mockito.mock(ChangeManager.class);
Mockito.when(changeManager.getChanges(Mockito.any())).thenReturn(changes);
final VersionIterator fakeIterator = new FakeFileIterator(DependencyTestConstants.CURRENT, Arrays.asList(secondVersion));
final DependencyReader reader = DependencyDetectorTestUtil.readTwoVersions(changeManager, fakeIterator);
checkClassRemoved(reader);
}
use of de.dagere.peass.vcs.VersionIterator in project peass by DaGeRe.
the class DependencyDetectorIT method testClassChange.
@Test
public void testClassChange() throws Exception {
final File secondVersion = new File(DependencyTestConstants.VERSIONS_FOLDER, "changed_class");
final Map<ChangedEntity, ClazzChangeData> changes = new TreeMap<>();
changes.put(new ChangedEntity("defaultpackage.NormalDependency", ""), new ClazzChangeData("defaultpackage.NormalDependency", false));
final ChangeManager changeManager = Mockito.mock(ChangeManager.class);
Mockito.when(changeManager.getChanges(Mockito.any())).thenReturn(changes);
final VersionIterator fakeIterator = new FakeFileIterator(DependencyTestConstants.CURRENT, Arrays.asList(secondVersion));
final DependencyReader reader = new DependencyReader(DependencyTestConstants.DEFAULT_CONFIG_NO_VIEWS, new PeassFolders(DependencyTestConstants.CURRENT), DependencyTestConstants.NULL_RESULTS_FOLDERS, null, fakeIterator, changeManager, new ExecutionConfig(5), new KiekerConfig(true), new EnvironmentVariables());
final boolean success = reader.readInitialVersion();
Assert.assertTrue(success);
final StaticTestSelection dependencies = reader.getDependencies();
System.out.println(dependencies);
fakeIterator.goToNextCommit();
reader.analyseVersion(changeManager);
final TestSet testMe = DependencyDetectorTestUtil.findDependency(dependencies, "defaultpackage.NormalDependency", DependencyTestConstants.VERSION_1);
System.out.println(testMe);
final ChangedEntity change = dependencies.getVersions().get(DependencyTestConstants.VERSION_1).getChangedClazzes().keySet().iterator().next();
Assert.assertEquals("defaultpackage.NormalDependency", change.toString());
Assert.assertEquals("defaultpackage.TestMe#testMe", testMe.getTests().iterator().next().getExecutable());
}
use of de.dagere.peass.vcs.VersionIterator in project peass by DaGeRe.
the class DependencyDetectorIT method testAddedClass.
@Test
public void testAddedClass() throws Exception {
final File secondVersion = new File(DependencyTestConstants.VERSIONS_FOLDER, "added_class");
final ChangeManager changeManager = DependencyDetectorTestUtil.mockAddedChangeManager();
final VersionIterator fakeIterator = new FakeFileIterator(DependencyTestConstants.CURRENT, Arrays.asList(secondVersion));
final DependencyReader reader = DependencyDetectorTestUtil.readTwoVersions(changeManager, fakeIterator);
System.out.println(reader.getDependencies());
DependencyDetectorTestUtil.checkTestMeAlsoTestChange(reader, "defaultpackage.TestMeAlso", "defaultpackage.TestMeAlso", DependencyTestConstants.VERSION_1);
}
use of de.dagere.peass.vcs.VersionIterator in project peass by DaGeRe.
the class DependencyDetectorITGradle method testNormalChange.
// @org.junit.After
// public void cleanAfterwards() throws IOException {
// FileUtils.deleteDirectory(CURRENT);
// // be aware: maven does not compile if a .class-file is still in the resources, since it gets identified as test
// }
@Test
public void testNormalChange() throws IOException, InterruptedException, XmlPullParserException, ParseException, ViewNotFoundException {
init(BASIC_STATE);
final ChangeManager changeManager = DependencyDetectorTestUtil.defaultChangeManager();
final VersionIterator fakeIterator = new FakeFileIterator(DependencyTestConstants.CURRENT, Arrays.asList(CHANGE));
final DependencyReader reader = DependencyDetectorTestUtil.readTwoVersions(changeManager, fakeIterator);
DependencyDetectorTestUtil.checkTestMeAlsoTestChange(reader, "defaultpackage.NormalDependency#executeThing", "defaultpackage.TestMe", DependencyTestConstants.VERSION_1);
}
Aggregations