summaryrefslogtreecommitdiff
path: root/cesar/ce
diff options
context:
space:
mode:
Diffstat (limited to 'cesar/ce')
-rw-r--r--cesar/ce/tx/test/src/test_mme.c21
1 files changed, 20 insertions, 1 deletions
diff --git a/cesar/ce/tx/test/src/test_mme.c b/cesar/ce/tx/test/src/test_mme.c
index 5de5346158..82b9a41b27 100644
--- a/cesar/ce/tx/test/src/test_mme.c
+++ b/cesar/ce/tx/test/src/test_mme.c
@@ -202,7 +202,7 @@ mme_test_suite (test_t t, tonemask_info_t *default_tone_mask)
test_case_begin (t, "ce tx mme reception");
int i;
- uint intervals_version = 0;
+ u8 intervals_version = 0;
cp_mme_rx_t mme;
mme.peer.tei = peer_tei;
mme.mmtype = CM_CHAN_EST_IND;
@@ -688,6 +688,25 @@ mme_test_suite (test_t t, tonemask_info_t *default_tone_mask)
test_fail_if (sta->tx_tonemaps->intervals->version != intervals_version);
} test_end;
+ test_begin (t, "test version indicator overflow")
+ {
+ uint j;
+ sta->tx_tonemaps->intervals->version = 250;
+ /* First time we receive a MME from the CE, interval version is
+ * incremented twice. */
+ intervals_version = 252;
+
+ for (j=0; j<50; j++)
+ {
+ memset (mme_data, 0xFF, ETH_PACKET_MAX_SIZE);
+ ce_test_mme_cm_chan_est_ind_build_default (mme_data, &mme);
+ test_fail_if (ce_tx_cm_chan_est_ind_receive (&cp, &mme)
+ != CE_TX_MME_OK);
+ test_fail_if (sta->tx_tonemaps->intervals->version
+ != intervals_version++);
+ }
+ } test_end;
+
/* Clean. */
blk_release (sta);
dbg_check (mac_store_sta_remove (cp.mac_store, peer_tei));