Add functional tests for 'trigger' command 88/108188/2
authorBartek Grzybowski <b.grzybowski@partner.samsung.com>
Mon, 25 May 2020 08:10:32 +0000 (01:10 -0700)
committerMorgan Richomme <morgan.richomme@orange.com>
Mon, 25 May 2020 14:06:11 +0000 (14:06 +0000)
Change-Id: Ie3f0a5c5b5276c058da3d284d5531ab5c821e3b8
Issue-ID: INT-1577
Signed-off-by: Bartek Grzybowski <b.grzybowski@partner.samsung.com>
test/mocks/mass-pnf-sim/test_lifecycle.py

index cb83b7d..5eaa409 100644 (file)
@@ -5,6 +5,7 @@ from yaml import load, SafeLoader
 from ipaddress import ip_address
 from test_settings import *
 import pytest
+from time import sleep
 
 # These test routines perform functional testing in current file tree context
 # thus they require that no simulator instances are bootstrapped and running
@@ -76,3 +77,20 @@ def test_start_idempotence(args_start, capfd):
     msg = capfd.readouterr()
     assert 'Simulator containers are already up' in msg.out
     assert 'Starting simulator containers' not in msg.out
+
+def test_trigger(args_trigger, caplog, capfd):
+    sleep(5) # Wait for the simulator to settle
+    MassPnfSim(args_trigger).trigger()
+    msg = capfd.readouterr()
+    for instance in range(SIM_INSTANCES):
+        instance_ip_offset = instance * 16
+        ip_offset = 2
+        assert f'Triggering pnf-sim-lw-{instance} instance:' in caplog.text
+        assert f'PNF-Sim IP:  {str(ip_address(IPSTART) + ip_offset + instance_ip_offset)}' in msg.out
+        assert 'Simulator started' in msg.out
+
+def test_trigger_idempotence(args_trigger, capfd):
+    MassPnfSim(args_trigger).trigger()
+    msg = capfd.readouterr()
+    assert "Cannot start simulator since it's already running" in msg.out
+    assert 'Simulator started' not in msg.out