Mercurial > lbo > hg > localmr
changeset 47:d792f0788069
Add test function for merging actual text files
author | Lewin Bormann <lbo@spheniscida.de> |
---|---|
date | Tue, 02 Feb 2016 21:22:40 +0000 |
parents | 17cd79f05e93 |
children | e84f5abf7dc5 |
files | src/shard_merge.rs |
diffstat | 1 files changed, 23 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/shard_merge.rs Tue Feb 02 07:44:47 2016 +0000 +++ b/src/shard_merge.rs Tue Feb 02 21:22:40 2016 +0000 @@ -180,4 +180,27 @@ get_collection_3().len() + get_collection_4().len() + get_collection_5().len() + get_collection_6().len()); } + + use formats::lines; + use std::fmt; + use std::io::Write; + + use std::cmp::Ord; + + fn test_merge_large_files() { + let mut files = Vec::with_capacity(11); + + for i in 0..11 { + let name = fmt::format(format_args!("testdata/sorted{}.txt", i)); + files.push(lines::new_from_file(&name).unwrap()); + } + + let merge_it = ShardMergeIterator::build(&mut files.into_iter()); + + let mut outfile = lines::LinesWriter::new_to_file(&String::from("testdata/all_sorted.txt")).unwrap(); + + for line in merge_it { + outfile.write(line.as_bytes()); + } + } }