dependency_check_updates_core/
style.rs1#[derive(Debug, Clone, Copy, PartialEq, Eq)]
3pub enum IndentStyle {
4 Spaces(u8),
5 Tab,
6}
7
8impl Default for IndentStyle {
9 fn default() -> Self {
10 Self::Spaces(2)
11 }
12}
13
14#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)]
16pub enum LineEnding {
17 #[default]
18 Lf,
19 CrLf,
20}
21
22#[derive(Debug, Clone, Copy, PartialEq, Eq)]
24pub struct FileStyle {
25 pub indent: IndentStyle,
26 pub line_ending: LineEnding,
27 pub trailing_newline: bool,
28}
29
30impl Default for FileStyle {
31 fn default() -> Self {
32 Self {
33 indent: IndentStyle::default(),
34 line_ending: LineEnding::default(),
35 trailing_newline: true,
36 }
37 }
38}
39
40#[cfg(test)]
41mod tests {
42 use super::*;
43
44 #[test]
45 fn test_file_style_default() {
46 let style = FileStyle::default();
47 assert_eq!(style.indent, IndentStyle::Spaces(2));
48 assert_eq!(style.line_ending, LineEnding::Lf);
49 assert!(style.trailing_newline);
50 }
51
52 #[test]
53 fn test_indent_style_default() {
54 let indent = IndentStyle::default();
55 assert_eq!(indent, IndentStyle::Spaces(2));
56 }
57
58 #[test]
59 fn test_line_ending_default() {
60 let ending = LineEnding::default();
61 assert_eq!(ending, LineEnding::Lf);
62 }
63}