1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
use hard_xml::{XmlRead, XmlWrite};

use crate::{__setter, __xml_test_suites};

#[derive(Debug, Default, XmlRead, XmlWrite, Clone)]
#[cfg_attr(test, derive(PartialEq))]
#[xml(tag = "w:tcPr")]
pub struct TableCellProperty {
    #[xml(child = "w:tcW")]
    pub wide: Option<super::TableCellWidth>,
    #[xml(default, child = "w:vAlign")]
    pub v_align: super::VAlign,
}

impl TableCellProperty {
    __setter!(v_align: super::VAlign);
    __setter!(wide: Option<super::TableCellWidth>);
}

__xml_test_suites!(
    TableCellProperty,
    TableCellProperty::default(),
    r#"<w:tcPr><w:vAlign w:val="top"/></w:tcPr>"#,
    TableCellProperty::default().v_align(super::VAlignType::Bottom),
    r#"<w:tcPr><w:vAlign w:val="bottom"/></w:tcPr>"#,
);