Browse Source

check synapse name not present twice in brain

nico 8 years ago
parent
commit
0df616ae43
3 changed files with 14 additions and 3 deletions
  1. 10 2
      core/ConfigurationManager/ConfigurationChecker.py
  2. 3 1
      jarvis.py
  3. 1 0
      test.yml

+ 10 - 2
core/ConfigurationManager/ConfigurationChecker.py

@@ -22,6 +22,10 @@ class NoEventPeriod(Exception):
     pass
 
 
+class MultipleSameSynapseName(Exception):
+    pass
+
+
 class ConfigurationChecker:
 
     def __init__(self):
@@ -75,5 +79,9 @@ class ConfigurationChecker:
         :type synapses_list: list of Synapse
         :return:
         """
-        # TODO: check no same name
-        pass
+        seen = set()
+        for synapse in synapses_list:
+            if synapse.name in seen:
+                raise MultipleSameSynapseName("Synapse with same name: %s" % synapse.name)
+            seen.add(synapse.name)
+        return True

+ 3 - 1
jarvis.py

@@ -20,10 +20,12 @@ def main():
     # create arguments
     parser = argparse.ArgumentParser(description='JARVIS')
     parser.add_argument("action", help="[start|gui]")
-    parser.add_argument("--synapse", help="SYNAPSE")
+    parser.add_argument("--synapse", help="SYNAPSE. Name of a synapse to load in quote")
+    parser.add_argument("--brain-file", help="BRAIN_PATH_FILE")
 
     # parse arguments from script parameters
     args = parser.parse_args()
+    print args
     if len(sys.argv[1:]) == 0:
         parser.print_usage()
         sys.exit(1)

+ 1 - 0
test.yml

@@ -7,3 +7,4 @@
     signals:
       - event:
           period: "* * * 5 *"
+