summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias Beyer <mail@beyermatthias.de>2017-02-03 14:40:12 +0100
committerMatthias Beyer <mail@beyermatthias.de>2017-02-03 14:57:18 +0100
commit7f71668f4280c77ba08c5e93339d2b1ced492837 (patch)
tree6199ee7e4d710b72a804c94236617ce0e1368df5
parentb10d0fa623121b6d2404bc4d672fb08b6ac79828 (diff)
Add example to import tasks
-rw-r--r--.travis.yml9
-rw-r--r--examples/import_task.rs21
2 files changed, 24 insertions, 6 deletions
diff --git a/.travis.yml b/.travis.yml
index 5656cfb..2cfae77 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -15,13 +15,10 @@ script: |
# prepare taskwarrior, initial setup
yes | task
- for n in create_task; do
- cargo run --example "$n" | tee /tmp/"$n"
- task import /tmp/"$n" || exit 0
+ cargo run --example create_task | tee /tmp/create_task
+ task import /tmp/create_task || exit 1
- # delete all tasks
- yes | task delete
- done
+ cat /tmp/create_task | cargo run --example import_task || exit 1
after_success: |
[ $TRAVIS_BRANCH = master ] &&
diff --git a/examples/import_task.rs b/examples/import_task.rs
new file mode 100644
index 0000000..d1a481b
--- /dev/null
+++ b/examples/import_task.rs
@@ -0,0 +1,21 @@
+extern crate task_hookrs;
+extern crate chrono;
+extern crate serde_json;
+extern crate uuid;
+
+use std::io::stdin;
+
+use task_hookrs::status::TaskStatus;
+use task_hookrs::import::import;
+
+fn main() {
+ let mut tasks = import(stdin()).unwrap();
+ assert_eq!(tasks.len(), 1);
+ let t = tasks.pop().unwrap();
+ assert_eq!(*t.status(), TaskStatus::Pending);
+ assert_eq!(*t.description(), "Test task".to_owned());
+ assert_eq!(t.priority(), None);
+
+ println!("Successfully imported:\n{:?}", t);
+}
+