コード例 #1
0
 def testDeleteSimpleItemWithCommits(self):
     rope = self.rope
     manage_addRopeSimpleItem(rope, ITEM_ID)
     transaction.commit()
     rope.manage_delObjects([ITEM_ID])
     transaction.commit()
     self.failIf(rope.objectIds())
コード例 #2
0
 def testInstantiateSimpleItem(self):
     rope = self.rope
     manage_addRopeSimpleItem(rope, ITEM_ID)
     self.failUnless(ITEM_ID in rope.objectIds())
     item = getattr(rope, ITEM_ID)
     self.assertEquals(ITEM_KEY, item.key)
     self.assertEquals(ITEM_ID, item.getId())
コード例 #3
0
 def testDelete(self):
     rope = self.rope
     manage_addRopeSimpleItem(rope, ITEM_ID)
     transaction.commit()
     browser = self.browser
     browser.open(self.folder_path + '/%s/manage_main' % FOLDER_ID)
     ctl = browser.getControl(name='ids:list')
     ctl.value = [ITEM_ID]
     browser.getControl(name='manage_delObjects:method').click()
     self.failIf(FOLDER_ID in self.rope.objectIds())
コード例 #4
0
 def testEdit(self):
     rope = self.rope
     manage_addRopeSimpleItem(rope, ITEM_ID)
     transaction.commit()
     browser = self.browser
     browser.open(self.item_path + '/manage_workspace')
     ctl = browser.getControl(name='title:UTF-8:string')
     ctl.value = ITEM_TITLE
     browser.getControl(name="manage_editProperties:method").click()
     self.failUnless(ITEM_TITLE in browser.contents)
     browser.open(self.item_path)
     self.assertEquals(browser.contents, ITEM_VIEW)
コード例 #5
0
 def testLocalRole(self):
     uf = self.app.acl_users
     uf._addUser('other', 'other', 'other', [], ())
     rope = self.rope
     manage_addRopeSimpleItem(rope, ITEM_ID)
     transaction.commit()
     # browser used by 'other'
     other = plone.testing.z2.Browser(self.layer['app'])
     other.addHeader('Authorization', 'Basic %s:%s' % ('other', 'other'))
     # other cannot access properties page
     self.assertRaises(HTTPError,
             other.open,
             self.item_path + '/manage_workspace')
     # give Owner local role to other
     browser = self.browser
     browser.open(self.item_path + '/manage_listLocalRoles')
     form = browser.getForm(index=1)
     ctl = form.getControl(name='roles:list')
     ctl.value = ['Manager']
     ctl = form.getControl(name='userid')
     ctl.value = ['other']
     form.getControl(name='submit').click()
     # other can access properties page
     other.open(self.item_path + '/manage_workspace')
     self.assertEquals('200 OK'.lower(),
             other.headers['status'].lower())
     # remove local role
     browser = self.browser
     browser.open(self.item_path + '/manage_listLocalRoles')
     ctl = browser.getControl(name='userids:list')
     ctl.value = ['other']
     form = browser.getForm(index=0)
     form.getControl(name='submit').click()
     # other cannot access properties page anymore
     self.assertRaises(HTTPError,
             other.open,
             self.item_path + '/manage_workspace')
コード例 #6
0
 def testPermission(self):
     rope = self.rope
     manage_addRopeSimpleItem(rope, ITEM_ID)
     transaction.commit()
     browser = self.browser
     browser.open(self.item_path)
     self.assertEquals('200 OK'.lower(),
             browser.headers['status'].lower())
     # browser used by 'anonymous'
     anonymous = plone.testing.z2.Browser(self.layer['app'])
     # anonymous can access
     anonymous.open(self.item_path)
     self.assertEquals('200 OK'.lower(),
             anonymous.headers['status'].lower())
     # change security to deny anonymous
     browser.open(self.item_path + \
             '/manage_permissionForm?permission_to_manage=View')
     ctl = browser.getControl(name='roles:list')
     ctl.value = ['Manager']
     ctl = browser.getControl(name='acquire')
     ctl.value = False
     browser.getControl(name='submit').click()
     # anonymous cannot access anymore
     self.assertRaises(HTTPError, anonymous.open, self.item_path)
     # store View permission on item instead of acquiring it
     browser.open(self.item_path + \
             '/manage_permissionForm?permission_to_manage=View')
     ctl = browser.getControl(name='roles:list')
     ctl.value = ['Manager', 'Anonymous']
     ctl = browser.getControl(name='acquire')
     ctl.value = False
     browser.getControl(name='submit').click()
     # anonymous can access again
     anonymous = plone.testing.z2.Browser(self.layer['app'])
     anonymous.open(self.item_path)
     self.assertEquals('200 OK'.lower(),
             anonymous.headers['status'].lower())
コード例 #7
0
 def testFolderUnrestrictedTraverse(self):
     rope = self.rope
     manage_addRopeSimpleItem(rope, ITEM_ID)
     item = rope.unrestrictedTraverse(ITEM_ID)
     self.assertEquals(ITEM_KEY, item.key)
     self.assertEquals(ITEM_ID, item.getId())
コード例 #8
0
 def testFolderGetAttr(self):
     rope = self.rope
     manage_addRopeSimpleItem(rope, ITEM_ID)
     item = getattr(rope, ITEM_ID)
     self.assertEquals(ITEM_KEY, item.key)
     self.assertEquals(ITEM_ID, item.getId())
コード例 #9
0
 def testDeleteSimpleItem(self):
     rope = self.rope
     manage_addRopeSimpleItem(rope, ITEM_ID)
     self.failUnless(ITEM_ID in rope.objectIds())
     rope.manage_delObjects([ITEM_ID])
     self.failIf(rope.objectIds())
コード例 #10
0
 def testInstantiateSimpleItemWithCommit(self):
     rope = self.rope
     manage_addRopeSimpleItem(rope, ITEM_ID)
     transaction.commit()
     self.failUnless(ITEM_ID in rope.objectIds())