on master help sign in
Change assets.rs tests to use InputKind::CustomReader

This should avoid errors in filesystems that don't support UTF-8 or invalid UTF-8.

commit7d07aa395a90f33bb939625de8576c0fa667aef7 authorEthan P <eth-p+git@hidden.email> dateMon 11 May 2020, 19:23 (6 years ago) parentf39487f
1 file changed+3−11
src/assets.rs+3−11
src/assets.rs+3−11
@@ -233,14 +233,12 @@ impl HighlightingAssets {
233233 path.canonicalize().ok().unwrap_or_else(|| path.to_owned());
234234 let line_syntax = self.get_first_line_syntax(&mut input.reader);
235235
236− match mapping.get_syntax_for(path_str) {
236+ match mapping.get_syntax_for(absolute_path) {
237237 Some(MappingTarget::MapTo(syntax_name)) => {
238− println!("Mapped {:?} as {:?}", path_str, syntax_name);
239238 self.syntax_set.find_syntax_by_name(syntax_name)
240239 }
241240 Some(MappingTarget::MapToUnknown) => line_syntax,
242241 None => {
243− println!("Test {:?}", path_str);
244242 let file_name = path.file_name().unwrap_or_default();
245243 self.get_extension_syntax(file_name).or(line_syntax)
246244 }
@@ -281,8 +279,6 @@ mod tests {
281279 use super::*;
282280
283281 use std::ffi::OsStr;
284− use std::fs::File;
285− use std::io::Write;
286282
287283 use tempdir::TempDir;
288284
@@ -306,12 +302,8 @@ mod tests {
306302
307303 fn syntax_for_file_with_content_os(&self, file_name: &OsStr, first_line: &str) -> String {
308304 let file_path = self.temp_dir.path().join(file_name);
309− {
310− let mut temp_file = File::create(&file_path).unwrap();
311− writeln!(temp_file, "{}", first_line).unwrap();
312− }
313−
314− let input = Input::ordinary_file(file_path.as_os_str());
305+ let input = Input::from_reader(Box::new(BufReader::new(first_line.as_bytes())))
306+ .with_name(Some(file_path.as_os_str()));
315307 let dummy_stdin: &[u8] = &[];
316308 let mut opened_input = input.open(dummy_stdin).unwrap();
317309 let syntax = self