From 46ff91b6ec90fc8ee9a84622f9dce91903686559 Mon Sep 17 00:00:00 2001 From: Andrea Shepard Date: Tue, 21 Jan 2014 02:50:33 -0800 Subject: [PATCH] Add scheduler_channel_has_waiting_cells_mock() and some mock counter queries --- src/test/fakechans.h | 6 ++++++ src/test/test_channel.c | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+) diff --git a/src/test/fakechans.h b/src/test/fakechans.h index 99773e721d..b129ab49a5 100644 --- a/src/test/fakechans.h +++ b/src/test/fakechans.h @@ -14,6 +14,12 @@ void make_fake_var_cell(var_cell_t *c); channel_t * new_fake_channel(void); /* Also exposes some a mock used by both test_channel.c and test_relay.c */ +void scheduler_channel_has_waiting_cells_mock(channel_t *ch); void scheduler_release_channel_mock(channel_t *ch); +/* Query some counters used by the exposed mocks */ +int get_mock_scheduler_has_waiting_cells_count(void); +int get_mock_scheduler_release_channel_count(void); + #endif /* !defined(TOR_FAKECHANS_H) */ + diff --git a/src/test/test_channel.c b/src/test/test_channel.c index 1ae9810d66..eff418957b 100644 --- a/src/test/test_channel.c +++ b/src/test/test_channel.c @@ -22,6 +22,7 @@ static int test_chan_accept_cells = 0; static int test_cells_written = 0; static int test_destroy_not_pending_calls = 0; static int test_doesnt_want_writes_count = 0; +static int test_has_waiting_cells_count = 0; static double test_overhead_estimate = 1.0f; static int test_releases_count = 0; @@ -206,6 +207,31 @@ new_fake_channel(void) return chan; } +/** + * Counter query for scheduler_channel_has_waiting_cells_mock() + */ + +int +get_mock_scheduler_has_waiting_cells_count(void) +{ + return test_has_waiting_cells_count; +} + +/** + * Mock for scheduler_channel_has_waiting_cells() + */ + +void +scheduler_channel_has_waiting_cells_mock(channel_t *ch) +{ + (void)ch; + + /* Increment counter */ + ++test_has_waiting_cells_count; + + return; +} + static void scheduler_channel_doesnt_want_writes_mock(channel_t *ch) { @@ -217,6 +243,20 @@ scheduler_channel_doesnt_want_writes_mock(channel_t *ch) return; } +/** + * Counter query for scheduler_release_channel_mock() + */ + +int +get_mock_scheduler_release_channel_count(void) +{ + return test_releases_count; +} + +/** + * Mock for scheduler_release_channel() + */ + void scheduler_release_channel_mock(channel_t *ch) {