Something went wrong. Try again.
Rustlings practice.
Something went wrong. Try again.
1.3 kB · 51 lines
Rust
at main
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152#[derive(Debug)]struct Order { name: String, year: u32, made_by_phone: bool, made_by_mobile: bool, made_by_email: bool, item_number: u32, count: u32,}
fn create_order_template() -> Order { Order { name: String::from("Bob"), year: 2019, made_by_phone: false, made_by_mobile: false, made_by_email: true, item_number: 123, count: 0, }}
fn main() { // You can optionally experiment here.}
#[cfg(test)]mod tests { use super::*;
#[test] fn your_order() { let order_template = create_order_template();
let your_order = Order { name: String::from("Hacker in Rust"), count: 1, // Struct update syntax ..order_template };
assert_eq!(your_order.name, "Hacker in Rust"); assert_eq!(your_order.year, order_template.year); assert_eq!(your_order.made_by_phone, order_template.made_by_phone); assert_eq!(your_order.made_by_mobile, order_template.made_by_mobile); assert_eq!(your_order.made_by_email, order_template.made_by_email); assert_eq!(your_order.item_number, order_template.item_number); assert_eq!(your_order.count, 1); }}