Skip to content

Commit

Permalink
Add raw string literal test cases
Browse files Browse the repository at this point in the history
  • Loading branch information
dtolnay committed Feb 4, 2023
1 parent 3b90e7d commit f0a3490
Showing 1 changed file with 20 additions and 0 deletions.
20 changes: 20 additions & 0 deletions tests/test.rs
Expand Up @@ -5,6 +5,7 @@
)]

use proc_macro2::{Ident, Literal, Punct, Spacing, Span, TokenStream, TokenTree};
use std::iter;
use std::panic;
use std::str::{self, FromStr};

Expand Down Expand Up @@ -118,6 +119,25 @@ fn literal_string() {
#[test]
fn literal_raw_string() {
"r\"\r\n\"".parse::<TokenStream>().unwrap();

fn raw_string_literal_with_hashes(n: usize) -> String {
let mut literal = String::new();
literal.push('r');
literal.extend(iter::repeat('#').take(n));
literal.push('"');
literal.push('"');
literal.extend(iter::repeat('#').take(n));
literal
}

raw_string_literal_with_hashes(255)
.parse::<TokenStream>()
.unwrap();

// https://github.com/rust-lang/rust/pull/95251
raw_string_literal_with_hashes(256)
.parse::<TokenStream>()
.unwrap();
}

#[test]
Expand Down

0 comments on commit f0a3490

Please sign in to comment.