ruwebframe 0.1.6

a simple webframe for rust actix-web, based on rudi and rbatis.
Documentation
use ruentity::BaseEntity;

use crate::rubase::get_self::GetSelf;
use crate::rubase::rudto::cfgdto;
use crate::rubase::{rudto, ruentity};
use crate::rudomain::rudb::dbentity::dbexample;
use crate::{rucfg, rulog};
use std::fs::File;
use std::io::{BufReader, Read};
use std::sync::Arc;

#[cfg(test)]
mod tests {
    use super::*;
    #[test]
    fn test_001_parse_config() {
        let config = rucfg::find_bean_ru_config().unwrap();
        println!("config:\n{:#?}", config);

        let file = File::open("./config/ichub-postgres.yml");
        let mut read = BufReader::new(file.unwrap());
        let mut yaml_str = String::new();
        read.read_to_string(&mut yaml_str).unwrap();

        let ret = serde_yaml::from_str::<cfgdto::cfg_dto::CfgDto>(&yaml_str);
        // ✅ 显式指定类型
        println!("{:#?}", ret);
    }

    #[test]
    fn test_004_parse_config() {
        let config = rucfg::find_bean_ru_config().unwrap().read();
        println!("{:#?}", config);

        rulog::info(config.to_json().as_str());
    }
    #[test]
    fn test_006_from_json() {
        let person = dbexample::Person::default();

        let s = r##"{
            "id": 123,
            "name": "宋双艳",
            "age": 45,
            "active": false
        }"##;
        let p = person.from_json(s.to_string());
        println!("p:{:#?}", p);
    }

    #[test]
    fn test_007_parse_config() {
        let mut config = rucfg::find_bean_ru_config().unwrap().read();
        println!("{:#?}", config);
        //rulog::info(jsonutils::struct2json(&config) .unwrap().as_str());
        rulog::info(config.to_json().as_str()); // 3. 传 &str
        config.gorm.dbType = "1111".to_string();
        let pp = config.from_json(config.to_json());
        println!("pp:{:#?}", pp);
    }
    #[test]
    fn test_008_parse_config() {
        let mut config = rucfg::find_bean_ru_config().unwrap().read();
        println!("{:#?}", config);
        rulog::info(config.to_json().as_str());
        config.gorm.dbType = "1111".to_string();
        let pp = config.from_json(config.to_json());
        println!("pp:{:#?}", pp);
    }

    #[test]
    fn test_010_parse_config() {
        let cfg = cfgdto::CfgDto::default();
        println!("{:#?}", cfg);
    }
    #[test]
    fn test_011_parse_config() {
        let cfg = cfgdto::find_bean_cfg_dto();
        println!("{:#?}", cfg);
    }

    #[test]
    fn test_012_parse_config() {
        let mut person = dbexample::find_bean_person().unwrap();
        Arc::make_mut(&mut person).name = "leijmdas".to_string();
        rulog::info2("person:", person.to_json().as_str());
        // 从 JSON 字符串反序列化回结构体
        let s = r#"
            {
                "id": 10,
                "name": "songlei",
                "age": 10,
                "active": true
            }
    "#;
        let pp = person.from_json(s.to_string());
        rulog::info2("pp:", pp.to_json().as_str());
    }
    #[test]
    fn test_13_to_json() {
        let mut person = (*dbexample::find_bean_person().unwrap()).clone();
        person.name = "leijmdas".to_string();
        rulog::info2("person:", person.to_json().as_str());
    }
    #[test]
    fn test_14_from_json() {
        let person = dbexample::find_bean_person().unwrap().get_self();
        // 从 JSON 字符串反序列化回结构体
        let json = r#"
                {
                    "id": 10,
                    "name": "songlei",
                    "age": 10,
                    "active": true
                }
        "#;
        let pnew = person.from_json(json.to_string());
        rulog::info2("pnew:", pnew.to_json().as_str());
    }
    #[test]
    fn test_15_from_json() {
        let mut fileDto = rudto::find_bean_file_dto().unwrap().get_self();
        println!("{:#?}", fileDto);
        fileDto.size = 4;
    }

    #[test]
    fn test_016_cfg_to_json() {
        println!(
            "config:\n{:#?}",
            rucfg::find_bean_ru_config().unwrap().to_json()
        );

    }
    #[test]
    fn test_017_cfg_get_self() {

        rulog::info (  rucfg::find_bean_ru_config().unwrap().get_self())
    }
}