Search in sources :

Example 6 with Hunk

use of org.eclipse.jface.internal.text.revisions.Hunk in project eclipse.platform.text by eclipse.

the class ChangeRegionTest method testHunkInBetween.

@Test
public void testHunkInBetween() throws Exception {
    // TODO require merging of adjacent ranges?
    ChangeRegion r;
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(15, -2, 0));
    RangeUtil.assertEqualRanges(new LineRange(12, 3), new LineRange(15, 2), r.getAdjustedRanges());
    RangeUtil.assertEqualRange(new LineRange(12, 5), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(15, 2, 0));
    RangeUtil.assertEqualRanges(new LineRange(12, 3), new LineRange(17, 4), r.getAdjustedRanges());
    RangeUtil.assertEqualRange(new LineRange(12, 9), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(15, 0, 2));
    RangeUtil.assertEqualRanges(new LineRange(12, 3), new LineRange(17, 2), r.getAdjustedRanges());
    RangeUtil.assertEqualRange(new LineRange(12, 7), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(15, -1, 2));
    RangeUtil.assertEqualRanges(new LineRange(12, 3), new LineRange(17, 1), r.getAdjustedRanges());
    RangeUtil.assertEqualRange(new LineRange(12, 6), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(15, 2, 2));
    RangeUtil.assertEqualRanges(new LineRange(12, 3), new LineRange(19, 2), r.getAdjustedRanges());
    RangeUtil.assertEqualRange(new LineRange(12, 9), r.getAdjustedCoverage());
}
Also used : Hunk(org.eclipse.jface.internal.text.revisions.Hunk) ChangeRegion(org.eclipse.jface.internal.text.revisions.ChangeRegion) LineRange(org.eclipse.jface.text.source.LineRange) Test(org.junit.Test)

Example 7 with Hunk

use of org.eclipse.jface.internal.text.revisions.Hunk in project eclipse.platform.text by eclipse.

the class HunkComputerTest method assertHunks.

private void assertHunks(int[] diffInfo, int[] expected) {
    fDiffInformation = diffInfo;
    assertEquals(0, diffInfo.length % 2);
    Hunk[] hunks = HunkComputer.computeHunks(fDiffer, fDiffInformation.length / 2);
    assertEquals(0, expected.length % 3);
    int n = expected.length / 3;
    assertEquals(n, hunks.length);
    for (int i = 0; i < n; i++) {
        Hunk h = hunks[i];
        assertEquals(new Hunk(expected[3 * i], expected[3 * i + 1], expected[3 * i + 2]), h);
    }
}
Also used : Hunk(org.eclipse.jface.internal.text.revisions.Hunk)

Example 8 with Hunk

use of org.eclipse.jface.internal.text.revisions.Hunk in project eclipse.platform.text by eclipse.

the class ChangeRegionTest method testHunkAfter.

@Test
public void testHunkAfter() throws Exception {
    ChangeRegion r = new ChangeRegion(fRevision, new LineRange(12, 3));
    List<Range> before = RangeUtil.deepClone(r.getAdjustedRanges());
    r.adjustTo(new Hunk(16, 3, 2));
    RangeUtil.assertEqualRanges(before, r.getAdjustedRanges());
    RangeUtil.assertEqualRange(before.get(0), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 3));
    before = RangeUtil.deepClone(r.getAdjustedRanges());
    r.adjustTo(new Hunk(16, -33, 2));
    RangeUtil.assertEqualRanges(before, r.getAdjustedRanges());
    RangeUtil.assertEqualRange(before.get(0), r.getAdjustedCoverage());
}
Also used : Hunk(org.eclipse.jface.internal.text.revisions.Hunk) ChangeRegion(org.eclipse.jface.internal.text.revisions.ChangeRegion) Range(org.eclipse.jface.internal.text.revisions.Range) LineRange(org.eclipse.jface.text.source.LineRange) LineRange(org.eclipse.jface.text.source.LineRange) Test(org.junit.Test)

Example 9 with Hunk

use of org.eclipse.jface.internal.text.revisions.Hunk in project eclipse.platform.text by eclipse.

the class ChangeRegionTest method testHunkCovering.

