From 69928906f490e52aed6497f9b8f8e5a3ad924477 Mon Sep 17 00:00:00 2001 From: Yati Sagade Date: Sun, 9 Apr 2017 14:12:01 +0200 Subject: [PATCH] needless_continue: Add tests for helper functions to the needless_continue lint. Creating a test file per function sounds a bit excessive, so just clubbing all needless_continue specific function tests into this module. --- tests/needless_continue_helpers.rs | 89 ++++++++++++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 tests/needless_continue_helpers.rs diff --git a/tests/needless_continue_helpers.rs b/tests/needless_continue_helpers.rs new file mode 100644 index 000000000..0fcef5180 --- /dev/null +++ b/tests/needless_continue_helpers.rs @@ -0,0 +1,89 @@ +// Tests for the various helper functions used by the needless_continue +// lint that don't belong in utils. +extern crate clippy_lints; +use clippy_lints::needless_continue::{erode_from_back, erode_block, erode_from_front}; + +#[test] +#[cfg_attr(rustfmt, rustfmt_skip)] +fn test_erode_from_back() { + let input = "\ +{ + let x = 5; + let y = format!(\"{}\", 42); +}"; + + let expected = "\ +{ + let x = 5; + let y = format!(\"{}\", 42);"; + + let got = erode_from_back(input); + assert_eq!(expected, got); +} + +#[test] +#[cfg_attr(rustfmt, rustfmt_skip)] +fn test_erode_from_back_no_brace() { + let input = "\ +let x = 5; +let y = something(); +"; + let expected = ""; + let got = erode_from_back(input); + assert_eq!(expected, got); +} + +#[test] +#[cfg_attr(rustfmt, rustfmt_skip)] +fn test_erode_from_front() { + let input = " + { + something(); + inside_a_block(); + } + "; + let expected = +" something(); + inside_a_block(); + } + "; + let got = erode_from_front(input); + println!("input: {}\nexpected:\n{}\ngot:\n{}", input, expected, got); + assert_eq!(expected, got); +} + +#[test] +#[cfg_attr(rustfmt, rustfmt_skip)] +fn test_erode_from_front_no_brace() { + let input = " + something(); + inside_a_block(); + "; + let expected = +"something(); + inside_a_block(); + "; + let got = erode_from_front(input); + println!("input: {}\nexpected:\n{}\ngot:\n{}", input, expected, got); + assert_eq!(expected, got); +} + + +#[test] +#[cfg_attr(rustfmt, rustfmt_skip)] +fn test_erode_block() { + + let input = " + { + something(); + inside_a_block(); + } + "; + let expected = +" something(); + inside_a_block();"; + let got = erode_block(input); + println!("input: {}\nexpected:\n{}\ngot:\n{}", input, expected, got); + assert_eq!(expected, got); +} +