diff options
Diffstat (limited to 'src/test/ui/stdlib-unit-tests/istr.rs')
-rw-r--r-- | src/test/ui/stdlib-unit-tests/istr.rs | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/src/test/ui/stdlib-unit-tests/istr.rs b/src/test/ui/stdlib-unit-tests/istr.rs new file mode 100644 index 000000000..dca6d40d5 --- /dev/null +++ b/src/test/ui/stdlib-unit-tests/istr.rs @@ -0,0 +1,53 @@ +// run-pass + +use std::string::String; + +fn test_stack_assign() { + let s: String = "a".to_string(); + println!("{}", s.clone()); + let t: String = "a".to_string(); + assert_eq!(s, t); + let u: String = "b".to_string(); + assert!((s != u)); +} + +fn test_heap_lit() { "a big string".to_string(); } + +fn test_heap_assign() { + let s: String = "a big ol' string".to_string(); + let t: String = "a big ol' string".to_string(); + assert_eq!(s, t); + let u: String = "a bad ol' string".to_string(); + assert!((s != u)); +} + +fn test_heap_log() { + let s = "a big ol' string".to_string(); + println!("{}", s); +} + +fn test_append() { + let mut s = String::new(); + s.push_str("a"); + assert_eq!(s, "a"); + + let mut s = String::from("a"); + s.push_str("b"); + println!("{}", s.clone()); + assert_eq!(s, "ab"); + + let mut s = String::from("c"); + s.push_str("offee"); + assert_eq!(s, "coffee"); + + s.push_str("&tea"); + assert_eq!(s, "coffee&tea"); +} + +pub fn main() { + test_stack_assign(); + test_heap_lit(); + test_heap_assign(); + test_heap_log(); + test_append(); +} |