rspec/runner/
configuration.rs1#![allow(unused_mut)]
3
4#[derive(Builder)]
6pub struct Configuration {
7 #[builder(default = "true")]
9 pub parallel: bool,
10 #[builder(default = "true")]
12 pub exit_on_failure: bool,
13}
14
15impl Default for Configuration {
16 fn default() -> Self {
17 ConfigurationBuilder::default().build().unwrap()
18 }
19}
20
21#[cfg(test)]
22mod tests {
23 use super::*;
24
25 #[test]
26 fn default_with_builder() {
27 let config = ConfigurationBuilder::default().build().unwrap();
28 assert_eq!(config.parallel, true);
29 assert_eq!(config.exit_on_failure, true);
30 }
31
32 #[test]
33 fn default() {
34 let expected = ConfigurationBuilder::default().build().unwrap();
36 let config = Configuration::default();
38 assert_eq!(expected.parallel, config.parallel);
40 assert_eq!(expected.exit_on_failure, config.exit_on_failure);
41 }
42
43 #[test]
44 fn builder() {
45 let config = ConfigurationBuilder::default().build().unwrap();
46 assert_eq!(config.parallel, true);
47 assert_eq!(config.exit_on_failure, true);
48
49 let config = ConfigurationBuilder::default()
50 .parallel(false)
51 .build()
52 .unwrap();
53 assert_eq!(config.parallel, false);
54 assert_eq!(config.exit_on_failure, true);
55
56 let config = ConfigurationBuilder::default()
57 .exit_on_failure(false)
58 .build()
59 .unwrap();
60 assert_eq!(config.parallel, true);
61 assert_eq!(config.exit_on_failure, false);
62 }
63}