diff --git a/ttool/src/test/java/pragmasmodel/AliceAndBobPragmasTest.java b/ttool/src/test/java/pragmasmodel/AliceAndBobPragmasTest.java
index 9efc4da3236ae060503874180e2b56d08b0558fa..8b85ed7df0896607242415be2bb7764fa25266d0 100644
--- a/ttool/src/test/java/pragmasmodel/AliceAndBobPragmasTest.java
+++ b/ttool/src/test/java/pragmasmodel/AliceAndBobPragmasTest.java
@@ -4,6 +4,7 @@ import myutil.FileException;
 import myutil.FileUtils;
 import myutil.TraceManager;
 import org.junit.Assert;
+import org.junit.Before;
 import org.junit.BeforeClass;
 import org.junit.Test;
 
@@ -15,19 +16,20 @@ public class AliceAndBobPragmasTest {
 
     private static AvatarNetworkProjectPragmaTests parent;
 
-    private static HashMap<String, String[]> resultList;
+    private static HashMap<String, String[]> goldenList;
 
     private static ArrayList<String> resultsToBeChecked;
 
-    private static String currentTabbedPane;
+    private static final ArrayList<String> tabbedPanes = new ArrayList<>(Arrays.asList("SymExchangeArch"));;
 
+    private static int currentIdxTabbedPane = -1;
 
-    //@BeforeClass
+
+    @BeforeClass
     public static void setUp() {
         parent = new AvatarNetworkProjectPragmaTests();
-        parent.setProjectName("AliceAndBob");
-        parent.buildTMAPPattern();
-        resultList = new HashMap<String, String[]>();
+        parent.setProjectName("AliceAndBobHW");
+        goldenList = new HashMap<String, String[]>();
         resultsToBeChecked = new ArrayList<>();
 
     }
@@ -35,9 +37,6 @@ public class AliceAndBobPragmasTest {
     @BeforeClass
     public static void setUpGolden() throws FileException {
 
-        //Buid ArrayList of the String name Pane
-        ArrayList<String> tabbedPanes = new ArrayList<>(Arrays.asList("SymExchangeArch"));
-
         String path = "test/resources/pragmasmodel/AliceAndBobHW/";
 
         for (String tabbedPane : tabbedPanes){
@@ -45,18 +44,18 @@ public class AliceAndBobPragmasTest {
             TraceManager.addDev("tabbedPane : " + tabbedPane);
             String fileContent = FileUtils.loadFile(path + tabbedPane + "/golden");
 
-            resultList.put(tabbedPane,fileContent.split("\n"));
+            goldenList.put(tabbedPane,fileContent.split("\n"));
 
         }
 
     }
 
-    //@Before
+    @Before
     public void switchTabbedPane() throws Exception {
-        //currentTabbedPane = parent.switchTab();
+        //no index out of bounds because runs x times if x @Test. x Must be same length as tabbedPanes.size()
+        currentIdxTabbedPane+=1;
 
-        parent.checkPragmas();
-        parent.generatePvspec();
+        parent.buildPvspec(tabbedPanes.get(currentIdxTabbedPane));
         parent.runProverif();
 
         resultsToBeChecked = parent.getResultsToBeChecked();
@@ -65,22 +64,17 @@ public class AliceAndBobPragmasTest {
 
     @Test
     public void testPragmaResult_1(){
-        iterateOverArrayList(currentTabbedPane);
+        iterateOverArrayList(tabbedPanes.get(currentIdxTabbedPane));
     }
 
-    @Test
-    public void test(){
-    }
 
     public void iterateOverArrayList(String key){
-        String[] resultsGolden = resultList.get(key);
+        String[] golden = goldenList.get(key);
 
-        if (resultsGolden.length != resultsToBeChecked.size()){
-            Assert.assertTrue(false);
-        }
+        Assert.assertEquals(golden.length, resultsToBeChecked.size());
 
-        for (int i = 0; i < resultsGolden.length; i++) {
-            Assert.assertEquals(resultsGolden[i],resultsToBeChecked.get(i));
+        for (int i = 0; i < golden.length; i++) {
+            Assert.assertEquals(golden[i],resultsToBeChecked.get(i));
         }
 
     }
diff --git a/ttool/src/test/java/pragmasmodel/AvatarNetworkProjectPragmaTests.java b/ttool/src/test/java/pragmasmodel/AvatarNetworkProjectPragmaTests.java
index 3c3646c81b407898869f9c14de5a515df220cd5f..ad1bc316d79111c3aa6a4c87bc7410c7b53a94ca 100644
--- a/ttool/src/test/java/pragmasmodel/AvatarNetworkProjectPragmaTests.java
+++ b/ttool/src/test/java/pragmasmodel/AvatarNetworkProjectPragmaTests.java
@@ -1,22 +1,38 @@
 package pragmasmodel;
 
+import avatartranslator.AvatarSpecification;
+import avatartranslator.toproverif.AVATAR2ProVerif;
 import common.ConfigurationTTool;
 import common.SpecConfigTTool;
 import launcher.LauncherException;
 import launcher.RshClient;
 import launcher.RshClientReader;
+import myutil.FileException;
+import myutil.FileUtils;
+import myutil.MalformedConfigurationException;
 import myutil.TraceManager;
 import proverifspec.ProVerifOutputAnalyzer;
+import proverifspec.ProVerifSpec;
+import tmltranslator.TMLMapping;
+import tmltranslator.TMLMappingTextSpecification;
+import tmltranslator.TMLSyntaxChecking;
+import tmltranslator.patternhandling.PatternIntegration;
+import tmltranslator.toavatarsec.TML2Avatar;
 import ui.AbstractUITest;
 import ui.AvatarDesignPanel;
+import ui.TGComponent;
 import ui.TGUIAction;
 import ui.networkmodelloader.NetworkModel;
 
 import java.io.BufferedReader;
+import java.io.File;
 import java.io.IOException;
+import java.io.InputStreamReader;
 import java.util.ArrayList;
 
-public class AvatarNetworkProjectPragmaTests extends AbstractUITest {
+import static org.junit.Assert.assertTrue;
+
+public class AvatarNetworkProjectPragmaTests {
 
 
     protected static String PROJECT_NAME="";
@@ -29,83 +45,95 @@ public class AvatarNetworkProjectPragmaTests extends AbstractUITest {
 
     private ProVerifOutputAnalyzer pvoa;
 
+    protected static String currentTabbedPane;
 
-    public AvatarNetworkProjectPragmaTests() {super();}
-
-    public void buildTMAPPattern() {
+    protected static String currentFolderPath;
 
-    }
 
-    public void setProjectName(String projectName){
-        PROJECT_NAME=projectName;
-    }
+    public AvatarNetworkProjectPragmaTests() {}
 
-    public void switchTab(){
 
+    private TMLMapping<?> buildTMAPPattern() {
+        resultsToBeChecked = new ArrayList<>();
+        currentFolderPath = "test/resources/pragmasmodel/" + PROJECT_NAME + "/" + currentTabbedPane + "/";
+        String filename = "spec";
+        TMLMappingTextSpecification<Class<?>> tmts = new TMLMappingTextSpecification<Class<?>>(filename);
+        File f = new File(currentFolderPath + filename + ".tmap");
+        String spec = null;
+        try {
+            spec = FileUtils.loadFileData(f);
+        } catch (Exception e) {
+            System.out.println("Exception executing: loading " + currentTabbedPane);
+        }
+        boolean parsed = tmts.makeTMLMapping(spec, currentFolderPath);
+        TMLMapping<?> _tmapPattern = tmts.getTMLMapping();
+        // Checking syntax
+        TMLSyntaxChecking syntax = new TMLSyntaxChecking(_tmapPattern);
+        syntax.checkSyntax();
+        return _tmapPattern;
     }
 
+    public void buildPvspec(String _currentTabbedPane) throws FileException {
+
+        currentTabbedPane = _currentTabbedPane;
+        TMLMapping<?> _tmapPattern = buildTMAPPattern();
+        //null for _referenceObject ?
+        Object o = null;
+        if (_tmapPattern.getTMLModeling().getReference() instanceof TGComponent) {
+            o = ((TGComponent)(_tmapPattern.getTMLModeling().getReference())).getTDiagramPanel().tp;
+        }
+        TML2Avatar tml2Avatar = new TML2Avatar(_tmapPattern,false,false,o);
+        AvatarSpecification avatarspec = tml2Avatar.generateAvatarSpec("1",true);
+        AVATAR2ProVerif avatar2proverif = new AVATAR2ProVerif(avatarspec);
+        ProVerifSpec proverif = avatar2proverif.generateProVerif(true, true, 0, true,
+                true);
 
-    public void runProverif() throws LauncherException {
+        String filename = currentFolderPath + "pvspec";
+        FileUtils.saveFile(filename, proverif.getStringSpec());
 
-        String cmd = "";
-        cmd += ConfigurationTTool.ProVerifVerifierPath;
-        cmd += " -in pitype ";
-        cmd += pvspecPath;
-        TraceManager.addDev("Executing command:" + cmd);
+    }
 
-        rshc = new RshClient(ConfigurationTTool.ProVerifVerifierHost);
-        rshc.setCmd(cmd);
-        rshc.sendExecuteCommandRequest();
-        RshClientReader reader = rshc.getDataReaderFromProcess();
+    public void setProjectName(String projectName){
+        PROJECT_NAME=projectName;
+    }
 
 
-//        this.pvoa = mainGUI.gtm.getProVerifOutputAnalyzer();
-//        this.pvoa.analyzeOutput(reader, true);
+    public void runProverif() throws MalformedConfigurationException {
 
+        String filename = currentFolderPath + "pvspec";
         String str;
-        BufferedReader bReader = new BufferedReader(reader);
+        ConfigurationTTool.loadConfiguration("/home/kali/Documents/Eurecom/SemesterProject/TTool/bin/config.xml",false);
+        String cmd = "/bin/bash -c \'" + ConfigurationTTool.ProVerifVerifierPath + " -in pitype " + filename + " |grep RESULT\'";
 
-        try {
-            StringBuffer sb = new StringBuffer("");
 
-            // Loop through every line in the output
-            while ((str = bReader.readLine()) != null) {
-                sb.append(str + "\n");
+        TraceManager.addDev("proverif path : " + ConfigurationTTool.ProVerifVerifierPath);
+        TraceManager.addDev("Executing command " + cmd);
 
-                if (str.isEmpty())
-                    continue;
+        try {
+            ProcessBuilder processBuilder = new ProcessBuilder("/bin/bash", "-c", cmd);
+            processBuilder.redirectErrorStream(true);
+            Process process = processBuilder.start();
+            BufferedReader process_in = new BufferedReader(new InputStreamReader(process.getInputStream()));
 
-                //TraceManager.addDev("Analyzing trace:" + str);
+            while ((str = process_in.readLine()) != null) {
+                TraceManager.addDev("Output proverif : " + str);
+                resultsToBeChecked.add(str);
 
-                // Found a line with a RESULT
-                if (str.startsWith("RESULT ")) {
-                    // Remove 'RESULT ' at the begining
-                    str = str.substring(7);
-                    resultsToBeChecked.add(str);
-                }
             }
-        } catch (IOException e) {
-            TraceManager.addDev("readLine error");
+        } catch (Exception e) {
+            TraceManager.addDev("FAILED: executing: " + cmd + ": " + e.getMessage());
         }
+
     }
 
     public void generatePvspec(){
 
         pvspecPath = SpecConfigTTool.ProVerifCodeDirectory += "pvspec";
 
-        mainGUI.gtm.generateProVerifFromAVATAR(
-                pvspecPath,
-                1,
-                true,
-                true,
-                "1");
-
     }
 
     public void checkPragmas() throws Exception {
-        if (!mainGUI.checkModelingSyntax(mainGUI.getCurrentTURTLEPanel(),true)){
-            throw new Exception();
-        }
+
     }
 
     public ArrayList<String> getResultsToBeChecked(){