Skip to content

Commit 5525fb8

Browse files
committed
tests
1 parent a946734 commit 5525fb8

File tree

3 files changed

+37
-33
lines changed

3 files changed

+37
-33
lines changed

PYTHON APPS/CLI-Based-TODO/task.py

100644100755
+37-33
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,44 @@
1-
import time,os,sys
1+
#!/usr/bin/env python3
2+
import sys
3+
from argparse import ArgumentParser as aparse
24

35
usage = "Usage :-\n$ ./task add 2 'hello world' # Add a new item with priority 2 and text \"hello world\" to the list\n$ ./task ls # Show incomplete priority list items sorted by priority in ascending order\n$ ./task del INDEX # Delete the incomplete item with the given index\n$ ./task done INDEX # Mark the incomplete item with the given index as complete\n$ ./task help # Show usage\n$ ./task report # Statistics ( list complete/incomplete task )"
46

5-
def func():
6-
try:
7-
8-
# printing help
9-
if sys.argv[1]=="help":
10-
print(usage)
11-
return usage
7+
def create_parser():
8+
parser = aparse(description="""Command Line task list""")
9+
parser.add_argument("toDo", default="ls", choices=['usage', 'ls', 'add', 'del', 'done', 'report'], help="Enter command: usage, ls, add, del, done, report.")
10+
parser.add_argument("-p", required=False, help="item priority")
11+
parser.add_argument("-i", required=False, help="List item to add, remove, or mark done.")
1212

13+
def func():
14+
args = create_parser().parse_args()
15+
1316
# lisiting all the task
14-
if sys.argv[1]=="ls":
15-
try:
16-
f = open("path/to/plans/task.txt",'r')
17-
data = f.read()
18-
datalist = data.split("\n")
19-
datalist = sorted(datalist)
20-
datalist = datalist[1:]
21-
# print(datalist)
22-
for i in range(len(datalist)):
23-
print(f"{i+1}. {datalist[i][2:]} [{datalist[i][0:1]}]")
17+
if args.toDo == "ls":
18+
try:
19+
f = open("path/to/plans/task.txt",'r')
20+
data = f.read()
21+
datalist = data.split("\n")
22+
datalist = sorted(datalist)
23+
datalist = datalist[1:]
24+
# print(datalist)
25+
for i in range(len(datalist)):
26+
print(f"{i+1}. {datalist[i][2:]} [{datalist[i][0:1]}]")
2427

25-
except:
26-
print("Error: Missing file")
28+
except:
29+
print("Error: Missing file")
2730

2831

2932

30-
# adding the task
31-
if sys.argv[1]=="add":
32-
try:
33-
with open("path/to/plans/task.txt",'a',encoding = 'utf-8') as f:
34-
res = f.write(f"{sys.argv[2]} {sys.argv[3]}\n")
35-
except:
36-
print("Error: Missing tasks string. Nothing added!")
37-
else:
38-
print(f"Added task: \"{sys.argv[3]}\" with priority {sys.argv[2]}")
33+
# adding the task
34+
if args.toDo == "add":
35+
try:
36+
with open("path/to/plans/task.txt",'a',encoding = 'utf-8') as f:
37+
res = f.write(f"{sys.argv[2]} {sys.argv[3]}\n")
38+
except:
39+
print("Error: Missing tasks string. Nothing added!")
40+
else:
41+
print(f"Added task: \"{sys.argv[3]}\" with priority {sys.argv[2]}")
3942

4043

4144

@@ -110,8 +113,9 @@ def func():
110113
except:
111114
print("Error: Missing file")
112115

113-
except:
114-
print(usage)
115-
return usage.encode('utf8')
116+
# except:
117+
# print(usage)
118+
# return usage.encode('utf8')
116119

117-
func()
120+
if __name__ == "__main__":
121+
func()

PYTHON APPS/CLI-Based-TODO/time,os,sys

Whitespace-only changes.

file.txt

Whitespace-only changes.

0 commit comments

Comments
 (0)