@Test
public void testHunkCovering() throws Exception {
    ChangeRegion r;
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(12, 0, 7));
    assertTrue(r.getAdjustedRanges().isEmpty());
    RangeUtil.assertEqualRange(new LineRange(12, 0), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(11, 0, 8));
    assertTrue(r.getAdjustedRanges().isEmpty());
    RangeUtil.assertEqualRange(new LineRange(12, 0), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(11, 0, 9));
    assertTrue(r.getAdjustedRanges().isEmpty());
    RangeUtil.assertEqualRange(new LineRange(12, 0), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(12, 0, 9));
    assertTrue(r.getAdjustedRanges().isEmpty());
    RangeUtil.assertEqualRange(new LineRange(12, 0), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(12, -7, 0));
    assertTrue(r.getAdjustedRanges().isEmpty());
    RangeUtil.assertEqualRange(new LineRange(12, 0), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(12, -8, 0));
    assertTrue(r.getAdjustedRanges().isEmpty());
    RangeUtil.assertEqualRange(new LineRange(12, 0), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(11, -8, 0));
    assertTrue(r.getAdjustedRanges().isEmpty());
    RangeUtil.assertEqualRange(new LineRange(12, 0), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(11, -9, 0));
    assertTrue(r.getAdjustedRanges().isEmpty());
    RangeUtil.assertEqualRange(new LineRange(12, 0), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(8, -9, 6));
    assertTrue(r.getAdjustedRanges().isEmpty());
    RangeUtil.assertEqualRange(new LineRange(12, 0), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(8, -4, 8));
    assertTrue(r.getAdjustedRanges().isEmpty());
    RangeUtil.assertEqualRange(new LineRange(12, 0), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(8, -3, 9));
    assertTrue(r.getAdjustedRanges().isEmpty());
    RangeUtil.assertEqualRange(new LineRange(12, 0), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(8, -12, 5));
    assertTrue(r.getAdjustedRanges().isEmpty());
    RangeUtil.assertEqualRange(new LineRange(12, 0), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(8, -12, 20));
    assertTrue(r.getAdjustedRanges().isEmpty());
    RangeUtil.assertEqualRange(new LineRange(12, 0), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(8, 12, 20));
    assertTrue(r.getAdjustedRanges().isEmpty());
    RangeUtil.assertEqualRange(new LineRange(12, 0), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(8, -3, 8));
    assertTrue(r.getAdjustedRanges().isEmpty());
    RangeUtil.assertEqualRange(new LineRange(12, 0), r.getAdjustedCoverage());
}
Also used : Hunk(org.eclipse.jface.internal.text.revisions.Hunk) ChangeRegion(org.eclipse.jface.internal.text.revisions.ChangeRegion) LineRange(org.eclipse.jface.text.source.LineRange) Test(org.junit.Test)

Example 10 with Hunk

use of org.eclipse.jface.internal.text.revisions.Hunk in project eclipse.platform.text by eclipse.

the class ChangeRegionTest method testHunkAtStart.

@Test
public void testHunkAtStart() throws Exception {
    ChangeRegion r;
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(12, 0, 2));
    RangeUtil.assertEqualSingleRange(new LineRange(14, 5), r.getAdjustedRanges());
    RangeUtil.assertEqualRange(new LineRange(14, 5), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(12, -2, 0));
    RangeUtil.assertEqualSingleRange(new LineRange(12, 5), r.getAdjustedRanges());
    RangeUtil.assertEqualRange(new LineRange(12, 5), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(12, -2, 1));
    RangeUtil.assertEqualSingleRange(new LineRange(13, 4), r.getAdjustedRanges());
    RangeUtil.assertEqualRange(new LineRange(13, 4), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(12, 3, 0));
    RangeUtil.assertEqualSingleRange(new LineRange(15, 7), r.getAdjustedRanges());
    RangeUtil.assertEqualRange(new LineRange(15, 7), r.getAdjustedCoverage());
    r = new ChangeRegion(fRevision, new LineRange(12, 7));
    r.adjustTo(new Hunk(12, 3, 2));
    RangeUtil.assertEqualSingleRange(new LineRange(17, 5), r.getAdjustedRanges());
    RangeUtil.assertEqualRange(new LineRange(17, 5), r.getAdjustedCoverage());
}
Also used : Hunk(org.eclipse.jface.internal.text.revisions.Hunk) ChangeRegion(org.eclipse.jface.internal.text.revisions.ChangeRegion) LineRange(org.eclipse.jface.text.source.LineRange) Test(org.junit.Test)

Aggregations

Hunk (org.eclipse.jface.internal.text.revisions.Hunk)11 ChangeRegion (org.eclipse.jface.internal.text.revisions.ChangeRegion)10 LineRange (org.eclipse.jface.text.source.LineRange)10 Test (org.junit.Test)10 Range (org.eclipse.jface.internal.text.revisions.Range)2