summaryrefslogtreecommitdiff
path: root/cesar/ce/rx/bitloading/test
diff options
context:
space:
mode:
authorCyril Jourdan2013-05-31 09:50:00 +0200
committerCyril Jourdan2013-06-06 15:38:23 +0200
commit7af1a533f0e2eb40949748053531f03aab72eb19 (patch)
tree2b399564f877bca6f023b5bee0abd6af23502846 /cesar/ce/rx/bitloading/test
parent631a60b068c53fc1939d1f90deec7536d8339ddc (diff)
cesar/ce/rx/bl: send new default tonemap after computation, closes #4026
Diffstat (limited to 'cesar/ce/rx/bitloading/test')
-rw-r--r--cesar/ce/rx/bitloading/test/src/test_intervals.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/cesar/ce/rx/bitloading/test/src/test_intervals.c b/cesar/ce/rx/bitloading/test/src/test_intervals.c
index 3e59cb2331..66dfe97925 100644
--- a/cesar/ce/rx/bitloading/test/src/test_intervals.c
+++ b/cesar/ce/rx/bitloading/test/src/test_intervals.c
@@ -26,6 +26,16 @@
/* Global CE/RX behavior stub. */
ce_rx_behavior_t ce_rx_behavior = CE_RX_BEHAVIOR_INTERVALS_ENABLE;
+/* In default tonemap update test, we want to know if an MME has been sent. */
+static bool new_tm_mme_sent;
+
+void
+ce_rx_cp_send_mme_new_tone_map (ce_rx_t *ce_rx, sta_t *peer, u8 new_tmi,
+ u8 old_tmi, bool initial_ce)
+{
+ new_tm_mme_sent = true;
+}
+
/**
* Test suite for intervals init and uninit.
*/
@@ -652,22 +662,27 @@ test_suite_ce_rx_bl_intervals_update_default_tm (test_t t)
sta.intervals = ce_rx_bl_intervals_alloc (&sta.ce_rx_bt, 4);
+ new_tm_mme_sent = false;
+
test_begin (t, "One interval, not restarting.")
{
sta.rx_tonemaps->default_tmi = 0;
ce_rx_bl_intervals_update_default_tm (&ce_rx, &sta);
test_fail_if (sta.rx_tonemaps->default_tmi != 4);
+ test_fail_if (new_tm_mme_sent != false);
sta.rx_tonemaps->default_tmi = 4;
ce_rx_bl_intervals_update_default_tm (&ce_rx, &sta);
test_fail_if (sta.rx_tonemaps->default_tmi != 4);
test_fail_if (sta.rx_tonemaps->tm[4]->released != 0);
+ test_fail_if (new_tm_mme_sent != false);
sta.intervals->tmi[0] = 5;
ce_rx_bl_intervals_update_default_tm (&ce_rx, &sta);
test_fail_if (sta.rx_tonemaps->default_tmi != 5);
test_fail_if (sta.rx_tonemaps->tm[4]->released
!= TONEMAP_RELEASE_TIMER_S);
+ test_fail_if (new_tm_mme_sent != false);
} test_end;
sta.rx_tonemaps->default_tmi = 4;
@@ -680,6 +695,7 @@ test_suite_ce_rx_bl_intervals_update_default_tm (test_t t)
ce_rx_bl_intervals_update_default_tm (&ce_rx, &sta);
test_fail_if (sta.rx_tonemaps->default_tmi != 4);
test_fail_if (sta.rx_tonemaps->tm[4]->released != 0);
+ test_fail_if (new_tm_mme_sent != false);
} test_end;
test_begin (t, "One interval, restarting for a worst tonemap.")
{
@@ -688,6 +704,7 @@ test_suite_ce_rx_bl_intervals_update_default_tm (test_t t)
test_fail_if (sta.rx_tonemaps->default_tmi != 0);
test_fail_if (sta.rx_tonemaps->tm[4]->released
!= TONEMAP_RELEASE_TIMER_S);
+ test_fail_if (new_tm_mme_sent != false);
} test_end;
/* Clean. */
@@ -705,11 +722,13 @@ test_suite_ce_rx_bl_intervals_update_default_tm (test_t t)
sta.rx_tonemaps->default_tmi = 0;
ce_rx_bl_intervals_update_default_tm (&ce_rx, &sta);
test_fail_if (sta.rx_tonemaps->default_tmi != 4);
+ test_fail_if (new_tm_mme_sent != false);
sta.rx_tonemaps->default_tmi = 4;
ce_rx_bl_intervals_update_default_tm (&ce_rx, &sta);
test_fail_if (sta.rx_tonemaps->default_tmi != 4);
test_fail_if (sta.rx_tonemaps->tm[4]->released != 0);
+ test_fail_if (new_tm_mme_sent != false);
for (i = 0; i < ce_rx_bl_intervals_fsm_count_; i++)
sta.intervals->tmi[i] = 5;
@@ -717,6 +736,7 @@ test_suite_ce_rx_bl_intervals_update_default_tm (test_t t)
test_fail_if (sta.rx_tonemaps->default_tmi != 5);
test_fail_if (sta.rx_tonemaps->tm[4]->released
!= TONEMAP_RELEASE_TIMER_S);
+ test_fail_if (new_tm_mme_sent != false);
sta.rx_tonemaps->default_tmi = 4;
sta.rx_tonemaps->tm[4]->released = 0;
@@ -726,6 +746,7 @@ test_suite_ce_rx_bl_intervals_update_default_tm (test_t t)
test_fail_if (sta.rx_tonemaps->default_tmi != 0);
test_fail_if (sta.rx_tonemaps->tm[4]->released
!= TONEMAP_RELEASE_TIMER_S);
+ test_fail_if (new_tm_mme_sent != false);
sta.rx_tonemaps->default_tmi = 4;
sta.rx_tonemaps->tm[4]->released = 0;
@@ -747,15 +768,18 @@ test_suite_ce_rx_bl_intervals_update_default_tm (test_t t)
i++;
}
TONEMAP_READ_END;
+ test_fail_if (new_tm_mme_sent != true);
sta.rx_tonemaps->default_tmi = 4;
sta.rx_tonemaps->tm[4]->released = 0;
+ new_tm_mme_sent = false;
sta.intervals->tmi[0] = 7;
ce_rx_bl_intervals_update_default_tm (&ce_rx, &sta);
test_fail_if (sta.rx_tonemaps->default_tmi != 0);
test_fail_if (sta.rx_tonemaps->tm[4]->released
!= TONEMAP_RELEASE_TIMER_S);
+ test_fail_if (new_tm_mme_sent != false);
} test_end;
sta.rx_tonemaps->default_tmi = 4;
@@ -782,10 +806,12 @@ test_suite_ce_rx_bl_intervals_update_default_tm (test_t t)
i++;
}
TONEMAP_READ_END;
+ test_fail_if (new_tm_mme_sent != true);
} test_end;
sta.rx_tonemaps->default_tmi = 4;
sta.rx_tonemaps->tm[4]->released = 0;
+ new_tm_mme_sent = false;
test_begin (t, "Several intervals, one restarting for a worst tonemap.")
{
@@ -795,6 +821,7 @@ test_suite_ce_rx_bl_intervals_update_default_tm (test_t t)
test_fail_if (sta.rx_tonemaps->default_tmi != 0);
test_fail_if (sta.rx_tonemaps->tm[4]->released
!= TONEMAP_RELEASE_TIMER_S);
+ test_fail_if (new_tm_mme_sent != false);
} test_end;
/* Clean. */