Diff
checker
テキスト
テキスト
画像
ドキュメント
Excel
フォルダ
Legal
Enterprise
デスクトップ
料金
ログイン
Diffchecker デスクトップのダウンロード
テキスト比較
2 つのテキスト ファイルの違いを見つける
ツール
履歴
ライブエディター
未変更行を折りたたむ
折り返しなし
レイアウト
分割
統合
比較精度
スマート
単語
文字
シンタックスハイライト
構文を選択
無視
テキスト変換
最初の差分へ移動
入力を編集
Diffchecker Desktop
Diffcheckerを実行する最も安全な方法。Diffchecker Desktopアプリを入手:あなたの差分はコンピューターから出ることはありません!
Desktopを入手
Untitled diff
作成日
9 年前
差分は期限切れになりません
クリア
エクスポート
共有
説明
44 削除
行
合計
削除
文字
合計
削除
この機能を引き続き使用するには、アップグレードしてください
Diff
checker
Pro
価格を見る
175 行
すべてコピー
66 追加
行
合計
追加
文字
合計
追加
この機能を引き続き使用するには、アップグレードしてください
Diff
checker
Pro
価格を見る
189 行
すべてコピー
/*
/*
* (C) Copyright 2017 Code-House, Łukasz Dywicki.
* (C) Copyright 2017 Code-House, Łukasz Dywicki.
*
*
* Licensed under the Apache License, Version 2.0 (the "License");
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* You may obtain a copy of the License at
*
*
* http://www.apache.org/licenses/LICENSE-2.0
* http://www.apache.org/licenses/LICENSE-2.0
*
*
* Unless required by applicable law or agreed to in writing, software
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* See the License for the specific language governing permissions and
* limitations under the License.
* limitations under the License.
*/
*/
コピー
コピー済み
コピー
コピー済み
package org.
eclipse.aether.util
.version;
package org.
code_house.maven.osgi.resolver.shared
.version;
import org.code_house.maven.osgi.resolver.test.VersionRangeTest;
import org.code_house.maven.osgi.resolver.test.VersionRangeTest;
import org.eclipse.aether.version.InvalidVersionSpecificationException;
import org.eclipse.aether.version.InvalidVersionSpecificationException;
import org.junit.Test;
import org.junit.Test;
import static org.junit.Assert.*;
import static org.junit.Assert.*;
/**
/**
コピー
コピー済み
コピー
コピー済み
*
Customized version
of
aether generic
version
. Located here to verify {@link VersionRangeTest} and to track eventual
*
Test
of
OSGi
version
range filtering.
* changes in aether's logic.
*/
*/
コピー
コピー済み
コピー
コピー済み
public class
Generic
VersionRangeTest extends VersionRangeTest<
Generic
VersionRange,
GenericVersion
> {
public class
Osgi
VersionRangeTest extends VersionRangeTest<
Osgi
VersionRange,
OsgiVersion
> {
コピー
コピー済み
コピー
コピー済み
protected
GenericVersion
newVersion(String version) {
@Override
return new
GenericVersion
(version);
protected
OsgiVersion
newVersion(String version) {
return new
OsgiVersion
(version);
}
}
コピー
コピー済み
コピー
コピー済み
protected
Generic
VersionRange parseValid(String range) {
@Override
protected
Osgi
VersionRange parseValid(String range) {
try {
try {
コピー
コピー済み
コピー
コピー済み
return new
Generic
VersionRange(range);
return new
Osgi
VersionRange(range);
} catch (InvalidVersionSpecificationException e) {
} catch (InvalidVersionSpecificationException e) {
コピー
コピー済み
コピー
コピー済み
AssertionError error =
new AssertionError(range + " should be valid but failed to parse due to: " + e.getMessage());
AssertionError error =
new AssertionError(range + " should be valid but failed to parse due to: " + e.getMessage());
error.initCause(e);
error.initCause(e);
throw error;
throw error;
}
}
}
}
コピー
コピー済み
コピー
コピー済み
@Override
protected void parseInvalid(String range) {
protected void parseInvalid(String range) {
try {
try {
コピー
コピー済み
コピー
コピー済み
new
Generic
VersionRange(range);
new
Osgi
VersionRange(range);
fail(range + " should be invalid");
fail(range + " should be invalid");
} catch (InvalidVersionSpecificationException e) {
} catch (InvalidVersionSpecificationException e) {
assertTrue(true);
assertTrue(true);
}
}
}
}
@Test
@Test
public void testLowerBoundInclusiveUpperBoundInclusive() {
public void testLowerBoundInclusiveUpperBoundInclusive() {
コピー
コピー済み
コピー
コピー済み
Generic
VersionRange range = parseValid("[1,2]");
Osgi
VersionRange range = parseValid("[1,2]");
assertContains(range, "1");
assertContains(range, "1");
assertContains(range, "1.1-SNAPSHOT");
assertContains(range, "1.1-SNAPSHOT");
assertContains(range, "2");
assertContains(range, "2");
assertEquals(range, parseValid(range.toString()));
assertEquals(range, parseValid(range.toString()));
}
}
@Test
@Test
public void testLowerBoundInclusiveUpperBoundExclusive() {
public void testLowerBoundInclusiveUpperBoundExclusive() {
コピー
コピー済み
コピー
コピー済み
Generic
VersionRange range = parseValid("[1.2.3.4
.5
,1.2.3.
4.
6)");
Osgi
VersionRange range = parseValid("[1.2.3.4
,1.2.3.
6)");
assertContains(range, "1.2.3.4
.5");
assertContains(range, "1.2.3.4
");
assertNotContains(range, "1.2.3.
4.
6");
assertContains(range, "1.2.3.45");
assertContains(range, "1.2.3
.5");
assertNotContains(range, "1.2.3.
6");
assertEquals(range, parseValid(range.toString()));
assertEquals(range, parseValid(range.toString()));
}
}
@Test
@Test
public void testLowerBoundExclusiveUpperBoundInclusive() {
public void testLowerBoundExclusiveUpperBoundInclusive() {
コピー
コピー済み
コピー
コピー済み
Generic
VersionRange range = parseValid("(
1a,1b
]");
Osgi
VersionRange range = parseValid("(
1.0.0.a,1.0.0.b
]");
assertNotContains(range, "1
a");
assertNotContains(range, "1
-
a");
assertContains(range, "1
b");
assertContains(range, "1
-
b");
assertEquals(range, parseValid(range.toString()));
assertEquals(range, parseValid(range.toString()));
}
}
@Test
@Test
public void testLowerBoundExclusiveUpperBoundExclusive() {
public void testLowerBoundExclusiveUpperBoundExclusive() {
コピー
コピー済み
コピー
コピー済み
Generic
VersionRange range = parseValid("(1,3)");
Osgi
VersionRange range = parseValid("(1,3)");
assertNotContains(range, "1");
assertNotContains(range, "1");
assertContains(range, "2-SNAPSHOT");
assertContains(range, "2-SNAPSHOT");
assertNotContains(range, "3");
assertNotContains(range, "3");
assertEquals(range, parseValid(range.toString()));
assertEquals(range, parseValid(range.toString()));
}
}
@Test
@Test
public void testSingleVersion() {
public void testSingleVersion() {
コピー
コピー済み
コピー
コピー済み
Generic
VersionRange range = parseValid("[1
]");
Osgi
VersionRange range = parseValid("[1
,1
]");
assertContains(range, "1");
assertContains(range, "1");
assertEquals(range, parseValid(range.toString()));
assertEquals(range, parseValid(range.toString()));
range = parseValid("[1,1]");
range = parseValid("[1,1]");
assertContains(range, "1");
assertContains(range, "1");
assertEquals(range, parseValid(range.toString()));
assertEquals(range, parseValid(range.toString()));
}
}
@Test
@Test
public void testSingleWildcardVersion() {
public void testSingleWildcardVersion() {
コピー
コピー済み
コピー
コピー済み
Generic
VersionRange range = parseValid("
[
1.2
.*]
");
Osgi
VersionRange range = parseValid("
1.2
");
assertContains(range, "1.2-alpha-1");
assertContains(range, "1.2-alpha-1");
assertContains(range, "1.2-SNAPSHOT");
assertContains(range, "1.2-SNAPSHOT");
assertContains(range, "1.2");
assertContains(range, "1.2");
assertContains(range, "1.2.9999999");
assertContains(range, "1.2.9999999");
コピー
コピー済み
コピー
コピー済み
assert
Not
Contains(range, "1.3-rc-1");
assert
Contains(range, "1.3-rc-1");
assertContains(range, "1.9");
assertContains(range, "9");
assertEquals(range, parseValid(range.toString()));
assertEquals(range, parseValid(range.toString()));
}
}
@Test
@Test
public void testMissingOpenCloseDelimiter() {
public void testMissingOpenCloseDelimiter() {
コピー
コピー済み
コピー
コピー済み
parse
Inv
alid("1.0");
parse
V
alid("1.0");
}
}
@Test
@Test
public void testMissingOpenDelimiter() {
public void testMissingOpenDelimiter() {
parseInvalid("1.0]");
parseInvalid("1.0]");
parseInvalid("1.0)");
parseInvalid("1.0)");
}
}
@Test
@Test
public void testMissingCloseDelimiter() {
public void testMissingCloseDelimiter() {
parseInvalid("[1.0");
parseInvalid("[1.0");
parseInvalid("(1.0");
parseInvalid("(1.0");
}
}
@Test
@Test
public void testTooManyVersions() {
public void testTooManyVersions() {
parseInvalid("[1,2,3]");
parseInvalid("[1,2,3]");
parseInvalid("(1,2,3)");
parseInvalid("(1,2,3)");
parseInvalid("[1,2,3)");
parseInvalid("[1,2,3)");
}
}
@Test
@Test
public void testSnapshotAndReleaseWithMinimum() {
public void testSnapshotAndReleaseWithMinimum() {
コピー
コピー済み
コピー
コピー済み
Generic
VersionRange range = parseValid("[4.0.0.min,5)");
Osgi
VersionRange range = parseValid("[4.0.0.min,5)");
コピー
コピー済み
コピー
コピー済み
assert
Contains(range, "4.0-alpha-1");
assert
Not
Contains(range, "4.0-alpha-1");
assert
Contains(range, "4.0-SNAPSHOT");
assert
Not
Contains(range, "4.0-SNAPSHOT");
assert
Contains(range, "4.0.0-SNAPSHOT");
assert
Not
Contains(range, "4.0.0-SNAPSHOT");
assertContains(range, "4.min");
assertContains(range, "4.99");
assertContains(range, "4.99");
assertNotContains(range, "5");
assertNotContains(range, "5");
assertEquals(range, parseValid(range.toString()));
assertEquals(range, parseValid(range.toString()));
}
}
@Test
@Test
public void testSnapshotAndReleaseWithoutMinimum() {
public void testSnapshotAndReleaseWithoutMinimum() {
コピー
コピー済み
コピー
コピー済み
Generic
VersionRange range = parseValid("[4.0.0,5)");
Osgi
VersionRange range = parseValid("[4.0.0,5)");
assertNotContains(range, "4.0-alpha-1");
assertNotContains(range, "4.0-SNAPSHOT");
assertNotContains(range, "4.0.0-SNAPSHOT");
assertContains(range, "4.99.99");
assertNotContains(range, "5");
assertContains(range, "5.0.0-SNAPSHOT");
Text moved with changes to lines 163-168 (98.1% similarity)
assertEquals(range, parseValid(range.toString()));
}
@Test
public void testSnapshotAndReleaseWithMinAndMax() {
GenericVersionRange range = parseValid("[4.min,5.min)");
assertContains(range, "4.0-alpha-1");
assertContains(range, "4.0-alpha-1");
assertContains(range, "4.0-SNAPSHOT");
assertContains(range, "4.0-SNAPSHOT");
assertContains(range, "4.0.0-SNAPSHOT");
assertContains(range, "4.0.0-SNAPSHOT");
assertContains(range, "4.99.99");
assertContains(range, "4.99.99");
assertNotContains(range, "5");
assertNotContains(range, "5");
assertNotContains(range, "5.0.0-SNAPSHOT");
assertNotContains(range, "5.0.0-SNAPSHOT");
コピー
コピー済み
コピー
コピー済み
Text moved with changes from lines 155-160 (98.1% similarity)
assertNotContains(range,
"5-alpha-1");
assertEquals(range, parseValid(range.toString()));
}
@Test
public void testSnapshotAndReleaseWithMinAndMax() {
OsgiVersionRange range = parseValid("[4.0.0.min,5.0.0.min)");
assertNotContains(range, "4.0-alpha-1");
assertNotContains(range, "4.0-SNAPSHOT");
assertNotContains(range,
"4.0.0-SNAPSHOT");
assertContains(range, "4.0.0.min");
assertContains(range, "4.0.0-min");
assertContains(range, "4.0.0-minimum");
assertContains(range, "4.99.99");
assertContains(range, "5");
assertContains(range, "5.0.0-SNAPSHOT");
assertContains(range,
"5-alpha-1");
assertNotContains(range, "5-rc");
assertNotContains(range, "5-rc");
コピー
コピー済み
コピー
コピー済み
assertNotContains(range, "5-
ga
");
assertContains(range, "5-ga");
assertContains(range, "5-mi");
assertNotContains(range, "5-
min");
assertNotContains(range, "5-minimum
");
}
}
}
}
0
0
保存された差分
原文
ファイルを開く
/* * (C) Copyright 2017 Code-House, Łukasz Dywicki. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.eclipse.aether.util.version; import org.code_house.maven.osgi.resolver.test.VersionRangeTest; import org.eclipse.aether.version.InvalidVersionSpecificationException; import org.junit.Test; import static org.junit.Assert.*; /** * Customized version of aether generic version. Located here to verify {@link VersionRangeTest} and to track eventual * changes in aether's logic. */ public class GenericVersionRangeTest extends VersionRangeTest<GenericVersionRange, GenericVersion> { protected GenericVersion newVersion(String version) { return new GenericVersion(version); } protected GenericVersionRange parseValid(String range) { try { return new GenericVersionRange(range); } catch (InvalidVersionSpecificationException e) { AssertionError error = new AssertionError(range + " should be valid but failed to parse due to: " + e.getMessage()); error.initCause(e); throw error; } } protected void parseInvalid(String range) { try { new GenericVersionRange(range); fail(range + " should be invalid"); } catch (InvalidVersionSpecificationException e) { assertTrue(true); } } @Test public void testLowerBoundInclusiveUpperBoundInclusive() { GenericVersionRange range = parseValid("[1,2]"); assertContains(range, "1"); assertContains(range, "1.1-SNAPSHOT"); assertContains(range, "2"); assertEquals(range, parseValid(range.toString())); } @Test public void testLowerBoundInclusiveUpperBoundExclusive() { GenericVersionRange range = parseValid("[1.2.3.4.5,1.2.3.4.6)"); assertContains(range, "1.2.3.4.5"); assertNotContains(range, "1.2.3.4.6"); assertEquals(range, parseValid(range.toString())); } @Test public void testLowerBoundExclusiveUpperBoundInclusive() { GenericVersionRange range = parseValid("(1a,1b]"); assertNotContains(range, "1a"); assertContains(range, "1b"); assertEquals(range, parseValid(range.toString())); } @Test public void testLowerBoundExclusiveUpperBoundExclusive() { GenericVersionRange range = parseValid("(1,3)"); assertNotContains(range, "1"); assertContains(range, "2-SNAPSHOT"); assertNotContains(range, "3"); assertEquals(range, parseValid(range.toString())); } @Test public void testSingleVersion() { GenericVersionRange range = parseValid("[1]"); assertContains(range, "1"); assertEquals(range, parseValid(range.toString())); range = parseValid("[1,1]"); assertContains(range, "1"); assertEquals(range, parseValid(range.toString())); } @Test public void testSingleWildcardVersion() { GenericVersionRange range = parseValid("[1.2.*]"); assertContains(range, "1.2-alpha-1"); assertContains(range, "1.2-SNAPSHOT"); assertContains(range, "1.2"); assertContains(range, "1.2.9999999"); assertNotContains(range, "1.3-rc-1"); assertEquals(range, parseValid(range.toString())); } @Test public void testMissingOpenCloseDelimiter() { parseInvalid("1.0"); } @Test public void testMissingOpenDelimiter() { parseInvalid("1.0]"); parseInvalid("1.0)"); } @Test public void testMissingCloseDelimiter() { parseInvalid("[1.0"); parseInvalid("(1.0"); } @Test public void testTooManyVersions() { parseInvalid("[1,2,3]"); parseInvalid("(1,2,3)"); parseInvalid("[1,2,3)"); } @Test public void testSnapshotAndReleaseWithMinimum() { GenericVersionRange range = parseValid("[4.0.0.min,5)"); assertContains(range, "4.0-alpha-1"); assertContains(range, "4.0-SNAPSHOT"); assertContains(range, "4.0.0-SNAPSHOT"); assertContains(range, "4.99"); assertNotContains(range, "5"); assertEquals(range, parseValid(range.toString())); } @Test public void testSnapshotAndReleaseWithoutMinimum() { GenericVersionRange range = parseValid("[4.0.0,5)"); assertNotContains(range, "4.0-alpha-1"); assertNotContains(range, "4.0-SNAPSHOT"); assertNotContains(range, "4.0.0-SNAPSHOT"); assertContains(range, "4.99.99"); assertNotContains(range, "5"); assertContains(range, "5.0.0-SNAPSHOT"); assertEquals(range, parseValid(range.toString())); } @Test public void testSnapshotAndReleaseWithMinAndMax() { GenericVersionRange range = parseValid("[4.min,5.min)"); assertContains(range, "4.0-alpha-1"); assertContains(range, "4.0-SNAPSHOT"); assertContains(range, "4.0.0-SNAPSHOT"); assertContains(range, "4.99.99"); assertNotContains(range, "5"); assertNotContains(range, "5.0.0-SNAPSHOT"); assertNotContains(range, "5-alpha-1"); assertNotContains(range, "5-rc"); assertNotContains(range, "5-ga"); } } 0
変更されたテキスト
ファイルを開く
/* * (C) Copyright 2017 Code-House, Łukasz Dywicki. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.code_house.maven.osgi.resolver.shared.version; import org.code_house.maven.osgi.resolver.test.VersionRangeTest; import org.eclipse.aether.version.InvalidVersionSpecificationException; import org.junit.Test; import static org.junit.Assert.*; /** * Test of OSGi version range filtering. */ public class OsgiVersionRangeTest extends VersionRangeTest<OsgiVersionRange, OsgiVersion> { @Override protected OsgiVersion newVersion(String version) { return new OsgiVersion(version); } @Override protected OsgiVersionRange parseValid(String range) { try { return new OsgiVersionRange(range); } catch (InvalidVersionSpecificationException e) { AssertionError error = new AssertionError(range + " should be valid but failed to parse due to: " + e.getMessage()); error.initCause(e); throw error; } } @Override protected void parseInvalid(String range) { try { new OsgiVersionRange(range); fail(range + " should be invalid"); } catch (InvalidVersionSpecificationException e) { assertTrue(true); } } @Test public void testLowerBoundInclusiveUpperBoundInclusive() { OsgiVersionRange range = parseValid("[1,2]"); assertContains(range, "1"); assertContains(range, "1.1-SNAPSHOT"); assertContains(range, "2"); assertEquals(range, parseValid(range.toString())); } @Test public void testLowerBoundInclusiveUpperBoundExclusive() { OsgiVersionRange range = parseValid("[1.2.3.4,1.2.3.6)"); assertContains(range, "1.2.3.4"); assertContains(range, "1.2.3.45"); assertContains(range, "1.2.3.5"); assertNotContains(range, "1.2.3.6"); assertEquals(range, parseValid(range.toString())); } @Test public void testLowerBoundExclusiveUpperBoundInclusive() { OsgiVersionRange range = parseValid("(1.0.0.a,1.0.0.b]"); assertNotContains(range, "1-a"); assertContains(range, "1-b"); assertEquals(range, parseValid(range.toString())); } @Test public void testLowerBoundExclusiveUpperBoundExclusive() { OsgiVersionRange range = parseValid("(1,3)"); assertNotContains(range, "1"); assertContains(range, "2-SNAPSHOT"); assertNotContains(range, "3"); assertEquals(range, parseValid(range.toString())); } @Test public void testSingleVersion() { OsgiVersionRange range = parseValid("[1,1]"); assertContains(range, "1"); assertEquals(range, parseValid(range.toString())); range = parseValid("[1,1]"); assertContains(range, "1"); assertEquals(range, parseValid(range.toString())); } @Test public void testSingleWildcardVersion() { OsgiVersionRange range = parseValid("1.2"); assertContains(range, "1.2-alpha-1"); assertContains(range, "1.2-SNAPSHOT"); assertContains(range, "1.2"); assertContains(range, "1.2.9999999"); assertContains(range, "1.3-rc-1"); assertContains(range, "1.9"); assertContains(range, "9"); assertEquals(range, parseValid(range.toString())); } @Test public void testMissingOpenCloseDelimiter() { parseValid("1.0"); } @Test public void testMissingOpenDelimiter() { parseInvalid("1.0]"); parseInvalid("1.0)"); } @Test public void testMissingCloseDelimiter() { parseInvalid("[1.0"); parseInvalid("(1.0"); } @Test public void testTooManyVersions() { parseInvalid("[1,2,3]"); parseInvalid("(1,2,3)"); parseInvalid("[1,2,3)"); } @Test public void testSnapshotAndReleaseWithMinimum() { OsgiVersionRange range = parseValid("[4.0.0.min,5)"); assertNotContains(range, "4.0-alpha-1"); assertNotContains(range, "4.0-SNAPSHOT"); assertNotContains(range, "4.0.0-SNAPSHOT"); assertContains(range, "4.min"); assertContains(range, "4.99"); assertNotContains(range, "5"); assertEquals(range, parseValid(range.toString())); } @Test public void testSnapshotAndReleaseWithoutMinimum() { OsgiVersionRange range = parseValid("[4.0.0,5)"); assertContains(range, "4.0-alpha-1"); assertContains(range, "4.0-SNAPSHOT"); assertContains(range, "4.0.0-SNAPSHOT"); assertContains(range, "4.99.99"); assertNotContains(range, "5"); assertNotContains(range, "5.0.0-SNAPSHOT"); assertEquals(range, parseValid(range.toString())); } @Test public void testSnapshotAndReleaseWithMinAndMax() { OsgiVersionRange range = parseValid("[4.0.0.min,5.0.0.min)"); assertNotContains(range, "4.0-alpha-1"); assertNotContains(range, "4.0-SNAPSHOT"); assertNotContains(range, "4.0.0-SNAPSHOT"); assertContains(range, "4.0.0.min"); assertContains(range, "4.0.0-min"); assertContains(range, "4.0.0-minimum"); assertContains(range, "4.99.99"); assertContains(range, "5"); assertContains(range, "5.0.0-SNAPSHOT"); assertContains(range, "5-alpha-1"); assertNotContains(range, "5-rc"); assertContains(range, "5-ga"); assertContains(range, "5-mi"); assertNotContains(range, "5-min"); assertNotContains(range, "5-minimum"); } } 0
違いを見つける