def test_provides_history_free(self): storage = self.makeOne(keep_history=False) assert_that(storage, validly_provides(IRelStorage)) assert_that(storage, does_not(provides(IStorageUndoable))) assert_that(storage, does_not(provides(IExternalGC))) assert_that(storage, does_not(provides(IBlobStorage))) assert_that(storage, does_not(provides(IBlobStorageRestoreable))) assert_that(storage, does_not(validly_provides(IExternalGC)))
def test_query(self): from zope.site import SiteManagerAdapter from zope import component component.provideAdapter(SiteManagerAdapter) top_site = SiteManagerContainer() top_sm = LocalSiteManager(top_site) top_site.setSiteManager(top_sm) assert_that(top_sm.__parent__, is_(top_site)) assert_that(top_site, provides(ISite)) interface.alsoProvides(top_site, ILocationInfo) child_site = SiteManagerContainer() child_site.__parent__ = top_site child_site.getParent = lambda: child_site.__parent__ interface.alsoProvides(child_site, ILocationInfo) child_sm = LocalSiteManager(child_site) child_site.setSiteManager(child_sm) assert_that(child_sm.__bases__, is_((top_sm,))) class IFoo(Interface): pass @interface.implementer(IFoo) class Foo(Contained): pass child_foo = Foo() top_foo = Foo() child_foo.__parent__ = child_site top_foo.__parent__ = top_site top_sm.registerUtility(top_foo, IFoo) child_sm.registerUtility(child_foo, IFoo) child_foo.__conform__ = lambda self, _: child_sm from zope import component component.getSiteManager(child_foo) x = queryNextUtility(child_foo, IFoo) assert_that(x, is_(top_foo)) class IBaz(Interface): pass x = queryNextUtility(child_foo, IBaz) assert_that(x, is_(none())) x = queryNextUtility(top_foo, IFoo) assert_that(x, is_(none())) x = queryNextUtility(component.getGlobalSiteManager(), IFoo) assert_that(x, is_(none())) global_foo = Foo() component.provideUtility(global_foo, IFoo) x = queryNextUtility(component.getGlobalSiteManager(), IFoo) assert_that(x, is_(global_foo))
def test_adjust_interface_blank(self): # Initially, nothing adjust(self.request) assert_that(self.request, does_not(provides(IPreferredLanguagesRequest))) assert_that(self._langs(), is_empty()) assert_that(self._locale(), is_('en'))
def test_adjust_zope_cookie(self): self.request.cookies['I18N_LANGUAGE'] = 'ru' adjust(self.request) assert_that(self.request, provides(IPreferredLanguagesRequest)) # It got copied to the request attribute too for benefit # of the default pyramid localizer assert_that(self.request, has_property('_LOCALE_', 'ru'))
def test_adjust_remote_user(self, fake_get): @interface.implementer(IUserPreferredLanguages) class User(object): def getPreferredLanguages(self): return ['ru'] fake_get.is_callable().returns(User()) adjust(self.request) assert_that(self.request, provides(IPreferredLanguagesRequest))
def test_adjust_pyramid_property(self): self.request._LOCALE_ = 'ru' adjust(self.request) assert_that(self.request, provides(IPreferredLanguagesRequest))
def test_adjust_interface_blank(self): # Initially, nothing adjust(self.request) assert_that(self.request, does_not(provides(IPreferredLanguagesRequest)))