diff options
author | Robin Krahl <robin.krahl@ireas.org> | 2020-02-02 12:15:27 +0100 |
---|---|---|
committer | Daniel Mueller <deso@posteo.net> | 2020-09-01 21:20:40 -0700 |
commit | cbd0115cf2d746f5ccde212696376642cee950f9 (patch) | |
tree | af840eba44242390335e872a9febaae39ae0f969 | |
parent | 28f75e9abe874b4469f761598681b8e0d92739af (diff) | |
download | nitrocli-cbd0115cf2d746f5ccde212696376642cee950f9.tar.gz nitrocli-cbd0115cf2d746f5ccde212696376642cee950f9.tar.bz2 |
Add config test case and example config file
This patch adds a simple configuration file that demonstrates the syntax
and contains some documentation. We suggest to ship this file together
with nitrocli and to install it e.g., in the /usr/share/doc/nitrocli
directory. This patch also adds a simple test case that makes sure that
the example file is parsed correctly.
-rw-r--r-- | doc/config.example.toml | 10 | ||||
-rw-r--r-- | src/tests/run.rs | 12 |
2 files changed, 22 insertions, 0 deletions
diff --git a/doc/config.example.toml b/doc/config.example.toml new file mode 100644 index 0000000..a427749 --- /dev/null +++ b/doc/config.example.toml @@ -0,0 +1,10 @@ +# This is an example configuration file for nitrocli. To use it, place it at +# ${XDG_CONFIG_HOME}/nitrocli/config.toml, where XDG_CONFIG_HOME defaults to +# ${HOME}. + +# The model to connect to (string, "pro" or "storage", default: not set). +model = "pro" +# Do not cache secrets (boolean, default: false). +no_cache = true +# The log level (integer, default: 0). +verbosity = 2 diff --git a/src/tests/run.rs b/src/tests/run.rs index 22e7004..597e400 100644 --- a/src/tests/run.rs +++ b/src/tests/run.rs @@ -17,6 +17,8 @@ // * along with this program. If not, see <http://www.gnu.org/licenses/>. * // ************************************************************************* +use std::path; + use super::*; #[test] @@ -108,3 +110,13 @@ fn version_option() { test(&re, "--version"); test(&re, "-V"); } + +#[test] +fn config_file() { + let config = + crate::config::read_config_file(&path::Path::new("doc/config.example.toml")).unwrap(); + + assert_eq!(Some(crate::args::DeviceModel::Pro), config.model); + assert_eq!(true, config.no_cache); + assert_eq!(2, config.verbosity); +} |