Баг со сравнением. если первые два файла успешно сравнивались, выходило из цикла сравнения. поэтому ловились не все различия.
This commit is contained in:
2025-07-14 20:28:15 +03:00
parent 651f65060a
commit fa6f39bb21
6 changed files with 12 additions and 47 deletions

View File

@@ -3,7 +3,7 @@ import Common.Utils.Vector_;
import java.util.Vector;
public class Constants {
public static final int version = 1256;
public static final int version = 1257;
public static final int planner_version = 24;
public static final int testingMaxKernels = 64;
//--

View File

@@ -122,7 +122,7 @@ public class SapforVersion_json implements Serializable {
}
}
}
public boolean isMatchServer(SapforVersion_json version_json) {
public boolean isMatch(SapforVersion_json version_json) {
if (!description.equals(version_json.description)) {
return false;
}
@@ -150,7 +150,8 @@ public class SapforVersion_json implements Serializable {
} catch (Exception ex) {
ex.printStackTrace();
}
return text1.equalsIgnoreCase(text2);
if (!text1.equalsIgnoreCase(text2))
return false;
}
return true;
}

View File

@@ -155,47 +155,7 @@ public class SapforTask extends DBObject {
SapforVersion_json version1 = versions1.get(name1);
SapforVersion_json version2 = versions2.get(name1);
//---
if (!version1.isMatchServer(version2)) {
comparisonState = ComparisonState.NotMatch;
task2.comparisonState = ComparisonState.NotMatch;
version1.comparisonState = VersionComparisonState.NotMatch;
version2.comparisonState = VersionComparisonState.NotMatch;
//-
} else {
version1.comparisonState = VersionComparisonState.Match;
version2.comparisonState = VersionComparisonState.Match;
//-
}
} else {
comparisonState = ComparisonState.NotMatch;
task2.comparisonState = ComparisonState.NotMatch;
//--
}
}
//--
if (comparisonState.equals(ComparisonState.Unknown)) {
comparisonState = ComparisonState.Match;
task2.comparisonState = ComparisonState.Match;
}
}
public void checkMatchServer(SapforTask task2) {
if (!state.equals(task2.state)) {
comparisonState = ComparisonState.NotMatch;
task2.comparisonState = ComparisonState.NotMatch;
}
if ((versions.size() != task2.versions.size()) || (variants.size() != task2.variants.size())) {
comparisonState = ComparisonState.NotMatch;
task2.comparisonState = ComparisonState.NotMatch;
}
LinkedHashMap<String, SapforVersion_json> versions1 = getSortedVersions();
LinkedHashMap<String, SapforVersion_json> versions2 = task2.getSortedVersions();
//---
for (String name1 : versions1.keySet()) {
if (versions2.containsKey(name1)) {
SapforVersion_json version1 = versions1.get(name1);
SapforVersion_json version2 = versions2.get(name1);
//---
if (!version1.isMatchServer(version2)) {
if (!version1.isMatch(version2)) {
comparisonState = ComparisonState.NotMatch;
task2.comparisonState = ComparisonState.NotMatch;
version1.comparisonState = VersionComparisonState.NotMatch;

View File

@@ -187,7 +187,7 @@ public class SapforTestingPlanner extends TestingPlanner<SapforPackage> {
//--
for (SapforTask task1 : ethalon.package_json.tasks) {
SapforTask task2 = testingPackage.package_json.getTaskByKey(task1.getUniqueKey());
task1.checkMatchServer(task2); //тексты сравниваются просто посимвольно.
task1.checkMatch(task2); //тексты сравниваются просто посимвольно.
if (task1.comparisonState.equals(ComparisonState.NotMatch)) {
testingPackage.mismatchesCount++;
}

View File

@@ -247,7 +247,7 @@ public class SapforPackagesComparisonForm {
package1.package_json.tasks.parallelStream()
.forEach(task1 -> {
SapforTask task2 = package2.package_json.getTaskByKey(task1.getUniqueKey());
task1.checkMatchServer(task2);
task1.checkMatch(task2);
})
).join();
System.out.println("done");