gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] [taler-schemafuzz] branch master updated: Transfer makes tw


From: gnunet
Subject: [GNUnet-SVN] [taler-schemafuzz] branch master updated: Transfer makes two do's happen. pathFinding fixed. Still working.
Date: Wed, 20 Jun 2018 18:46:02 +0200

This is an automated email from the git hooks/post-receive script.

erwan-ulrich pushed a commit to branch master
in repository schemafuzz.

The following commit(s) were added to refs/heads/master by this push:
     new 79a2c8a  Transfer makes two do's happen. pathFinding fixed. Still 
working.
79a2c8a is described below

commit 79a2c8ad1620fa4ec2b4381338297f61810ef042
Author: Feideus <address@hidden>
AuthorDate: Wed Jun 20 18:45:52 2018 +0200

    Transfer makes two do's happen. pathFinding fixed. Still working.
---
 src/main/java/org/schemaspy/DBFuzzer.java          | 18 ++++++++++++++--
 .../java/org/schemaspy/model/GenericTreeNode.java  | 25 +++++++++++-----------
 .../org/schemaspy/model/GenericTreeNodeTest.java   | 12 +----------
 .../java/org/schemaspy/model/GenericTreeTest.java  | 10 ++++-----
 4 files changed, 34 insertions(+), 31 deletions(-)

diff --git a/src/main/java/org/schemaspy/DBFuzzer.java 
b/src/main/java/org/schemaspy/DBFuzzer.java
index 1090e2c..7c306c8 100644
--- a/src/main/java/org/schemaspy/DBFuzzer.java
+++ b/src/main/java/org/schemaspy/DBFuzzer.java
@@ -143,7 +143,21 @@ public class DBFuzzer
                         mutationTree.addToTree(currentMutation);
                     }
                     else
-                        LOGGER.info("QueryError. This update affected 0 rows");
+                    {
+                        LOGGER.info("QueryError. This update affected 0 
rows.");
+                        
if(!currentMutation.getParent().compare(mutationTree.getLastMutation()))
+                        {
+                            try
+                            {
+                                
currentMutation.getParent().undoToMutation(mutationTree.getLastMutation(),analyzer);
+
+                            }
+                            catch(Exception e)
+                            {
+                                e.printStackTrace();
+                            }
+                        }
+                    }
                 }
             }
             catch(Exception e)
