@@ -145,6 +145,19 @@ fn test_parse_minus_success() {
145 assert_eq!(40, range.upper);
145 assert_eq!(40, range.upper);
149+fn test_parse_minus_edge_cases_success() {
150+ let range = LineRange::from("5:-4").expect("Shouldn't fail on test!");
151+ assert_eq!(1, range.lower);
152+ assert_eq!(5, range.upper);
153+ let range = LineRange::from("5:-5").expect("Shouldn't fail on test!");
154+ assert_eq!(0, range.lower);
155+ assert_eq!(5, range.upper);
156+ let range = LineRange::from("5:-100").expect("Shouldn't fail on test!");
157+ assert_eq!(0, range.lower);
158+ assert_eq!(5, range.upper);
149fn test_parse_minus_fail() {
162fn test_parse_minus_fail() {
150 let range = LineRange::from("40:-z");
163 let range = LineRange::from("40:-z");