Skip to content

Commit 4e6ef19

Browse files
fix: enable tag filter for 'all'
1 parent 954f0f5 commit 4e6ef19

File tree

2 files changed

+23
-14
lines changed

2 files changed

+23
-14
lines changed

tests/test_things_cli.py

Lines changed: 19 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
class ThingsCLICase(unittest.TestCase):
1313
"""Class documentation goes here."""
1414

15-
things3_cli = cli.ThingsCLI(database='tests/main.sqlite')
15+
things3_cli = cli.ThingsCLI(database="tests/main.sqlite")
1616

1717
def _test_main(self, args, expected):
1818
new_out = io.StringIO()
@@ -27,19 +27,21 @@ def _test_main(self, args, expected):
2727
def test_methods(self):
2828
"""Invoke all commands."""
2929
parser = self.things3_cli.get_parser()
30-
for command in parser._subparsers._actions[1].choices: # noqa # pylint: disable=protected-access
30+
for command in parser._subparsers._actions[
31+
1
32+
].choices: # noqa # pylint: disable=protected-access
3133
if command not in ["feedback", "search"]:
3234
args = parser.parse_args([command])
3335
self._test_main(args, " ")
34-
args = parser.parse_args(['-r', command])
36+
args = parser.parse_args(["-r", command])
3537
self._test_main(args, " ")
36-
args = parser.parse_args(['-r', '-o', command])
38+
args = parser.parse_args(["-r", "-o", command])
3739
self._test_main(args, " ")
38-
args = parser.parse_args(['-r', '-c', command])
40+
args = parser.parse_args(["-r", "-c", command])
3941
self._test_main(args, ";")
40-
args = parser.parse_args(['-r', '-j', command])
42+
args = parser.parse_args(["-r", "-j", command])
4143
self._test_main(args, " ")
42-
args = parser.parse_args(['search', 'To-Do'])
44+
args = parser.parse_args(["search", "To-Do"])
4345
self._test_main(args, "To-Do in Today")
4446

4547
def test_noparam(self):
@@ -59,7 +61,9 @@ def test_noparam(self):
5961

6062
def test_today(self):
6163
"""Test Today."""
62-
args = self.things3_cli.get_parser().parse_args(['-d', 'tests/main.sqlite', 'today'])
64+
args = self.things3_cli.get_parser().parse_args(
65+
["-d", "tests/main.sqlite", "today"]
66+
)
6367
new_out = io.StringIO()
6468
old_out = sys.stdout
6569
try:
@@ -71,7 +75,9 @@ def test_today(self):
7175

7276
def test_csv(self):
7377
"""Test Next via CSV."""
74-
args = self.things3_cli.get_parser().parse_args(['-d', 'tests/main.sqlite', '-c', 'anytime'])
78+
args = self.things3_cli.get_parser().parse_args(
79+
["-d", "tests/main.sqlite", "-c", "anytime"]
80+
)
7581
new_out = io.StringIO()
7682
old_out = sys.stdout
7783
try:
@@ -83,7 +89,9 @@ def test_csv(self):
8389

8490
def test_json(self):
8591
"""Test Upcoming via JSON."""
86-
args = self.things3_cli.get_parser().parse_args(['-d', 'tests/main.sqlite', '-j', 'upcoming'])
92+
args = self.things3_cli.get_parser().parse_args(
93+
["-d", "tests/main.sqlite", "-j", "upcoming"]
94+
)
8795
new_out = io.StringIO()
8896
old_out = sys.stdout
8997
try:
@@ -94,5 +102,5 @@ def test_json(self):
94102
self.assertIn("7F4vqUNiTvGKaCUfv5pqYG", new_out.getvalue())
95103

96104

97-
if __name__ == '__main__':
105+
if __name__ == "__main__":
98106
unittest.main()

things_cli/cli.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -310,11 +310,12 @@ def main(self, args=None):
310310
# self.things3.anonymize = self.anonymize ## not implemented
311311
defaults = self.defaults()
312312

313-
remove_filter = ["all", "areas", "tags"]
314-
if command in remove_filter:
313+
if command == "tags":
314+
defaults.pop("tag")
315+
defaults.pop("project")
316+
if command in ["all", "areas"]:
315317
defaults.pop("area")
316318
defaults.pop("project")
317-
defaults.pop("tag")
318319

319320
if command == "all":
320321
inbox = api.inbox(**defaults)

0 commit comments

Comments
 (0)