From 09dd290101b34466deb0416537bdb1795f3dc1e2 Mon Sep 17 00:00:00 2001 From: Sam Samai Date: Mon, 2 Aug 2021 21:21:35 +1000 Subject: [PATCH] WIP 2 --- tests/crud/create_order.rs | 65 ++++++++++++++++---------------------- 1 file changed, 27 insertions(+), 38 deletions(-) diff --git a/tests/crud/create_order.rs b/tests/crud/create_order.rs index b093c38f..da4b3be0 100644 --- a/tests/crud/create_order.rs +++ b/tests/crud/create_order.rs @@ -96,48 +96,37 @@ pub async fn test_create_order(db: &DbConn) { .await .expect("could not insert lineitem"); - // This fails with "error returned from database: incorrect binary data format in bind parameter 1" - let order: Option = Order::find_by_id(order_insert_res.last_insert_id) + let order: Option = Order::find_by_id(order_insert_res.last_insert_id as i32) .one(db) .await .expect("could not find order"); - // this is ok - let orders: Vec = Order::find_by_id(order_insert_res.last_insert_id) + assert!(order.is_some()); + let order_model = order.unwrap(); + assert_eq!(order_model.total, dec!(15.10)); + + let customer: Option = Customer::find_by_id(order_model.customer_id as u64) + .one(db) + .await + .expect("could not find customer"); + + let customer_model = customer.unwrap(); + assert_eq!(customer_model.name, "Kate"); + + let bakery: Option = Bakery::find_by_id(order_model.bakery_id as u64) + .one(db) + .await + .expect("could not find bakery"); + + let bakery_model = bakery.unwrap(); + assert_eq!(bakery_model.name, "SeaSide Bakery"); + + let related_lineitems: Vec = order_model + .find_related(Lineitem) .all(db) .await - .unwrap(); - println!("order: {:#?}", orders); - let order: order::Model = orders[0].clone(); - println!("order: {:#?}", order); - - assert_eq!(1, 2); - // assert!(order.is_some()); - // let order_model = order.unwrap(); - // assert_eq!(order_model.total, dec!(15.10)); - - // let customer: Option = Customer::find_by_id(order_model.customer_id) - // .one(db) - // .await - // .expect("could not find customer"); - - // let customer_model = customer.unwrap(); - // assert_eq!(customer_model.name, "Kate"); - - // let bakery: Option = Bakery::find_by_id(order_model.bakery_id) - // .one(db) - // .await - // .expect("could not find bakery"); - - // let bakery_model = bakery.unwrap(); - // assert_eq!(bakery_model.name, "SeaSide Bakery"); - - // let related_lineitems: Vec = order_model - // .find_related(Lineitem) - // .all(db) - // .await - // .expect("could not find related lineitems"); - // assert_eq!(related_lineitems.len(), 1); - // assert_eq!(related_lineitems[0].price, dec!(7.55)); - // assert_eq!(related_lineitems[0].quantity, 2); + .expect("could not find related lineitems"); + assert_eq!(related_lineitems.len(), 1); + assert_eq!(related_lineitems[0].price, dec!(7.55)); + assert_eq!(related_lineitems[0].quantity, 2); }