Added show module which will eventually show DocDef.
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 1s
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 1s
This commit is contained in:
@@ -33,7 +33,7 @@ impl From<MsgAction> for Action {
|
||||
MsgAction::Records(_) => Action::Records,
|
||||
MsgAction::Register(_) => Action::Register,
|
||||
MsgAction::Reply(_) => Action::Reply,
|
||||
MsgAction::Show => Action::Show,
|
||||
MsgAction::Show(_) => Action::Show,
|
||||
MsgAction::Update(_) => Action::Update,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
use super::{Addition, DocDef, Query, Records, Reply, UserAction};
|
||||
use super::{Addition, DocDef, Query, Records, Reply, Show, UserAction};
|
||||
use crate::{
|
||||
message::{
|
||||
wrapper::{Delete, Update},
|
||||
@@ -22,7 +22,7 @@ pub enum MsgAction {
|
||||
Records(Records),
|
||||
Register(Register),
|
||||
Reply(Reply),
|
||||
Show,
|
||||
Show(Show),
|
||||
Delete(Delete),
|
||||
Update(Update),
|
||||
}
|
||||
@@ -41,6 +41,7 @@ impl MessageAction for MsgAction {
|
||||
Self::Records(data) => data.doc_name(),
|
||||
Self::Register(data) => data.doc_name(),
|
||||
Self::Reply(data) => data.doc_name(),
|
||||
Self::Show(data) => data.doc_name(),
|
||||
_ => &NameType::None,
|
||||
}
|
||||
}
|
||||
|
||||
37
src/action/show.rs
Normal file
37
src/action/show.rs
Normal file
@@ -0,0 +1,37 @@
|
||||
use crate::{message::MessageAction, name::NameType};
|
||||
|
||||
#[derive(Clone, Debug)]
|
||||
pub struct Show {
|
||||
doc_name: NameType,
|
||||
}
|
||||
|
||||
impl Show {
|
||||
pub fn new<NT>(name: NT) -> Self
|
||||
where
|
||||
NT: Into<NameType>,
|
||||
{
|
||||
Self {
|
||||
doc_name: name.into(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl MessageAction for Show {
|
||||
fn doc_name(&self) -> &NameType {
|
||||
&self.doc_name
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod shows {
|
||||
use super::*;
|
||||
use crate::name::test_support::random_name;
|
||||
|
||||
#[test]
|
||||
fn can_request_a_show() {
|
||||
let name = random_name();
|
||||
let expected: NameType = name.clone().into();
|
||||
let show = Show::new(name);
|
||||
assert_eq!(show.doc_name(), &expected);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user