]> git.proxmox.com Git - rustc.git/blob - vendor/rustc-ap-rustc_span/src/symbol/tests.rs
New upstream version 1.52.1+dfsg1
[rustc.git] / vendor / rustc-ap-rustc_span / src / symbol / tests.rs
1 use super::*;
2
3 use crate::{edition, SessionGlobals};
4
5 #[test]
6 fn interner_tests() {
7 let mut i: Interner = Interner::default();
8 // first one is zero:
9 assert_eq!(i.intern("dog"), Symbol::new(0));
10 // re-use gets the same entry:
11 assert_eq!(i.intern("dog"), Symbol::new(0));
12 // different string gets a different #:
13 assert_eq!(i.intern("cat"), Symbol::new(1));
14 assert_eq!(i.intern("cat"), Symbol::new(1));
15 // dog is still at zero
16 assert_eq!(i.intern("dog"), Symbol::new(0));
17 }
18
19 #[test]
20 fn without_first_quote_test() {
21 SESSION_GLOBALS.set(&SessionGlobals::new(edition::DEFAULT_EDITION), || {
22 let i = Ident::from_str("'break");
23 assert_eq!(i.without_first_quote().name, kw::Break);
24 });
25 }