Exemple #1
0
    def setUp(self):
        """
        Set up stores and an offering.
        """
        store = Store(dbdir=self.mktemp())
        appStore1 = SubStore.createNew(store, ("app", "test1.axiom"))
        appStore2 = SubStore.createNew(store, ("app", "test2.axiom"))
        self.firstOffering = Offering(u'first offering', None, None, None,
                                      None, None, [])
        firstInstalledOffering = InstalledOffering(
            store=store,
            application=appStore1,
            offeringName=self.firstOffering.name)
        ss1 = appStore1.open()
        self.installApp(ss1)
        # (bypass Item.__setattr__)
        object.__setattr__(firstInstalledOffering, 'getOffering',
                           lambda: self.firstOffering)

        secondOffering = Offering(u'second offering', None, None, None, None,
                                  None, [])
        secondInstalledOffering = InstalledOffering(
            store=store,
            application=appStore2,
            offeringName=secondOffering.name)
        # (bypass Item.__setattr__)
        object.__setattr__(secondInstalledOffering, 'getOffering',
                           lambda: secondOffering)

        self.fragment = _OfferingsFragment(FrontPage(store=store))
Exemple #2
0
 def test_offeringsFragmentLoader(self):
     """
     L{_OfferingsFragment.docFactory} is the I{front-page} template loaded
     from the store's ITemplateNameResolver.
     """
     self.fakeResolver.correctName = 'front-page'
     frontPage = FrontPage(store=self.store)
     offeringsFragment = _OfferingsFragment(frontPage)
     self.assertIdentical(offeringsFragment.docFactory,
                          self.correctDocumentFactory)
Exemple #3
0
 def test_offeringChild(self):
     """
     Installing an offering makes its shared items accessible under a child
     of L{_PublicFrontPage} with the offering's name.
     """
     frontPage = FrontPage(store=self.siteStore)
     resource = _PublicFrontPage(frontPage, self.webViewer)
     request = FakeRequest()
     result, segments = resource.locateChild(request, ('test_offering', ))
     self.assertIdentical(result.userStore, self.substore)
     self.assertTrue(IWebViewer.providedBy(result.webViewer))
Exemple #4
0
 def test_rootChild(self):
     """
     When no default offering has been selected,
     L{PublicFrontPage.locateChild} returns an L{_OfferingsFragment} wrapped by
     the L{IWebViewer}.
     """
     frontPage = FrontPage(store=self.siteStore)
     resource = _PublicFrontPage(frontPage, self.webViewer)
     request = FakeRequest()
     ctx = context.WebContext()
     ctx.remember(request, inevow.IRequest)
     result, segments = resource.locateChild(ctx, ('', ))
     self.assertIsInstance(result, PublicPage)
     self.assertIsInstance(result.fragment, _OfferingsFragment)
Exemple #5
0
    def test_nonExistentChild(self):
        """
        L{_PublicFrontPage.locateChild} returns L{rend.NotFound} for a child
        segment which does not exist.
        """
        store = Store()
        frontPage = FrontPage(store=store)
        resource = _PublicFrontPage(frontPage, IWebViewer(self.siteStore))

        request = FakeRequest()
        ctx = context.WebContext()
        ctx.remember(request, inevow.IRequest)

        result = resource.locateChild(ctx, ('foo', ))
        self.assertIdentical(result, rend.NotFound)
Exemple #6
0
def createDatabase(s):
    """
    Create a L{FrontPage} item.
    """
    FrontPage(store=s, publicViews=17, privateViews=42)