rumtk_web_get_page

Macro rumtk_web_get_page 

Source
macro_rules! rumtk_web_get_page {
    ( $key:expr ) => { ... };
}
Expand description

Helper function for retrieving pages registered in the global cache using a string key!

§Example

§With Named Page

use rumtk_core::strings::rumtk_format;
use rumtk_web::utils::{SharedAppState, RenderedPageComponents};
use rumtk_web::{rumtk_web_render_component, rumtk_web_register_page, rumtk_web_get_page};

pub fn index(app_state: SharedAppState) -> RenderedPageComponents {
    let title_welcome = rumtk_web_render_component!("title", [("type", "welcome")], app_state.clone());

    vec![
        title_welcome,
    ]
}

let r = rumtk_format!("{:?}", &rumtk_web_register_page!("index", index));
let p = rumtk_format!("{:?}", &rumtk_web_get_page!("index"));

 assert_eq!(&r, &p, "{}", rumtk_format!("The registered page does not match the retrieved page!\nGot: {:?}\nExpected: {:?}", &r, &p));

§With Default Page

use rumtk_core::strings::rumtk_format;
use rumtk_web::utils::{SharedAppState, RenderedPageComponents};
use rumtk_web::{rumtk_web_render_component, rumtk_web_register_page, rumtk_web_get_page, rumtk_web_get_default_page};

pub fn index(app_state: SharedAppState) -> RenderedPageComponents {
    let title_welcome = rumtk_web_render_component!("title", [("type", "welcome")], app_state.clone());

    vec![
        title_welcome,
    ]
}

let default = rumtk_format!("{:?}", rumtk_web_get_default_page!());
let r = rumtk_format!("{:?}", &rumtk_web_register_page!("index", index));
let p = rumtk_format!("{:?}", &rumtk_web_get_page!(""));

 assert_ne!(&default, &p, "{}", rumtk_format!("The default page matches the retrieved page!\nGot: {:?}\nExpected: {:?}", &r, &p));
 assert_eq!(&r, &p, "{}", rumtk_format!("The registered page does not match the retrieved page!\nGot: {:?}\nExpected: {:?}", &r, &p));