fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/38037?usp=email )
Change subject: s1gw: add TC_pfcp_heartbeat ......................................................................
s1gw: add TC_pfcp_heartbeat
Change-Id: Iadb24c2c346a62aa8b59d24475e71f683fc3dfe6 --- M s1gw/S1GW_Tests.ttcn M s1gw/expected-results.xml 2 files changed, 28 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/37/38037/1
diff --git a/s1gw/S1GW_Tests.ttcn b/s1gw/S1GW_Tests.ttcn index 00b83e8..3c8dfb4 100644 --- a/s1gw/S1GW_Tests.ttcn +++ b/s1gw/S1GW_Tests.ttcn @@ -272,12 +272,38 @@ vc_conn.done; }
+function f_TC_pfcp_heartbeat(charstring id) runs on ConnHdlr { + var integer rts; + + f_ConnHdlr_register_pfcp(); + + /* Tx Heartbeat Request */ + rts := f_pfcp_get_recovery_timestamp(); + PFCP.send(ts_PFCP_Heartbeat_Req(rts)); + + /* Expect Heartbeat Response + * TODO: validate the indicated Recovery Time Stamp against + * the one that we received in the PFCP Association Setup. */ + f_ConnHdlr_pfcp_expect(tr_PFCP_Heartbeat_Resp); + setverdict(pass); +} +testcase TC_pfcp_heartbeat() runs on test_CT { + var ConnHdlrPars pars := valueof(t_ConnHdlrPars); + var ConnHdlr vc_conn; + + f_init(); + + vc_conn := f_ConnHdlr_spawn(refers(f_TC_pfcp_heartbeat), pars); + vc_conn.done; +} + control { execute( TC_setup() ); execute( TC_setup_multi() ); execute( TC_conn_term_by_mme() ); execute( TC_conn_term_mme_unavail() ); execute( TC_e_rab_setup() ); + execute( TC_pfcp_heartbeat() ); }
} diff --git a/s1gw/expected-results.xml b/s1gw/expected-results.xml index ed75300..87cd893 100644 --- a/s1gw/expected-results.xml +++ b/s1gw/expected-results.xml @@ -1,8 +1,9 @@ <?xml version="1.0"?> -<testsuite name='S1GW_Tests' tests='5' failures='0' errors='0' skipped='0' inconc='0' time='MASKED'> +<testsuite name='S1GW_Tests' tests='6' failures='0' errors='0' skipped='0' inconc='0' time='MASKED'> <testcase classname='S1GW_Tests' name='TC_setup' time='MASKED'/> <testcase classname='S1GW_Tests' name='TC_setup_multi' time='MASKED'/> <testcase classname='S1GW_Tests' name='TC_conn_term_by_mme' time='MASKED'/> <testcase classname='S1GW_Tests' name='TC_conn_term_mme_unavail' time='MASKED'/> <testcase classname='S1GW_Tests' name='TC_e_rab_setup' time='MASKED'/> + <testcase classname='S1GW_Tests' name='TC_pfcp_heartbeat' time='MASKED'/> </testsuite>