Unit Tests ​
Unit tests primarily focus on verifying the deserialization of JSON.
These tests are written within unit_tests modules in the files where each struct is defined.
Example of a Unit Test ​
rust
#[cfg(test)]
mod unit_tests {
    use super::*;
    #[test]
    fn deserialize_page_checkbox_property() {
        let json_data = r#"
        {
            "Task completed": {
                "id": "ZI%40W",
                "type": "checkbox",
                "checkbox": true
            }
        }
        "#;
        let checkbox_map = serde_json::from_str::<
            std::collections::HashMap<String, PageCheckboxProperty>,
        >(json_data)
        .unwrap();
        let checkbox = checkbox_map.get("Task completed").unwrap();
        assert_eq!(checkbox.id, "ZI%40W".to_string());
        assert!(checkbox.checkbox);
    }
}Running the Tests ​
To run only the unit tests within the unit_tests modules, use the following command, specifying the unit_tests module:
bash
cargo test unit_testsThis command will execute all tests defined within the unit_tests modules.
WARNING
The integration tests under the tests/ directory make actual API requests. Therefore, you need to have a Notion workspace set up to run the integration tests. (Details will be explained on the integration tests page.)