mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
Add utest for kbps connections
This commit is contained in:
parent
c26b475bae
commit
aef838338c
3 changed files with 159 additions and 33 deletions
|
@ -5697,6 +5697,7 @@ VOID TEST(ProtocolKbpsTest, Connections)
|
|||
SrsAutoFree(SrsKbps, kbps);
|
||||
kbps->set_io(io, io);
|
||||
|
||||
// No data, 0kbps.
|
||||
kbps->sample();
|
||||
|
||||
EXPECT_EQ(0, kbps->get_recv_kbps());
|
||||
|
@ -5706,6 +5707,128 @@ VOID TEST(ProtocolKbpsTest, Connections)
|
|||
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_in(30 * 100 * 1000)->set_out(30 * 100 * 1000);
|
||||
kbps->sample();
|
||||
|
||||
EXPECT_EQ(800, kbps->get_recv_kbps());
|
||||
EXPECT_EQ(800, 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());
|
||||
|
||||
// 800kbps in 300s.
|
||||
clock->set_clock(330 * 1000);
|
||||
io->set_in(330 * 100 * 1000)->set_out(330 * 100 * 1000);
|
||||
kbps->sample();
|
||||
|
||||
EXPECT_EQ(800, kbps->get_recv_kbps());
|
||||
EXPECT_EQ(800, kbps->get_recv_kbps_30s());
|
||||
EXPECT_EQ(800, kbps->get_recv_kbps_5m());
|
||||
|
||||
EXPECT_EQ(800, kbps->get_send_kbps());
|
||||
EXPECT_EQ(800, kbps->get_send_kbps_30s());
|
||||
EXPECT_EQ(800, kbps->get_send_kbps_5m());
|
||||
}
|
||||
|
||||
if (true) {
|
||||
MockWallClock* clock = new MockWallClock();
|
||||
SrsAutoFree(MockWallClock, clock);
|
||||
MockStatistic* io = new MockStatistic();
|
||||
SrsAutoFree(MockStatistic, io);
|
||||
|
||||
SrsKbps* kbps = new SrsKbps(clock->set_clock(0));
|
||||
SrsAutoFree(SrsKbps, kbps);
|
||||
kbps->set_io(io, io);
|
||||
|
||||
// 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_in(30 * 100 * 1000);
|
||||
kbps->sample();
|
||||
|
||||
EXPECT_EQ(800, kbps->get_recv_kbps());
|
||||
EXPECT_EQ(800, 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 300s.
|
||||
clock->set_clock(330 * 1000);
|
||||
io->set_in(330 * 100 * 1000);
|
||||
kbps->sample();
|
||||
|
||||
EXPECT_EQ(800, kbps->get_recv_kbps());
|
||||
EXPECT_EQ(800, kbps->get_recv_kbps_30s());
|
||||
EXPECT_EQ(800, 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());
|
||||
}
|
||||
|
||||
if (true) {
|
||||
MockWallClock* clock = new MockWallClock();
|
||||
SrsAutoFree(MockWallClock, clock);
|
||||
MockStatistic* io = new MockStatistic();
|
||||
SrsAutoFree(MockStatistic, io);
|
||||
|
||||
SrsKbps* kbps = new SrsKbps(clock->set_clock(0));
|
||||
SrsAutoFree(SrsKbps, kbps);
|
||||
kbps->set_io(io, io);
|
||||
|
||||
// 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());
|
||||
|
||||
// 800kbps in 300s.
|
||||
clock->set_clock(330 * 1000);
|
||||
io->set_out(330 * 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(800, kbps->get_send_kbps_5m());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue