20
20
https://docs.djangoproject.com/en/2.1/ref/request-response/#httprequest-objects
21
21
"""
22
22
23
- import os
24
-
25
23
26
24
class HideFileCommand :
27
25
"""
@@ -33,53 +31,30 @@ def __init__(self):
33
31
self ._hidden_files = []
34
32
35
33
def execute (self , filename ):
36
- if os .path .isfile (filename ):
37
- print (f'hiding { filename } ' )
38
-
39
- os .rename (filename , f'.{ filename } ' )
40
- self ._hidden_files .append (filename )
41
- else :
42
- print (f'{ filename } does not exists to hide' )
34
+ print (f'hiding { filename } ' )
35
+ self ._hidden_files .append (filename )
43
36
44
37
def undo (self ):
45
- if len (self ._hidden_files ) > 0 :
46
- filename = self ._hidden_files .pop ()
47
-
48
- print (f'un-hiding { filename } ' )
49
-
50
- os .rename (f'.{ filename } ' , filename )
38
+ filename = self ._hidden_files .pop ()
39
+ print (f'un-hiding { filename } ' )
51
40
52
41
53
42
class DeleteFileCommand :
54
43
"""
55
44
A command to delete a file given its name
56
45
"""
57
- _deleted_files_path = 'trash'
58
46
59
47
def __init__ (self ):
60
48
# an array of deleted files, to undo them as needed
61
49
self ._deleted_files = []
62
50
63
- # create a directory to store deleted files
64
- if not os .path .exists (self ._deleted_files_path ):
65
- os .makedirs (self ._deleted_files_path )
66
-
67
51
def execute (self , filename ):
68
- if os .path .isfile (filename ):
69
- print (f'deleting { filename } ' )
70
-
71
- os .rename (filename , f'{ self ._deleted_files_path } /{ filename } ' )
72
- self ._deleted_files .append (filename )
73
- else :
74
- print (f'{ filename } does not exists to delete' )
52
+ print (f'deleting { filename } ' )
53
+ self ._deleted_files .append (filename )
75
54
76
55
def undo (self ):
77
- if len (self ._deleted_files ) > 0 :
78
- filename = self ._deleted_files .pop ()
79
-
80
- print (f'restoring { filename } ' )
81
-
82
- os .rename (f'{ self ._deleted_files_path } /{ filename } ' , filename )
56
+ filename = self ._deleted_files .pop ()
57
+ print (f'restoring { filename } ' )
83
58
84
59
85
60
class MenuItem :
@@ -105,27 +80,25 @@ def main():
105
80
106
81
# create a file named `test-file` to work with
107
82
>>> test_file_name = 'test-file'
108
- >>> open(test_file_name, 'w').close()
109
83
110
84
# deleting `test-file`
111
85
>>> item1.on_do_press(test_file_name)
112
86
deleting test-file
113
87
114
- # hiding `test-file` but it does not exists
115
- >>> item2.on_do_press(test_file_name)
116
- test-file does not exists to hide
117
-
118
88
# restoring `test-file`
119
89
>>> item1.on_undo_press()
120
90
restoring test-file
121
91
122
92
# hiding `test-file`
123
93
>>> item2.on_do_press(test_file_name)
124
94
hiding test-file
95
+
96
+ # un-hiding `test-file`
97
+ >>> item2.on_undo_press()
98
+ un-hiding test-file
125
99
"""
126
100
127
101
128
102
if __name__ == "__main__" :
129
103
import doctest
130
-
131
104
doctest .testmod ()
0 commit comments