diff options
| author | Philipp A | 2018-11-15 21:57:50 +0100 | 
|---|---|---|
| committer | Philipp A | 2018-11-15 22:03:42 +0100 | 
| commit | 144153fadc35bee8d0dad951b26c2e6150ba58f4 (patch) | |
| tree | a438c58333df545f8815f51670549ec3f7dab3dc | |
| parent | 336e3b0ff159f8344ed07d7e23b87cff41084502 (diff) | |
| download | rust-rst-144153fadc35bee8d0dad951b26c2e6150ba58f4.tar.bz2 | |
Moved parser tests
| -rw-r--r-- | src/parser.rs | 98 | ||||
| -rw-r--r-- | src/parser/tests.rs | 93 | 
2 files changed, 95 insertions, 96 deletions
| diff --git a/src/parser.rs b/src/parser.rs index 6e3f65e..026024a 100644 --- a/src/parser.rs +++ b/src/parser.rs @@ -1,104 +1,10 @@  pub mod token;  pub mod serialize; +#[cfg(test)] +pub mod tests; -#[allow(unused_imports)] -use pest::consumes_to; -#[allow(unused_imports)] -use pest::parses_to;  use pest_derive::Parser;  #[derive(Parser)]  #[grammar = "rst.pest"]  pub struct RstParser; - - -#[test] -fn plain() { -    parses_to! { -        parser: RstParser, -        input:  "line\n", -        rule:   Rule::paragraph, -        tokens: [ -            paragraph(0, 5, [ -                line(0, 5) -            ]) -        ] -    }; -} - -/* #[test] -fn title() { -    parses_to! { -        parser: RstParser, -        input:  "\ -Title -===== -", -        rule:   Rule::title, -        tokens: [ -            title(0, 12, [ -                line(0, 6), -                adornments(6, 11), -            ]) -        ] -    }; -} - -#[test] -fn title_overline() { -    parses_to! { -        parser: RstParser, -        input:  "\ ------ -Title ------ -", -        rule:   Rule::title, -        tokens: [ -            title(0, 18, [ -                adornments(0, 6), -                line(6, 12), -                adornments(12, 18), -            ]) -        ] -    }; -} */ - -#[test] -fn nested_lists() { -    parses_to! { -        parser: RstParser, -        input: "\ -paragraph - --  item 1 --  item 2 -   more text -   more text 2 -   more text 3 -   - nested item 1 -   - nested item 2 -   - nested item 3 -", -        rule: Rule::document, -        tokens: [ -            paragraph(0, 10, [ line(0, 10) ]), -            bullet_list(11, 131, [ -                bullet_item(11, 21, [ line(14, 21) ]), -                bullet_item(21, 131, [ -                    line(24, 31), -                    paragraph(34, 74, [ -                        line(34, 44), -                        line(47, 59), -                        line(62, 74), -                    ]), -                    bullet_list(77, 131, [ -                        bullet_item(77, 93, [ line(79, 93) ]), -                        bullet_item(96, 112, [ line(98, 112) ]), -                        bullet_item(115, 131, [ line(117, 131) ]), -                    ]), -                ]), -            ]), -        ] -    } -} diff --git a/src/parser/tests.rs b/src/parser/tests.rs new file mode 100644 index 0000000..fad7912 --- /dev/null +++ b/src/parser/tests.rs @@ -0,0 +1,93 @@ +use pest::consumes_to; +use pest::parses_to; +use super::{RstParser, Rule}; + +#[test] +fn plain() { +    parses_to! { +        parser: RstParser, +        input:  "line\n", +        rule:   Rule::paragraph, +        tokens: [ +            paragraph(0, 5, [ +                line(0, 5) +            ]) +        ] +    }; +} + +#[test] +fn title() { +    parses_to! { +        parser: RstParser, +        input:  "\ +Title +===== +", +        rule:   Rule::title, +        tokens: [ +            title(0, 12, [ +                line(0, 6), +                adornments(6, 11), +            ]) +        ] +    }; +} + +#[test] +fn title_overline() { +    parses_to! { +        parser: RstParser, +        input:  "\ +----- +Title +----- +", +        rule:   Rule::title, +        tokens: [ +            title(0, 17, [ +                adornments(0, 5), +                line(6, 12), +            ]) +        ] +    }; +} + +#[test] +fn nested_lists() { +    parses_to! { +        parser: RstParser, +        input: "\ +paragraph + +-  item 1 +-  item 2 +   more text +   more text 2 +   more text 3 +   - nested item 1 +   - nested item 2 +   - nested item 3 +", +        rule: Rule::document, +        tokens: [ +            paragraph(0, 10, [ line(0, 10) ]), +            bullet_list(11, 131, [ +                bullet_item(11, 21, [ line(14, 21) ]), +                bullet_item(21, 131, [ +                    line(24, 31), +                    paragraph(34, 74, [ +                        line(34, 44), +                        line(47, 59), +                        line(62, 74), +                    ]), +                    bullet_list(77, 131, [ +                        bullet_item(77, 93, [ line(79, 93) ]), +                        bullet_item(96, 112, [ line(98, 112) ]), +                        bullet_item(115, 131, [ line(117, 131) ]), +                    ]), +                ]), +            ]), +        ] +    } +} | 
