Commit graph

6330 commits

Author SHA1 Message Date
734f889cdf Add test for testing listing all entries with/out a certain tag
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-13 19:46:10 +01:00
c5f0dc7b14 Add imag-tag-missing command for filtering entries
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-13 19:46:10 +01:00
cec4d93f3e Add imag-tag-present command for filtering entries
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-13 19:46:10 +01:00
9e532f79dd Transform the main function to get the subcommand object
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-13 19:38:39 +01:00
5a89a29b6d Fix: Only view entry if output is not a pipe
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-13 19:21:28 +01:00
fae53aa134 Rewrite to accept ids from stdin
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-11 19:50:38 +01:00
9dc345c833 Fix: a tag can contain ascii digits
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-11 19:48:55 +01:00
61ade452de Make tag-checking error message more explicit about what is wrong
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-11 19:48:09 +01:00
164880dbf9 Fix: Make everything cfg(test)
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-10 11:52:26 +01:00
9f5b28ea11 Fix: Do not call exit(), but propagate error
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-10 01:53:09 +01:00
99fedd5abd Merge branch 'imag-todo-taskwarrior-import' into master
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-09 18:41:18 +01:00
ead9438c41 Merge branch 'libimagtodo-req-rewrite' into master
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-09 18:38:12 +01:00
5cfbab8b8e Add import functionality for taskwarrior imports
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-09 17:35:19 +01:00
5be95227c4 Add builder for todo entries
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-09 17:35:19 +01:00
7873d99df5 Reimplement imag-todo
Parts of this commit were written by Leon, but in the process we needed
to squash. Here's his original commit message:

> Change todo listing behaviours
>
> This commit changes the todo binary to have the following behaviour:
> - `imag-todo`: Print all non-hidden pending todos
> - `imag-todo pending`: Print all non-hidden pending todos
> - `imag-todo list`: Print all non-hidden non-done todos
>   - `--done`: Include done
>   - `--no-pending`: Exclude pending
>
> Each and every command respects the hidden attribute only on the view
> layer, but still pipes the hidden entries to stdout.
>
> Internally, this introduces a black- and whitelist todo-state matcher,
> that can be configured to match only certain todos and thereby
> improves reusability of functions over the domain binary.

Signed-off-by: Leon Schuermann <leon@is.currently.online>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-09 17:35:06 +01:00
775d3f0a80 Reimplement libimagtodo
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-09 17:35:06 +01:00
21cc901d06 Rewrite what libimagtodo should implement
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-09 17:35:06 +01:00
adca7a4a1c Remove old implementation
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-09 17:35:06 +01:00
01db294700 Add Runtime::input_is_pipe()
We need this because we might want to check whether we can get the STDIN
handle from the runtime or not.
In some (rare) cases, the runtime "thinks" that STDIN is a stream of
IDs, but it is not. So the client can check whether stdin is a pipe
(thus, whether Runtime thinks that there's a stream of IDs) and easily
work around that by taking ::std::io::stdin() itself.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-09 15:51:09 +01:00
7b6e5eafba Merge branch 'ui-testing' into master 2019-11-03 11:57:15 +01:00
d68797a115 Test imag-mv
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-03 11:30:33 +01:00
a8107ae6e0 Add tests for imag-category
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-03 11:30:33 +01:00
485ad3815f Add helper function to get stderr of a command
But also get back the Assert object, which can then be used to check
whether the command succeeded or failed.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-03 11:30:33 +01:00
0c685fde73 Add imag-tag tests
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-03 11:30:33 +01:00
f7bc7d0834 Adapt to quote-less output
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-03 11:30:33 +01:00
00d6e78c5d Rewrite imag header version output test
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-03 11:30:33 +01:00
cf4298b9da Add call() helper
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-03 11:30:33 +01:00
a837cff382 Add tests for imag-grep
Signed-off-by: Matthias Beyer <mail@beyermatthias.deg
2019-11-03 11:30:33 +01:00
f1b5b0915b Refactor file_path and provide helper function for store path
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-02 18:19:30 +01:00
a8b75ad2ba Refactor out helper function to simply get stdout of a command
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-02 18:19:30 +01:00
fd2afad72a Move path calculation to helper function
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-02 18:19:30 +01:00
4cbcdc118c Add test: Check whether imag-header prints correct string when querying imag.version header
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-02 18:19:30 +01:00
4b3e2ea4cd Add test: Test whether imag-header reports header at imag.version after entry creation
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-02 18:19:30 +01:00
61a1a241c8 Add test: imag-ids reports id after it was created
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-02 18:19:30 +01:00
ceabde799b Add test: check whether imag-create works as expected
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-02 18:19:30 +01:00
4c67450b0c Add test: store is empty after creation
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-02 18:19:30 +01:00
eb6029537a Add test: check with imag-ids whether no entries exist after init
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-02 18:19:30 +01:00
966eb6d045 Add test: check whether imag-init creates store path
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-02 18:19:30 +01:00
409660b07b Add test: check whether default configuration is added when imag-init is called
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-02 18:19:30 +01:00
49af82cc68 Add imag-init test
* Extract function to call imag-init for a tempdir path
* Simplify setup helper functions

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-02 18:19:30 +01:00
d78ab67956 Add crate for ui-tests
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-02 18:19:30 +01:00
d51c1e99b9 Merge branch 'more-touching' into master 2019-11-02 17:50:28 +01:00
1f858cf4bd Merge branch 'imag-link-direction' into master 2019-11-02 17:50:08 +01:00
8270646283 Merge branch 'convert-id-in-collection-command' into master 2019-11-02 17:49:55 +01:00
a79f902d70 imag-link: Add option for directional linking
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-11-02 12:12:05 +01:00
69ea42dcad Merge branch 'iterator-report-touched' into master
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-10-27 18:44:58 +01:00
fa7e8cc6b4 Merge branch 'imag-bookmark-noexit' into master
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-10-27 18:44:54 +01:00
c67f0bbd4b Merge branch 'imag-calendar-noexit' into master
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-10-27 18:44:49 +01:00
cc8150e0a9 Add extension trait for iterator over Result<Entry>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-10-27 13:39:34 +01:00
39cf75a532 Add iterator extensions for store-id touched reporting
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-10-27 13:39:34 +01:00