summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Otto <th1000s@posteo.net>2021-10-19 00:10:17 +0200
committerDan Davison <dandavison7@gmail.com>2021-10-25 18:29:43 -0400
commita8cd648929b46f485f30ea3709707ca615710747 (patch)
tree277c297c0cc43388fb61789440a5a3129ada0ff1
parentd64532dc7318fad111abfe3b0d1ff727a1d6be0a (diff)
Linenumber test helper added
-rw-r--r--src/features/line_numbers.rs48
1 files changed, 24 insertions, 24 deletions
diff --git a/src/features/line_numbers.rs b/src/features/line_numbers.rs
index a8491f39..d03128da 100644
--- a/src/features/line_numbers.rs
+++ b/src/features/line_numbers.rs
@@ -281,14 +281,21 @@ pub mod tests {
use regex::Captures;
use crate::ansi::strip_ansi_codes;
+ use crate::format::FormatStringData;
use crate::tests::integration_test_utils::{make_config_from_args, run_delta};
use super::*;
+ pub fn parse_line_number_format_with_default_regex<'a>(
+ format_string: &'a str,
+ ) -> FormatStringData<'a> {
+ format::parse_line_number_format(format_string, &LINE_NUMBERS_PLACEHOLDER_REGEX)
+ }
+
#[test]
fn test_line_number_format_regex_1() {
assert_eq!(
- format::parse_line_number_format("{nm}", &LINE_NUMBERS_PLACEHOLDER_REGEX),
+ parse_line_number_format_with_default_regex("{nm}"),
vec![format::FormatStringPlaceholderData {
prefix: "".into(),
placeholder: Some(Placeholder::NumberMinus),
@@ -304,7 +311,7 @@ pub mod tests {
#[test]
fn test_line_number_format_regex_2() {
assert_eq!(
- format::parse_line_number_format("{np:4}", &LINE_NUMBERS_PLACEHOLDER_REGEX),
+ parse_line_number_format_with_default_regex("{np:4}"),
vec![format::FormatStringPlaceholderData {
prefix: "".into(),
placeholder: Some(Placeholder::NumberPlus),
@@ -320,7 +327,7 @@ pub mod tests {
#[test]
fn test_line_number_format_regex_3() {
assert_eq!(
- format::parse_line_number_format("{np:>4}", &LINE_NUMBERS_PLACEHOLDER_REGEX),
+ parse_line_number_format_with_default_regex("{np:>4}"),
vec![format::FormatStringPlaceholderData {
prefix: "".into(),
placeholder: Some(Placeholder::NumberPlus),
@@ -336,7 +343,7 @@ pub mod tests {
#[test]
fn test_line_number_format_regex_4() {
assert_eq!(
- format::parse_line_number_format("{np:_>4}", &LINE_NUMBERS_PLACEHOLDER_REGEX),
+ parse_line_number_format_with_default_regex("{np:_>4}"),
vec![format::FormatStringPlaceholderData {
prefix: "".into(),
placeholder: Some(Placeholder::NumberPlus),
@@ -352,7 +359,7 @@ pub mod tests {
#[test]
fn test_line_number_format_regex_5() {
assert_eq!(
- format::parse_line_number_format("__{np:_>4}@@", &LINE_NUMBERS_PLACEHOLDER_REGEX),
+ parse_line_number_format_with_default_regex("__{np:_>4}@@"),
vec![format::FormatStringPlaceholderData {
prefix: "__".into(),
placeholder: Some(Placeholder::NumberPlus),
@@ -368,10 +375,7 @@ pub mod tests {
#[test]
fn test_line_number_format_regex_6() {
assert_eq!(
- format::parse_line_number_format(
- "__{nm:<3}@@---{np:_>4}**",
- &LINE_NUMBERS_PLACEHOLDER_REGEX
- ),
+ parse_line_number_format_with_default_regex("__{nm:<3}@@---{np:_>4}**"),
vec![
format::FormatStringPlaceholderData {
prefix: "__".into(),
@@ -398,7 +402,7 @@ pub mod tests {
#[test]
fn test_line_number_format_regex_7() {
assert_eq!(
- format::parse_line_number_format("__@@---**", &LINE_NUMBERS_PLACEHOLDER_REGEX),
+ parse_line_number_format_with_default_regex("__@@---**",),
vec![format::FormatStringPlaceholderData {
prefix: "".into(),
placeholder: None,
@@ -434,43 +438,39 @@ pub mod tests {
#[test]
fn test_line_number_placeholder_width_one() {
- use format::parse_line_number_format;
-
- let data = parse_line_number_format("", &LINE_NUMBERS_PLACEHOLDER_REGEX);
+ let data = parse_line_number_format_with_default_regex("");
assert_eq!(data[0].width(0), (0, 0));
- let data = parse_line_number_format("", &LINE_NUMBERS_PLACEHOLDER_REGEX);
+ let data = parse_line_number_format_with_default_regex("");
assert_eq!(data[0].width(4), (0, 0));
- let data = parse_line_number_format("│+│", &LINE_NUMBERS_PLACEHOLDER_REGEX);
+ let data = parse_line_number_format_with_default_regex("│+│");
assert_eq!(data[0].width(4), (0, 3));
- let data = parse_line_number_format("{np}", &LINE_NUMBERS_PLACEHOLDER_REGEX);
+ let data = parse_line_number_format_with_default_regex("{np}");
assert_eq!(data[0].width(4), (4, 0));
- let data = parse_line_number_format("│{np}│", &LINE_NUMBERS_PLACEHOLDER_REGEX);
+ let data = parse_line_number_format_with_default_regex("│{np}│");
assert_eq!(data[0].width(4), (5, 1));
- let data = parse_line_number_format("│{np:2}│", &LINE_NUMBERS_PLACEHOLDER_REGEX);
+ let data = parse_line_number_format_with_default_regex("│{np:2}│");
assert_eq!(data[0].width(4), (5, 1));
- let data = parse_line_number_format("│{np:6}│", &LINE_NUMBERS_PLACEHOLDER_REGEX);
+ let data = parse_line_number_format_with_default_regex("│{np:6}│");
assert_eq!(data[0].width(4), (7, 1));
}
#[test]
fn test_line_number_placeholder_width_two() {
- use format::parse_line_number_format;
-
- let data = parse_line_number_format("│{nm}│{np}│", &LINE_NUMBERS_PLACEHOLDER_REGEX);
+ let data = parse_line_number_format_with_default_regex("│{nm}│{np}│");
assert_eq!(data[0].width(1), (2, 6));
assert_eq!(data[1].width(1), (2, 1));
- let data = parse_line_number_format("│{nm:_>5}│{np:1}│", &LINE_NUMBERS_PLACEHOLDER_REGEX);
+ let data = parse_line_number_format_with_default_regex("│{nm:_>5}│{np:1}│");
assert_eq!(data[0].width(1), (6, 8));
assert_eq!(data[1].width(1), (2, 1));
- let data = parse_line_number_format("│{nm}│{np:5}│", &LINE_NUMBERS_PLACEHOLDER_REGEX);
+ let data = parse_line_number_format_with_default_regex("│{nm}│{np:5}│");
assert_eq!(data[0].width(7), (8, 8));
assert_eq!(data[1].width(7), (8, 1));
}