feat(derive): expose checked form resource constants
Have #[slhx::form] emit an associated FORM resource so checked form handlers can be called with TodoInput::FORM-style values instead of generated_resource.typed::<T>() noise. req: form/001 req: form/004 req: form/006 req: codegen/004
This commit is contained in:
@@ -64,7 +64,7 @@ mod tests {
|
||||
ui::board::slots::notice.text("queued")
|
||||
}
|
||||
|
||||
let effect = inspect(create_card(ui::board::forms::create_card.typed::<CreateCard>()));
|
||||
let effect = inspect(create_card(CreateCard::FORM));
|
||||
|
||||
assert!(effect.has_slot(ui::board::slots::notice));
|
||||
assert!(matches!(effect.ops(), [Effect::Put { payload: Payload::Text(_), .. }]));
|
||||
|
||||
@@ -55,9 +55,7 @@ mod tests {
|
||||
ui::control_center::slots::notice.text("queued")
|
||||
}
|
||||
|
||||
let batch = inspect(launch_work(
|
||||
ui::control_center::forms::launch_work.typed::<LaunchWork>(),
|
||||
));
|
||||
let batch = inspect(launch_work(LaunchWork::FORM));
|
||||
|
||||
assert!(batch.has_slot(ui::control_center::slots::notice));
|
||||
assert!(matches!(batch.ops(), [Effect::Put { payload: Payload::Text(_), .. }]));
|
||||
|
||||
@@ -66,7 +66,7 @@ mod tests {
|
||||
ui::slots::todo_list.text("queued")
|
||||
}
|
||||
|
||||
let effect = inspect(add_todo(ui::forms::new_todo.typed::<TodoInput>()));
|
||||
let effect = inspect(add_todo(TodoInput::FORM));
|
||||
|
||||
assert!(effect.has_slot(ui::slots::todo_list));
|
||||
assert!(matches!(effect.ops(), [Effect::Put { payload: Payload::Text(_), .. }]));
|
||||
@@ -103,7 +103,7 @@ mod tests {
|
||||
ui::slots::wizard_step.text("queued")
|
||||
}
|
||||
|
||||
let effect = inspect(next_step(ui::forms::wizard_input.typed::<WizardInput>()));
|
||||
let effect = inspect(next_step(WizardInput::FORM));
|
||||
|
||||
assert!(effect.has_slot(ui::slots::wizard_step));
|
||||
assert!(matches!(effect.ops(), [Effect::Put { payload: Payload::Text(_), .. }]));
|
||||
@@ -158,7 +158,7 @@ mod tests {
|
||||
ui::slots::login_status.text("queued")
|
||||
}
|
||||
|
||||
let effect = inspect(login(ui::forms::credentials.typed::<Credentials>()));
|
||||
let effect = inspect(login(Credentials::FORM));
|
||||
|
||||
assert!(effect.has_slot(ui::slots::login_status));
|
||||
assert!(matches!(effect.ops(), [Effect::Put { payload: Payload::Text(_), .. }]));
|
||||
|
||||
Reference in New Issue
Block a user