Skip to content

Commit 33c6e64

Browse files
committed
add unittest to rangebreak
Signed-off-by: Andrei Gherghescu <8067229+andrei-ng@users.noreply.github.com>
1 parent 1cbaab9 commit 33c6e64

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed

plotly/src/layout/rangebreaks.rs

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,3 +48,55 @@ impl RangeBreak {
4848
self
4949
}
5050
}
51+
52+
#[cfg(test)]
53+
mod tests {
54+
use serde_json::{json, to_value};
55+
56+
use super::*;
57+
58+
#[test]
59+
fn serialize_range_break_default() {
60+
let range_break = RangeBreak::new();
61+
62+
let expected = json!({});
63+
64+
assert_eq!(to_value(range_break).unwrap(), expected);
65+
}
66+
67+
#[test]
68+
fn serialize_range_break() {
69+
let range_break = RangeBreak::new()
70+
.pattern("day of week")
71+
.bounds("sat", "mon")
72+
.values(vec!["sat", "sun"])
73+
.dvalue(86400000)
74+
.enabled(true);
75+
76+
let expected = json!({
77+
"pattern": "day of week",
78+
"bounds": ["sat", "mon"],
79+
"values": ["sat", "sun"],
80+
"dvalue": 86400000,
81+
"enabled": true
82+
});
83+
84+
assert_eq!(to_value(range_break).unwrap(), expected);
85+
}
86+
87+
#[test]
88+
fn seriealize_range_break_with_mixed_values() {
89+
let range_break = RangeBreak::new().values(vec![
90+
NumOrString::S("sat".to_string()),
91+
NumOrString::I(0),
92+
NumOrString::S("sun".to_string()),
93+
NumOrString::I(1),
94+
]);
95+
96+
let expected = json!({
97+
"values": ["sat", 0, "sun", 1]
98+
});
99+
100+
assert_eq!(to_value(range_break).unwrap(), expected);
101+
}
102+
}

0 commit comments

Comments
 (0)