summaryrefslogtreecommitdiff
path: root/tests/cli.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/cli.rs')
-rw-r--r--tests/cli.rs34
1 files changed, 34 insertions, 0 deletions
diff --git a/tests/cli.rs b/tests/cli.rs
new file mode 100644
index 0000000..47fab8d
--- /dev/null
+++ b/tests/cli.rs
@@ -0,0 +1,34 @@
+use std::process::Command;
+
+use assert_cmd::prelude::*;
+
+#[test]
+fn valid() {
+ let mut cmd = Command::cargo_bin("wpa-psk").unwrap();
+ cmd.arg("home")
+ .arg("0123-4567-89")
+ .assert()
+ .success()
+ .stdout("0x150c047b6fad724512a17fa431687048ee503d14c1ea87681d4f241beb04f5ee\n");
+}
+
+#[test]
+fn passphrase_too_short() {
+ let mut cmd = Command::cargo_bin("wpa-psk").unwrap();
+ cmd.arg("bar")
+ .arg("2short")
+ .assert()
+ .failure()
+ .stderr("passphrase must have at least 8 bytes\n");
+}
+
+#[test]
+fn force() {
+ let mut cmd = Command::cargo_bin("wpa-psk").unwrap();
+ cmd.arg("--force")
+ .arg("bar")
+ .arg("2short")
+ .assert()
+ .success()
+ .stdout("0xcb5de4e4d23b2ab0bf5b9ba0fe8132c1e2af3bb52298ec801af8ad520cea3437\n");
+}
Generated by cgit. See skreutz.com for my tech blog and contact information.