|
@@ -206,7 +206,7 @@ class TestOrderAnalyser(unittest.TestCase):
|
|
|
|
|
|
signal1 = Order(sentence="this is the sentence")
|
|
|
signal2 = Order(sentence="this is the second sentence")
|
|
|
- signal3 = Order(sentence="this is the third sentence")
|
|
|
+ signal3 = Order(sentence="that is part of the third sentence")
|
|
|
|
|
|
synapse1 = Synapse(name="Synapse1", neurons=[neuron1, neuron2], signals=[signal1])
|
|
|
synapse2 = Synapse(name="Synapse2", neurons=[neuron3, neuron4], signals=[signal2])
|
|
@@ -223,9 +223,53 @@ class TestOrderAnalyser(unittest.TestCase):
|
|
|
self.assertEquals(OrderAnalyser._get_matching_synapse_list(all_synapses_list=all_synapse_list,
|
|
|
order_to_match=order_to_match),
|
|
|
expected_result,
|
|
|
- "Fail matching the expected synapse from the complete synapse list and the order")
|
|
|
+ "Fail matching 'the expected synapse' from the complete synapse list and the order")
|
|
|
|
|
|
- # TODO : to be continued
|
|
|
+ # Multiple Matching synapses
|
|
|
+ signal2 = Order(sentence="this is the sentence")
|
|
|
+
|
|
|
+ synapse2 = Synapse(name="Synapse2", neurons=[neuron3, neuron4], signals=[signal2])
|
|
|
+ order_to_match = "this is the sentence"
|
|
|
+
|
|
|
+ all_synapse_list = [synapse1,
|
|
|
+ synapse2,
|
|
|
+ synapse3]
|
|
|
+
|
|
|
+ expected_result = [synapse1,
|
|
|
+ synapse2]
|
|
|
+ self.assertEquals(OrderAnalyser._get_matching_synapse_list(all_synapses_list=all_synapse_list,
|
|
|
+ order_to_match=order_to_match),
|
|
|
+ expected_result,
|
|
|
+ "Fail 'Multiple Matching synapses' from the complete synapse list and the order")
|
|
|
+
|
|
|
+ # matching no synapses
|
|
|
+ order_to_match = "this is not the correct word"
|
|
|
+
|
|
|
+ all_synapse_list = [synapse1,
|
|
|
+ synapse2,
|
|
|
+ synapse3]
|
|
|
+
|
|
|
+ expected_result = []
|
|
|
+
|
|
|
+ self.assertEquals(OrderAnalyser._get_matching_synapse_list(all_synapses_list=all_synapse_list,
|
|
|
+ order_to_match=order_to_match),
|
|
|
+ expected_result,
|
|
|
+ "Fail matching 'no synapses' from the complete synapse list and the order")
|
|
|
+
|
|
|
+ # matching synapse with all key worlds
|
|
|
+ # /!\ Some words in the order are matching all words in synapses signals !
|
|
|
+ order_to_match = "this is not the correct sentence"
|
|
|
+ all_synapse_list = [synapse1,
|
|
|
+ synapse2,
|
|
|
+ synapse3]
|
|
|
+
|
|
|
+ expected_result = [synapse1,
|
|
|
+ synapse2]
|
|
|
+
|
|
|
+ self.assertEquals(OrderAnalyser._get_matching_synapse_list(all_synapses_list=all_synapse_list,
|
|
|
+ order_to_match=order_to_match),
|
|
|
+ expected_result,
|
|
|
+ "Fail matching 'synapse with all key worlds' from the complete synapse list and the order")
|
|
|
|
|
|
def test_get_synapse_params(self):
|
|
|
# Init
|
|
@@ -241,10 +285,69 @@ class TestOrderAnalyser(unittest.TestCase):
|
|
|
|
|
|
self.assertEquals(OrderAnalyser._get_synapse_params(synapse=synapse1, order_to_check=order_to_check),
|
|
|
expected_result,
|
|
|
- "Fail to retrieve the params of the synapse from the order")
|
|
|
+ "Fail to retrieve 'the params' of the synapse from the order")
|
|
|
+
|
|
|
+ # Multiple match
|
|
|
+ signal1 = Order(sentence="this is the {{ sentence }}")
|
|
|
+
|
|
|
+ synapse1 = Synapse(name="Synapse1", neurons=[neuron1, neuron2], signals=[signal1])
|
|
|
+
|
|
|
+ order_to_check = "this is the value with multiple words"
|
|
|
+ expected_result = {'sentence': 'value with multiple words'}
|
|
|
+
|
|
|
+ self.assertEqual(OrderAnalyser._get_synapse_params(synapse=synapse1, order_to_check=order_to_check),
|
|
|
+ expected_result,
|
|
|
+ "Fail to retrieve the 'multiple words params' of the synapse from the order")
|
|
|
+
|
|
|
+ # Multiple params
|
|
|
+ signal1 = Order(sentence="this is the {{ sentence }} with multiple {{ params }}")
|
|
|
+
|
|
|
+ synapse1 = Synapse(name="Synapse1", neurons=[neuron1, neuron2], signals=[signal1])
|
|
|
+
|
|
|
+ order_to_check = "this is the value with multiple words"
|
|
|
+ expected_result = {'sentence': 'value',
|
|
|
+ 'params':'words'}
|
|
|
+
|
|
|
+ self.assertEqual(OrderAnalyser._get_synapse_params(synapse=synapse1, order_to_check=order_to_check),
|
|
|
+ expected_result,
|
|
|
+ "Fail to retrieve the 'multiple params' of the synapse from the order")
|
|
|
+
|
|
|
+ # Multiple params with multiple words
|
|
|
+ signal1 = Order(sentence="this is the {{ sentence }} with multiple {{ params }}")
|
|
|
+
|
|
|
+ synapse1 = Synapse(name="Synapse1", neurons=[neuron1, neuron2], signals=[signal1])
|
|
|
+
|
|
|
+ order_to_check = "this is the multiple values with multiple values as words"
|
|
|
+ expected_result = {'sentence': 'multiple values',
|
|
|
+ 'params': 'values as words'}
|
|
|
+
|
|
|
+ self.assertEqual(OrderAnalyser._get_synapse_params(synapse=synapse1, order_to_check=order_to_check),
|
|
|
+ expected_result,
|
|
|
+ "Fail to retrieve the 'multiple params with multiple words' of the synapse from the order")
|
|
|
+
|
|
|
+ # params at the begining of the sentence
|
|
|
+ signal1 = Order(sentence="{{ sentence }} this is the sentence")
|
|
|
+
|
|
|
+ synapse1 = Synapse(name="Synapse1", neurons=[neuron1, neuron2], signals=[signal1])
|
|
|
+
|
|
|
+ order_to_check = "hello world this is the multiple values with multiple values as words"
|
|
|
+ expected_result = {'sentence': 'hello world'}
|
|
|
+
|
|
|
+ self.assertEqual(OrderAnalyser._get_synapse_params(synapse=synapse1, order_to_check=order_to_check),
|
|
|
+ expected_result,
|
|
|
+ "Fail to retrieve the 'params at the begining of the sentence' of the synapse from the order")
|
|
|
+
|
|
|
+ # all of the sentence is a variable
|
|
|
+ signal1 = Order(sentence="{{ sentence }}")
|
|
|
+
|
|
|
+ synapse1 = Synapse(name="Synapse1", neurons=[neuron1, neuron2], signals=[signal1])
|
|
|
|
|
|
- # TODO : to be continued
|
|
|
+ order_to_check = "this is the all sentence is a variable"
|
|
|
+ expected_result = {'sentence': 'this is the all sentence is a variable'}
|
|
|
|
|
|
+ self.assertEqual(OrderAnalyser._get_synapse_params(synapse=synapse1, order_to_check=order_to_check),
|
|
|
+ expected_result,
|
|
|
+ "Fail to retrieve the 'all of the sentence is a variable' of the synapse from the order")
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
unittest.main()
|