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

Function insert_active_enum_vec

tests/active_enum_tests.rs:347–411  ·  view source on GitHub ↗
(db: &DatabaseConnection)

Source from the content-addressed store, hash-verified

345}
346
347pub async fn insert_active_enum_vec(db: &DatabaseConnection) -> Result<(), DbErr> {
348 use categories::*;
349
350 let model = Model {
351 id: 1,
352 categories: None,
353 };
354
355 assert_eq!(
356 model,
357 ActiveModel {
358 id: Set(1),
359 categories: Set(None),
360 ..Default::default()
361 }
362 .insert(db)
363 .await?
364 );
365 assert_eq!(model, Entity::find().one(db).await?.unwrap());
366 assert_eq!(
367 model,
368 Entity::find()
369 .filter(Column::Id.is_not_null())
370 .filter(Column::Categories.is_null())
371 .one(db)
372 .await?
373 .unwrap()
374 );
375
376 let _ = ActiveModel {
377 id: Set(1),
378 categories: Set(Some(vec![Category::Big, Category::Small])),
379 ..model.into_active_model()
380 }
381 .save(db)
382 .await?;
383
384 let model = Entity::find().one(db).await?.unwrap();
385 assert_eq!(
386 model,
387 Model {
388 id: 1,
389 categories: Some(vec![Category::Big, Category::Small]),
390 }
391 );
392 assert_eq!(
393 model,
394 Entity::find()
395 .filter(Column::Id.eq(1))
396 .filter(Expr::cust_with_values(
397 r#"$1 = ANY("categories")"#,
398 vec![Category::Big]
399 ))
400 .one(db)
401 .await?
402 .unwrap()
403 );
404

Callers 1

mainFunction · 0.85

Calls 5

saveMethod · 0.80
into_active_modelMethod · 0.80
unwrapMethod · 0.80
oneMethod · 0.45
deleteMethod · 0.45

Tested by

no test coverage detected