// rocie - An enterprise grocery management system // // Copyright (C) 2026 Benedikt Peetz // SPDX-License-Identifier: GPL-3.0-or-later // // This file is part of Rocie. // // You should have received a copy of the License along with this program. // If not, see . use rocie_client::{ apis::{ api_get_auth_product_api::product_by_id, api_set_auth_product_api::register_product, api_set_auth_unit_property_api::register_unit_property, }, models::{ProductStub, UnitPropertyStub}, }; use crate::{ _testenv::init::function_name, testenv::{TestEnv, log::request}, }; #[tokio::test] async fn test_product_register_roundtrip() { let env = TestEnv::new(function_name!()).await; let unit_property = request!( env, register_unit_property(UnitPropertyStub { description: Some("The total mass of a product".to_owned()), name: "Mass".to_owned() }) ); let id = request!( env, register_product(ProductStub { description: Some("A soy based alternative to milk".to_owned()), name: "Soy drink".to_owned(), parent: None, unit_property, }) ); let product = request!(env, product_by_id(id)); assert_eq!(&product.name, "Soy drink"); assert_eq!( product.description, Some("A soy based alternative to milk".to_owned()) ); assert_eq!(product.id, id); assert_eq!(product.parent, None); }