diff options
Diffstat (limited to 'vendored/mpd/tests/helpers/mod.rs')
| -rw-r--r-- | vendored/mpd/tests/helpers/mod.rs | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/vendored/mpd/tests/helpers/mod.rs b/vendored/mpd/tests/helpers/mod.rs new file mode 100644 index 0000000..e331433 --- /dev/null +++ b/vendored/mpd/tests/helpers/mod.rs @@ -0,0 +1,36 @@ +extern crate mpd; + +mod daemon; + +pub use self::daemon::Daemon; +use std::os::unix::net::UnixStream; + +pub struct DaemonClient { + _daemon: Daemon, + client: mpd::Client<UnixStream>, +} + +use std::ops::{Deref, DerefMut}; + +impl Deref for DaemonClient { + type Target = mpd::Client<UnixStream>; + fn deref(&self) -> &Self::Target { + &self.client + } +} + +impl DerefMut for DaemonClient { + fn deref_mut(&mut self) -> &mut Self::Target { + &mut self.client + } +} + +#[allow(dead_code)] +pub fn connect() -> DaemonClient { + let daemon = Daemon::start(); + let client = daemon.connect(); + DaemonClient { + _daemon: daemon, + client: client, + } +} |