def test_search_restrict_manager(self): catalog = CatalogTool() now = DateTime() dummy = DummyContent(catalog=1) self.loginManager() # already expired dummy.effective = now-4 dummy.expires = now-2 catalog.catalog_object(dummy, '/dummy') self.assertEqual(1, len(catalog._catalog.searchResults())) self.assertEqual(1, len(catalog.searchResults())) self.assertEqual(1, len(catalog.searchResults( expires={'query': now-3, 'range': 'min'}))) self.assertEqual(0, len(catalog.searchResults( expires={'query': now-1, 'range': 'min'}))) self.assertEqual(0, len(catalog.searchResults( expires={'query': now-3, 'range': 'max'}))) self.assertEqual(1, len(catalog.searchResults( expires={'query': now-1, 'range': 'max'}))) self.assertEqual(1, len(catalog.searchResults( expires={'query': (now-3, now-1), 'range': 'min:max'}))) self.assertEqual(1, len(catalog.searchResults( expires={'query': (now-3, now-1), 'range': 'minmax'}))) self.assertEqual(1, len(catalog.searchResults( expires={'query': now-2}))) self.assertEqual(1, len(catalog.searchResults( expires={'query': now-2, 'range': None})))
def test_search_restrict_inactive(self): catalog = CatalogTool() now = DateTime() dummy = DummyContent(catalog=1) dummy._View_Permission = ('Blob',) self.loginWithRoles('Blob') # already expired dummy.effective = now-4 dummy.expires = now-2 catalog.catalog_object(dummy, '/dummy') self.assertEqual(1, len(catalog._catalog.searchResults())) self.assertEqual(0, len(catalog.searchResults())) self.assertEqual(0, len(catalog.searchResults( expires={'query': now-3, 'range': 'min'}))) self.assertEqual(0, len(catalog.searchResults( expires={'query': now-3, 'range': 'max'}))) self.assertEqual(0, len(catalog.searchResults( expires={'query': now+3, 'range': 'min'}))) self.assertEqual(0, len(catalog.searchResults( expires={'query': now+3, 'range': 'max'}))) self.assertEqual(0, len(catalog.searchResults( expires={'query': (now-3, now-1), 'range': 'min:max'}))) self.assertEqual(0, len(catalog.searchResults( expires={'query': (now-3, now-1), 'range': 'minmax'}))) self.assertEqual(0, len(catalog.searchResults( expires={'query': now-2, 'range': None})))
def test_search_anonymous(self): catalog = CatalogTool() dummy = DummyContent(catalog=1) catalog.catalog_object(dummy, '/dummy') self.assertEqual(1, len(catalog._catalog.searchResults())) self.assertEqual(0, len(catalog.searchResults()))
def test_search_inactive(self): catalog = CatalogTool() now = DateTime() dummy = DummyContent(catalog=1) dummy._View_Permission = ('Blob', ) self.loginWithRoles('Blob') # not yet effective dummy.effective = now + 1 dummy.expires = now + 2 catalog.catalog_object(dummy, '/dummy') self.assertEqual(1, len(catalog._catalog.searchResults())) self.assertEqual(0, len(catalog.searchResults())) # already expired dummy.effective = now - 2 dummy.expires = now - 1 catalog.catalog_object(dummy, '/dummy') self.assertEqual(1, len(catalog._catalog.searchResults())) self.assertEqual(0, len(catalog.searchResults()))
def test_search_inactive(self): catalog = CatalogTool() now = DateTime() dummy = DummyContent(catalog=1) dummy._View_Permission = ('Blob',) self.loginWithRoles('Blob') # not yet effective dummy.effective = now+1 dummy.expires = now+2 catalog.catalog_object(dummy, '/dummy') self.assertEqual(1, len(catalog._catalog.searchResults())) self.assertEqual(0, len(catalog.searchResults())) # already expired dummy.effective = now-2 dummy.expires = now-1 catalog.catalog_object(dummy, '/dummy') self.assertEqual(1, len(catalog._catalog.searchResults())) self.assertEqual(0, len(catalog.searchResults()))
def test_search_restrict_manager(self): catalog = CatalogTool() now = DateTime() dummy = DummyContent(catalog=1) self.loginManager() # already expired dummy.effective = now - 4 dummy.expires = now - 2 catalog.catalog_object(dummy, '/dummy') self.assertEqual(1, len(catalog._catalog.searchResults())) self.assertEqual(1, len(catalog.searchResults())) self.assertEqual( 1, len( catalog.searchResults(expires={ 'query': now - 3, 'range': 'min' }))) self.assertEqual( 0, len( catalog.searchResults(expires={ 'query': now - 1, 'range': 'min' }))) self.assertEqual( 0, len( catalog.searchResults(expires={ 'query': now - 3, 'range': 'max' }))) self.assertEqual( 1, len( catalog.searchResults(expires={ 'query': now - 1, 'range': 'max' }))) self.assertEqual( 1, len( catalog.searchResults(expires={ 'query': (now - 3, now - 1), 'range': 'min:max' }))) self.assertEqual( 1, len( catalog.searchResults(expires={ 'query': (now - 3, now - 1), 'range': 'minmax' }))) self.assertEqual( 1, len(catalog.searchResults(expires={'query': now - 2}))) self.assertEqual( 1, len( catalog.searchResults(expires={ 'query': now - 2, 'range': None })))
def test_search_restrict_visible(self): catalog = CatalogTool() now = DateTime() dummy = DummyContent(catalog=1) dummy._View_Permission = ('Blob', ) self.loginWithRoles('Blob') # visible dummy.effective = now - 2 dummy.expires = now + 2 catalog.catalog_object(dummy, '/dummy') self.assertEqual(1, len(catalog._catalog.searchResults())) self.assertEqual(1, len(catalog.searchResults())) self.assertEqual( 0, len( catalog.searchResults(effective={ 'query': now - 1, 'range': 'min' }))) self.assertEqual( 1, len( catalog.searchResults(effective={ 'query': now - 1, 'range': 'max' }))) self.assertEqual( 0, len( catalog.searchResults(effective={ 'query': now + 1, 'range': 'min' }))) self.assertEqual( 1, len( catalog.searchResults(effective={ 'query': now + 1, 'range': 'max' }))) self.assertEqual( 0, len( catalog.searchResults(effective={ 'query': (now - 1, now + 1), 'range': 'min:max' }))) self.assertEqual( 0, len( catalog.searchResults(effective={ 'query': (now - 1, now + 1), 'range': 'minmax' }))) self.assertEqual( 1, len( catalog.searchResults(expires={ 'query': now - 2, 'range': None }))) self.assertEqual( 1, len( catalog.searchResults(effective={ 'query': now - 3, 'range': 'min' }))) self.assertEqual( 0, len( catalog.searchResults(effective={ 'query': now - 3, 'range': 'max' }))) self.assertEqual( 0, len( catalog.searchResults(effective={ 'query': now + 3, 'range': 'min' }))) self.assertEqual( 1, len( catalog.searchResults(effective={ 'query': now + 3, 'range': 'max' }))) self.assertEqual( 1, len( catalog.searchResults(effective={ 'query': (now - 3, now + 3), 'range': 'min:max' }))) self.assertEqual( 1, len( catalog.searchResults(effective={ 'query': (now - 3, now + 3), 'range': 'minmax' }))) self.assertEqual( 1, len( catalog.searchResults(expires={ 'query': now - 1, 'range': 'min' }))) self.assertEqual( 0, len( catalog.searchResults(expires={ 'query': now - 1, 'range': 'max' }))) self.assertEqual( 1, len( catalog.searchResults(expires={ 'query': now + 1, 'range': 'min' }))) self.assertEqual( 0, len( catalog.searchResults(expires={ 'query': now + 1, 'range': 'max' }))) self.assertEqual( 0, len( catalog.searchResults(expires={ 'query': (now - 1, now + 1), 'range': 'min:max' }))) self.assertEqual( 0, len( catalog.searchResults(expires={ 'query': (now - 1, now + 1), 'range': 'minmax' }))) self.assertEqual( 1, len( catalog.searchResults(expires={ 'query': now - 3, 'range': 'min' }))) self.assertEqual( 0, len( catalog.searchResults(expires={ 'query': now - 3, 'range': 'max' }))) self.assertEqual( 0, len( catalog.searchResults(expires={ 'query': now + 3, 'range': 'min' }))) self.assertEqual( 1, len( catalog.searchResults(expires={ 'query': now + 3, 'range': 'max' }))) self.assertEqual( 1, len( catalog.searchResults(expires={ 'query': (now - 3, now + 3), 'range': 'min:max' }))) self.assertEqual( 1, len( catalog.searchResults(expires={ 'query': (now - 3, now + 3), 'range': 'minmax' }))) self.assertEqual( 1, len( catalog.searchResults(effective={ 'query': now - 1, 'range': 'max' }, expires={ 'query': now + 1, 'range': 'min' }))) self.assertEqual( 0, len( catalog.searchResults(effective={ 'query': now + 1, 'range': 'max' }, expires={ 'query': now + 3, 'range': 'min' })))