diff options
author | Paul Masurel <paul.masurel@gmail.com> | 2019-07-03 10:12:33 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-07-03 10:12:33 +0900 |
commit | 35236c8634297cbb7dd3302d519d7c1a776439f5 (patch) | |
tree | ad2519ccc8baf03aa711b1b2e215998254095f26 | |
parent | 462774b15cdb81860d070c883d5b140884ff95db (diff) |
Seek not required in Directory's write anymore (#584)
-rw-r--r-- | src/directory/mod.rs | 8 | ||||
-rw-r--r-- | src/directory/tests.rs | 20 |
2 files changed, 3 insertions, 25 deletions
diff --git a/src/directory/mod.rs b/src/directory/mod.rs index dd94ccf..1b6f633 100644 --- a/src/directory/mod.rs +++ b/src/directory/mod.rs @@ -24,22 +24,18 @@ pub use self::ram_directory::RAMDirectory; pub use self::read_only_source::ReadOnlySource; pub(crate) use self::watch_event_router::WatchCallbackList; pub use self::watch_event_router::{WatchCallback, WatchHandle}; -use std::io::{BufWriter, Seek, Write}; +use std::io::{BufWriter, Write}; #[cfg(feature = "mmap")] pub use self::mmap_directory::MmapDirectory; pub(crate) use self::managed_directory::ManagedDirectory; -/// Synonym of Seek + Write -pub trait SeekableWrite: Seek + Write {} -impl<T: Seek + Write> SeekableWrite for T {} - /// Write object for Directory. /// /// `WritePtr` are required to implement both Write /// and Seek. -pub type WritePtr = BufWriter<Box<dyn SeekableWrite>>; +pub type WritePtr = BufWriter<Box<dyn Write>>; #[cfg(test)] mod tests; diff --git a/src/directory/tests.rs b/src/directory/tests.rs index d935fa3..f27dc91 100644 --- a/src/directory/tests.rs +++ b/src/directory/tests.rs @@ -1,5 +1,5 @@ use super::*; -use std::io::{Seek, SeekFrom, Write}; +use std::io::Write; use std::mem; use std::path::{Path, PathBuf}; use std::sync::atomic::AtomicUsize; @@ -52,23 +52,6 @@ fn test_simple(directory: &mut dyn Directory) { assert!(!directory.exists(*TEST_PATH)); } -fn test_seek(directory: &mut dyn Directory) { - { - { - let mut write_file = directory.open_write(*TEST_PATH).unwrap(); - write_file.write_all(&[4, 3, 7, 3, 5]).unwrap(); - write_file.seek(SeekFrom::Start(0)).unwrap(); - write_file.write_all(&[3, 1]).unwrap(); - write_file.flush().unwrap(); - } - let read_file = directory.open_read(*TEST_PATH).unwrap(); - let data: &[u8] = &*read_file; - assert_eq!(data, &[3u8, 1u8, 7u8, 3u8, 5u8]); - } - - assert!(directory.delete(*TEST_PATH).is_ok()); -} - fn test_rewrite_forbidden(directory: &mut dyn Directory) { { directory.open_write(*TEST_PATH).unwrap(); @@ -120,7 +103,6 @@ fn test_directory_delete(directory: &mut dyn Directory) { fn test_directory(directory: &mut dyn Directory) { test_simple(directory); - test_seek(directory); test_rewrite_forbidden(directory); test_write_create_the_file(directory); test_directory_delete(directory); |