summaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authorFeideus <erwan.ulrich@gmail.com>2018-07-23 22:32:25 +0200
committerFeideus <erwan.ulrich@gmail.com>2018-07-23 22:32:25 +0200
commita903b7c2b81185820330e9fb49d92030f09ab16a (patch)
tree610536ae05c6758257b939a5e8baa76952fcfad4 /src/main
parentb90aa4e328a557311e26837f0633848254f827b0 (diff)
downloadschemafuzz-a903b7c2b81185820330e9fb49d92030f09ab16a.tar.gz
schemafuzz-a903b7c2b81185820330e9fb49d92030f09ab16a.tar.bz2
schemafuzz-a903b7c2b81185820330e9fb49d92030f09ab16a.zip
trying to figure out how to hash viablely
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/org/schemaspy/model/GenericTree.java2
-rw-r--r--src/main/java/org/schemaspy/model/ReportVector.java30
-rw-r--r--src/main/java/org/schemaspy/model/Scorer.java2
3 files changed, 33 insertions, 1 deletions
diff --git a/src/main/java/org/schemaspy/model/GenericTree.java b/src/main/java/org/schemaspy/model/GenericTree.java
index cf5f9c0..5a44869 100644
--- a/src/main/java/org/schemaspy/model/GenericTree.java
+++ b/src/main/java/org/schemaspy/model/GenericTree.java
@@ -138,4 +138,6 @@ public class GenericTree {
for(GenericTreeNode gtn : ref.getChildren())
toArrayHelp(gtn, result);
}
+
+
}
diff --git a/src/main/java/org/schemaspy/model/ReportVector.java b/src/main/java/org/schemaspy/model/ReportVector.java
index 80da4a6..7b084b5 100644
--- a/src/main/java/org/schemaspy/model/ReportVector.java
+++ b/src/main/java/org/schemaspy/model/ReportVector.java
@@ -8,6 +8,7 @@ import java.util.Map;
public class ReportVector {
private ArrayList<StackTraceLine> stackTrace;
+ private int stackTraceHash;
private int codeCoverage; //unused right now
GenericTreeNode parentMutation;
@@ -17,6 +18,10 @@ public class ReportVector {
stackTrace = new ArrayList<StackTraceLine>();
}
+ public int getStackTraceHash() { return stackTraceHash; }
+
+ public void setStackTraceHash(int stackTraceHash) { this.stackTraceHash = stackTraceHash; }
+
public ArrayList<StackTraceLine> getStackTrace() {
return stackTrace;
}
@@ -138,4 +143,29 @@ public class ReportVector {
}
return true;
}
+
+ public int hashStackTrace(GenericTree mutationTree,GenericTreeNode currentNode)
+ {
+ int hash = 0;
+
+
+ for(GenericTreeNode gtn : mutationTree.toArray())
+ {
+ if(!gtn.getReportVector().getStackTrace().get(gtn.getReportVector().getStackTrace().size()-1).compare(currentNode.getReportVector().getStackTrace().get(currentNode.getReportVector().getStackTrace().size()-1)))
+ hash = gtn.getReportVector().getStackTraceHash();
+
+ for(StackTraceLine stl : gtn.getReportVector().getStackTrace())
+ {
+ for(StackTraceLine stlCurrent : currentNode.getReportVector().getStackTrace())
+ {
+
+ if(!stl.compare(stlCurrent))
+ hash = hash+5;
+
+ if()
+
+ }
+ }
+ }
+ }
}
diff --git a/src/main/java/org/schemaspy/model/Scorer.java b/src/main/java/org/schemaspy/model/Scorer.java
index de7a5fb..bcc1fdb 100644
--- a/src/main/java/org/schemaspy/model/Scorer.java
+++ b/src/main/java/org/schemaspy/model/Scorer.java
@@ -267,7 +267,7 @@ public class Scorer {
{
int i = 0;
ReportVector rpv = gtn.getReportVector();
- rpv.setStackTraceHash(rpv.hashStackTrace());
+ rpv.setStackTraceHash(rpv.hashStackTrace(mutationTree,gtn));
predict = rpv.getStackTraceHash();
for(GenericTreeNode gtnLoop : mutationTree.toArray())
{