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:
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