def testRandomContent(self): portal = self.layer['portal'] setRoles(portal, TEST_USER_ID, ('Manager',)) make_test_doc(portal) folder = make_test_folder(portal, register=True) # Note: the folder itself is an excellent random content item, # so we do not need to add another document. #folder_doc = make_test_doc(folder) view = portal.restrictedTraverse('randomcontent') result = view() self.assertFalse(result) response = self.layer['request'].response self.assertEqual(response.status, 302) self.assertEqual(response.headers.get('location'), folder.absolute_url()) # Let's see if that is not a lucky break. locations = set() for i in range(10): result = view() self.assertFalse(result) response = self.layer['request'].response self.assertEqual(response.status, 302) location = response.headers.get('location') self.assertTrue(location) locations.add(location) self.assertEqual(len(locations), 1)
def testRandomSiteImageNoDoc(self): # When searching for images, we should never find documents. portal = self.layer['portal'] setRoles(portal, TEST_USER_ID, ('Manager',)) image = make_test_image(portal) make_test_doc(portal) view = portal.restrictedTraverse('randomsiteimage') locations = set() for i in range(10): result = view() self.assertFalse(result) response = self.layer['request'].response self.assertEqual(response.status, 302) location = response.headers.get('location') self.assertTrue(location) locations.add(location) self.assertEqual(len(locations), 1) self.assertEqual(locations.pop(), image.absolute_url())
def testRandomSiteContent(self): portal = self.layer['portal'] setRoles(portal, TEST_USER_ID, ('Manager',)) doc = make_test_doc(portal) view = portal.restrictedTraverse('randomsitecontent') result = view() self.assertFalse(result) response = self.layer['request'].response self.assertEqual(response.status, 302) self.assertEqual(response.headers.get('location'), doc.absolute_url())