@@ -333,7 +347,7 @@ public class DBFuzzer
             }
             else
             {
-                Random changeOrDepthen = new Random(); // 1 is same row
+                Random changeOrDepthen = new Random(); // 1 inside tree, 2 is 
pick new random row
 
                 if(changeOrDepthen.nextInt(2) == 1)
                 {
diff --git a/src/main/java/org/schemaspy/model/GenericTreeNode.java 
b/src/main/java/org/schemaspy/model/GenericTreeNode.java
index 9e02bc6..7bc0d17 100644
--- a/src/main/java/org/schemaspy/model/GenericTreeNode.java
+++ b/src/main/java/org/schemaspy/model/GenericTreeNode.java
@@ -187,10 +187,9 @@ public class GenericTreeNode {
     public void setChosenChange(SingleChange sc) {
         this.chosenChange = sc;
         
this.chosenChange.getAttachedToMutation().getPotential_changes().remove(chosenChange);
-        this.getPotential_changes().add(sc);
         this.chosenChange.setAttachedToMutation(this);
 
-        assert(sc.getAttachedToMutation().equals(this.getId()));
+        assert(sc.getAttachedToMutation().getId().equals(this.getId()));
     }
 
     /**
@@ -350,7 +349,7 @@ public class GenericTreeNode {
             int nbUpdates = stmt.executeUpdate(theQuery);
             return nbUpdates;
         } catch (Exception e) {
-            System.out.println("Error ! : Mutation Canceled" + e); // 
temporerally putting aside the Unique constraint brought by the 
transfertToParent Mechanic
+            e.printStackTrace(); // TransfertToMutation Modifies the tree and 
provoques the happenning of 2 do's on one single mutation during undoToMutation.
             return 0;
         }
     }
@@ -403,7 +402,9 @@ public class GenericTreeNode {
                             theQuery = theQuery + (entry.getKey() + "='" + 
entry.getValue().toString() + "' AND ");
                         else
                             theQuery = theQuery + (entry.getKey() + " IS NULL 
AND ");
-                    } else {
+                    }
+                    else
+                    {
                         if (entry.getValue() != null)
                             theQuery = theQuery + (entry.getKey() + "=" + 
entry.getValue().toString() + " AND ");
                         else
@@ -413,9 +414,9 @@ public class GenericTreeNode {
 
             } else {
                 if (undo)
-                    theQuery = theQuery + (entry.getKey() + "='" + 
chosenChange.getNewValue().toString() + "' AND ");
+                    theQuery = theQuery + (entry.getKey() + "='" + 
post_change_row.getContent().get(entry.getKey()) + "' AND ");
                 else
-                    theQuery = theQuery + (entry.getKey() + "='" + 
chosenChange.getOldValue().toString() + "' AND ");
+                    theQuery = theQuery + (entry.getKey() + "='" + 
initial_state_row.getContent().get(entry.getKey()) + "' AND ");
             }
         }
         try {
@@ -483,20 +484,19 @@ public class GenericTreeNode {
 
     public boolean undoToMutation(GenericTreeNode target, SchemaAnalyzer 
analyzer) {
         ArrayList<GenericTreeNode> goingUp = findPathToMutation(target).get(0);
-        goingUp.remove(this.getParent());
         ArrayList<GenericTreeNode> goingDown = 
findPathToMutation(target).get(1);
 
-        if(goingUp.contains(parent))
+        if(goingUp.contains(parent) && goingDown.isEmpty())
             goingUp.remove(parent);
 
         for (GenericTreeNode node : goingUp) {
-            if (node.undo(analyzer.getSqlService(), analyzer.getDb()) > 0) ;
-                System.out.println("success");
+            if (node.undo(analyzer.getSqlService(), analyzer.getDb()) > 0)
+                System.out.println("success undoing :"+node.getId());
         }
 
         for (GenericTreeNode node : goingDown) {
-            if (node.inject(analyzer.getSqlService(), analyzer.getDb(), false) 
> 0) ;
-                System.out.println("success");
+            if (node.inject(analyzer.getSqlService(), analyzer.getDb(), false) 
> 0)
+                System.out.println("success doing :"+node.getId());
 
         }
 
@@ -560,7 +560,6 @@ public class GenericTreeNode {
             tmpThis = tmpThis.getParent();
             tmpTarget = tmpTarget.getParent();
         }
-        thisPath.add(tmpThis); // tmpThis and tmpTarget are equals, so add the 
commun ancestor
 
         Collections.reverse(targetPath);
         finalPath.add(thisPath); //way up
diff --git a/src/test/java/org/schemaspy/model/GenericTreeNodeTest.java 
b/src/test/java/org/schemaspy/model/GenericTreeNodeTest.java
index 8b06778..b24242b 100644
--- a/src/test/java/org/schemaspy/model/GenericTreeNodeTest.java
+++ b/src/test/java/org/schemaspy/model/GenericTreeNodeTest.java
@@ -15,16 +15,12 @@ import org.junit.Test;
 import org.springframework.boot.CommandLineRunner;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.boot.test.mock.mockito.MockBean;
-import org.springframework.test.context.TestContext;
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
-import org.springframework.test.context.junit4.SpringRunner;
 import org.springframework.test.context.support.AbstractTestExecutionListener;
 
 import java.sql.DatabaseMetaData;
 import java.sql.PreparedStatement;
 import java.sql.ResultSet;
-import java.util.ArrayList;
-import java.util.HashMap;
 import java.util.Random;
 
 
@@ -78,7 +74,6 @@ public class GenericTreeNodeTest extends 
AbstractTestExecutionListener {
         }
     }
 
-    @Ignore
     @Test
     public void WeightPropagationTest() throws Exception
     {
@@ -121,7 +116,6 @@ public class GenericTreeNodeTest extends 
AbstractTestExecutionListener {
 
     }
 
-    @Ignore
     @Test
     public void SingleChangeBasedOnWeightShouldNotReturnNull() throws Exception
     {
@@ -147,7 +141,6 @@ public class GenericTreeNodeTest extends 
AbstractTestExecutionListener {
         Assert.assertNotNull(tmpMutation3.singleChangeBasedOnWeight());
     }
 
-    @Ignore
     @Test
     public void singleChangeAttachedMutationShouldMatch() throws Exception// 
Not very Usefull
     {
@@ -167,7 +160,6 @@ public class GenericTreeNodeTest extends 
AbstractTestExecutionListener {
 
     }
 
-    @Ignore
     @Test
     public void NoNullMutationPossibilitiesTest() throws Exception
     {
@@ -183,7 +175,6 @@ public class GenericTreeNodeTest extends 
AbstractTestExecutionListener {
 
     }
 
-    @Ignore
     @Test
     public void injectAndUndoConsistencyTest() throws Exception
     {
@@ -217,7 +208,6 @@ public class GenericTreeNodeTest extends 
AbstractTestExecutionListener {
 
     }
 
-    @Ignore
     @Test
     public void compareTest() throws Exception
     {
@@ -228,7 +218,7 @@ public class GenericTreeNodeTest extends 
AbstractTestExecutionListener {
         QueryResponse response = 
parser.parse(rs,database.getTablesMap().get("actual_test_table"));
 
         Row row = response.getRows().get(0);
-        Row row2 = row.clone();
+        Row row2 = row.myClone();
 
         GenericTreeNode tmpMutation1 = new 
GenericTreeNode(response.getRows().get(0),1,sqlService);
         
tmpMutation1.setChosenChange(tmpMutation1.getPotential_changes().get(0));
diff --git a/src/test/java/org/schemaspy/model/GenericTreeTest.java 
b/src/test/java/org/schemaspy/model/GenericTreeTest.java
index 5a8e692..3057f20 100644
--- a/src/test/java/org/schemaspy/model/GenericTreeTest.java
+++ b/src/test/java/org/schemaspy/model/GenericTreeTest.java
@@ -75,11 +75,11 @@ public class GenericTreeTest {
         QueryResponse response = 
parser.parse(rs,database.getTablesMap().get("actual_test_table"));
 
         Row row = response.getRows().get(0);
-        Row row2 = row.clone();
-        Row row3 = row.clone();
-        Row row4 = row.clone();
-        Row row5 = row.clone();
-        Row row6 = row.clone();
+        Row row2 = row.myClone();
+        Row row3 = row.myClone();
+        Row row4 = row.myClone();
+        Row row5 = row.myClone();
+        Row row6 = row.myClone();
 
         GenericTree tree = new GenericTree();
 

-- 
To stop receiving notification emails like this one, please contact
address@hidden



reply via email to

[Prev in Thread] Current Thread [Next in Thread]