feat(plugins): allow to set minimum required jadx version in plugin info (#2314)

This commit is contained in:
Skylot
2024-11-06 16:29:43 +00:00
parent 5d064d3e50
commit be6cb573b1
19 changed files with 453 additions and 96 deletions
@@ -1,44 +0,0 @@
package jadx.gui.update;
import org.junit.jupiter.api.Test;
import static org.assertj.core.api.Assertions.assertThat;
class VersionComparatorTest {
@Test
public void testCompare() {
checkCompare("", "", 0);
checkCompare("1", "1", 0);
checkCompare("1", "2", -1);
checkCompare("1.1", "1.1", 0);
checkCompare("0.5", "0.5", 0);
checkCompare("0.5", "0.5.0", 0);
checkCompare("0.5", "0.5.00", 0);
checkCompare("0.5", "0.5.0.0", 0);
checkCompare("0.5", "0.5.0.1", -1);
checkCompare("0.5.0", "0.5.0", 0);
checkCompare("0.5.0", "0.5.1", -1);
checkCompare("0.5", "0.5.1", -1);
checkCompare("0.4.8", "0.5", -1);
checkCompare("0.4.8", "0.5.0", -1);
checkCompare("0.4.8", "0.6", -1);
checkCompare("1.3.3.1", "1.3.3", 1);
checkCompare("1.3.3-1", "1.3.3", 1);
checkCompare("1.3.3.1-1", "1.3.3", 1);
}
@Test
public void testCompareUnstable() {
checkCompare("r2190.ce527ed", "jadx-r2299.742d30d", -1);
}
private static void checkCompare(String a, String b, int result) {
assertThat(VersionComparator.checkAndCompare(a, b))
.as("Compare %s and %s expect %d", a, b, result)
.isEqualTo(result);
assertThat(VersionComparator.checkAndCompare(b, a))
.as("Compare %s and %s expect %d", b, a, -result)
.isEqualTo(-result);
}
}