MCPcopy Create free account
hub / github.com/SeaQL/sea-orm / linked

Function linked

tests/relational_tests.rs:731–1091  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

729
730#[sea_orm_macros::test]
731pub async fn linked() -> Result<(), DbErr> {
732 use common::bakery_chain::Order;
733 use sea_orm::{SelectA, SelectB};
734 use sea_query::{Alias, Expr};
735
736 let ctx = TestContext::new("test_linked").await;
737 create_tables(&ctx.db).await?;
738
739 // SeaSide Bakery
740 let seaside_bakery = bakery::ActiveModel {
741 name: Set("SeaSide Bakery".to_owned()),
742 profit_margin: Set(10.4),
743 ..Default::default()
744 };
745 let seaside_bakery_res = Bakery::insert(seaside_bakery).exec(&ctx.db).await?;
746
747 // Bob's Baker, Cake & Cake Baker
748 let baker_bob = baker::ActiveModel {
749 name: Set("Baker Bob".to_owned()),
750 contact_details: Set(serde_json::json!({
751 "mobile": "+61424000000",
752 "home": "0395555555",
753 "address": "12 Test St, Testville, Vic, Australia"
754 })),
755 bakery_id: Set(Some(seaside_bakery_res.last_insert_id)),
756 ..Default::default()
757 };
758 let baker_bob_res = Baker::insert(baker_bob).exec(&ctx.db).await?;
759 let mud_cake = cake::ActiveModel {
760 name: Set("Mud Cake".to_owned()),
761 price: Set(rust_dec(10.25)),
762 gluten_free: Set(false),
763 serial: Set(Uuid::new_v4()),
764 bakery_id: Set(Some(seaside_bakery_res.last_insert_id)),
765 ..Default::default()
766 };
767 let mud_cake_res = Cake::insert(mud_cake).exec(&ctx.db).await?;
768 let bob_cakes_bakers = cakes_bakers::ActiveModel {
769 cake_id: Set(mud_cake_res.last_insert_id),
770 baker_id: Set(baker_bob_res.last_insert_id),
771 };
772 CakesBakers::insert(bob_cakes_bakers).exec(&ctx.db).await?;
773
774 // Bobby's Baker, Cake & Cake Baker
775 let baker_bobby = baker::ActiveModel {
776 name: Set("Baker Bobby".to_owned()),
777 contact_details: Set(serde_json::json!({
778 "mobile": "+85212345678",
779 })),
780 bakery_id: Set(Some(seaside_bakery_res.last_insert_id)),
781 ..Default::default()
782 };
783 let baker_bobby_res = Baker::insert(baker_bobby).exec(&ctx.db).await?;
784 let cheese_cake = cake::ActiveModel {
785 name: Set("Cheese Cake".to_owned()),
786 price: Set(rust_dec(20.5)),
787 gluten_free: Set(false),
788 serial: Set(Uuid::new_v4()),

Callers

nothing calls this directly

Calls 15

rust_decFunction · 0.85
saveMethod · 0.80
order_by_ascMethod · 0.80
group_byMethod · 0.80
column_asMethod · 0.80
select_onlyMethod · 0.80
find_also_linkedMethod · 0.80
unwrapMethod · 0.80
filterMethod · 0.80
find_with_linkedMethod · 0.80
newFunction · 0.50
create_tablesFunction · 0.50

Tested by

no test coverage detected