diff --git a/src/or/scheduler.c b/src/or/scheduler.c
index 450eb029034626fb99bdc4a05170e3b40edfc698..8a6620b04939010ed1678433190119eea74a142a 100644
--- a/src/or/scheduler.c
+++ b/src/or/scheduler.c
@@ -235,8 +235,8 @@ scheduler_evt_callback(evutil_socket_t fd, short events, void *arg)
 
 /** Mark a channel as no longer ready to accept writes */
 
-void
-scheduler_channel_doesnt_want_writes(channel_t *chan)
+MOCK_IMPL(void,
+scheduler_channel_doesnt_want_writes,(channel_t *chan))
 {
   tor_assert(chan);
 
diff --git a/src/or/scheduler.h b/src/or/scheduler.h
index 9cdf6c1c4dd5bfd02956c59b3efa0d18f2f74985..0752ae0760179471826fa6c2012ba4ce1f0ca7e7 100644
--- a/src/or/scheduler.h
+++ b/src/or/scheduler.h
@@ -21,7 +21,7 @@ void scheduler_init(void);
 void scheduler_run(void);
 
 /* Mark channels as having cells or wanting/not wanting writes */
-void scheduler_channel_doesnt_want_writes(channel_t *chan);
+MOCK_DECL(void,scheduler_channel_doesnt_want_writes,(channel_t *chan));
 void scheduler_channel_has_waiting_cells(channel_t *chan);
 void scheduler_channel_wants_writes(channel_t *chan);