@@ -82,11 +82,32 @@ def testGet(self):
8282 self .assertEqual (results ['attributes' ]['username' ], 'joe' )
8383 self .assertEqual (results ['attributes' ]['realname' ], 'Joe Random' )
8484
85+ # Obtain data for 'joe'.
86+ code , results = self .server .get_attribute (
87+ 'user' , self .joeid , 'username' , {}
88+ )
89+ self .assertEqual (code , 200 )
90+ self .assertEqual (results ['data' ], 'joe' )
91+
8592 def testPut (self ):
8693 """
8794 Change joe's 'realname'
8895 Check if we can't change admin's detail
8996 """
97+ # change Joe's realname via attribute uri
98+ form = cgi .FieldStorage ()
99+ form .list = [
100+ cgi .MiniFieldStorage ('data' , 'Joe Doe Doe' )
101+ ]
102+ code , results = self .server .put_attribute (
103+ 'user' , self .joeid , 'realname' , form
104+ )
105+ code , results = self .server .get_attribute (
106+ 'user' , self .joeid , 'realname' , {}
107+ )
108+ self .assertEqual (code , 200 )
109+ self .assertEqual (results ['data' ], 'Joe Doe Doe' )
110+
90111 # Reset joe's 'realname'.
91112 form = cgi .FieldStorage ()
92113 form .list = [
@@ -197,6 +218,31 @@ def testAuthAllowedPost(self):
197218 finally :
198219 self .db .setCurrentUser ('joe' )
199220
221+ def testDeleteAttributeUri (self ):
222+ """
223+ Test Delete an attribute
224+ """
225+ # create a new issue with userid 1 in the nosy list
226+ issue_id = self .db .issue .create (title = 'foo' , nosy = ['1' ])
227+
228+ # remove the title and nosy
229+ code , results = self .server .delete_attribute (
230+ 'issue' , issue_id , 'title' , {}
231+ )
232+ self .assertEqual (code , 200 )
233+
234+ code , results = self .server .delete_attribute (
235+ 'issue' , issue_id , 'nosy' , {}
236+ )
237+ self .assertEqual (code , 200 )
238+
239+ # verify the result
240+ code , results = self .server .get_element ('issue' , issue_id , {})
241+ self .assertEqual (code , 200 )
242+ self .assertEqual (len (results ['attributes' ]['nosy' ]), 0 )
243+ self .assertListEqual (results ['attributes' ]['nosy' ], [])
244+ self .assertEqual (results ['attributes' ]['title' ], None )
245+
200246 def testPatchAdd (self ):
201247 """
202248 Test Patch op 'Add'
0 commit comments