1 // run-pass 2 3 use std::string::String; 4 test_stack_assign()5fn test_stack_assign() { 6 let s: String = "a".to_string(); 7 println!("{}", s.clone()); 8 let t: String = "a".to_string(); 9 assert_eq!(s, t); 10 let u: String = "b".to_string(); 11 assert!((s != u)); 12 } 13 test_heap_lit()14fn test_heap_lit() { "a big string".to_string(); } 15 test_heap_assign()16fn test_heap_assign() { 17 let s: String = "a big ol' string".to_string(); 18 let t: String = "a big ol' string".to_string(); 19 assert_eq!(s, t); 20 let u: String = "a bad ol' string".to_string(); 21 assert!((s != u)); 22 } 23 test_heap_log()24fn test_heap_log() { 25 let s = "a big ol' string".to_string(); 26 println!("{}", s); 27 } 28 test_append()29fn test_append() { 30 let mut s = String::new(); 31 s.push_str("a"); 32 assert_eq!(s, "a"); 33 34 let mut s = String::from("a"); 35 s.push_str("b"); 36 println!("{}", s.clone()); 37 assert_eq!(s, "ab"); 38 39 let mut s = String::from("c"); 40 s.push_str("offee"); 41 assert_eq!(s, "coffee"); 42 43 s.push_str("&tea"); 44 assert_eq!(s, "coffee&tea"); 45 } 46 main()47pub fn main() { 48 test_stack_assign(); 49 test_heap_lit(); 50 test_heap_assign(); 51 test_heap_log(); 52 test_append(); 53 } 54