From 6e9c7dd11eedf56cd5ead5779b5dfa25db90433a Mon Sep 17 00:00:00 2001 From: winlin Date: Tue, 1 Jan 2019 17:44:39 +0800 Subject: [PATCH] Add utest for SrsKbps as RAW statistics --- trunk/src/utest/srs_utest_protocol.cpp | 43 ++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/trunk/src/utest/srs_utest_protocol.cpp b/trunk/src/utest/srs_utest_protocol.cpp index 241a3c82b..4102e20b4 100644 --- a/trunk/src/utest/srs_utest_protocol.cpp +++ b/trunk/src/utest/srs_utest_protocol.cpp @@ -5917,5 +5917,48 @@ VOID TEST(ProtocolKbpsTest, Delta) } } +VOID TEST(ProtocolKbpsTest, RAWStatistic) +{ + if (true) { + MockWallClock* clock = new MockWallClock(); + SrsAutoFree(MockWallClock, clock); + MockStatistic* io = new MockStatistic(); + SrsAutoFree(MockStatistic, io); + + SrsKbps* conn = new SrsKbps(clock->set_clock(0)); + SrsAutoFree(SrsKbps, conn); + conn->set_io(io, io); + + // Kbps without io, gather delta. + SrsKbps* kbps = new SrsKbps(clock->set_clock(0)); + SrsAutoFree(SrsKbps, kbps); + kbps->set_io(conn, conn); + + // No data, 0kbps. + kbps->sample(); + + EXPECT_EQ(0, kbps->get_recv_kbps()); + EXPECT_EQ(0, kbps->get_recv_kbps_30s()); + EXPECT_EQ(0, kbps->get_recv_kbps_5m()); + + EXPECT_EQ(0, kbps->get_send_kbps()); + EXPECT_EQ(0, kbps->get_send_kbps_30s()); + EXPECT_EQ(0, kbps->get_send_kbps_5m()); + + // 800kbps in 30s. + clock->set_clock(30 * 1000); + io->set_out(30 * 100 * 1000); + kbps->sample(); + + EXPECT_EQ(0, kbps->get_recv_kbps()); + EXPECT_EQ(0, kbps->get_recv_kbps_30s()); + EXPECT_EQ(0, kbps->get_recv_kbps_5m()); + + EXPECT_EQ(800, kbps->get_send_kbps()); + EXPECT_EQ(800, kbps->get_send_kbps_30s()); + EXPECT_EQ(0, kbps->get_send_kbps_5m()); + } +} + #endif