Exemplo n.º 1
0
 def setUp(self) -> None:
     self.secret = os.urandom(32)
     self.dir = TemporaryDirectory()
     self.home = Path(self.dir.name)
     self.facade = Facade(self.home, self.secret,
         SetupChurchPortfolio().perform(ChurchData(**Generate.church_data()[0])),
         role=Const.A_ROLE_PRIMARY, server=True
     )
Exemplo n.º 2
0
    async def create(cls, home_dir: Path, secret: bytes, data: BaseData) -> TypeFacadeMixin:
        """Implement facade generation logic here."""
        if isinstance(data, PersonData):
            portfolio = SetupPersonPortfolio.perform(data, server=cls.STUB_SERVER)
        elif isinstance(data, MinistryData):
            portfolio = SetupMinistryPortfolio.perform(data, server=cls.STUB_SERVER)
        elif isinstance(data, ChurchData):
            portfolio = SetupChurchPortfolio.perform(data, server=cls.STUB_SERVER)
        else:
            raise TypeError()

        return Facade(home_dir, secret, Const.A_ROLE_PRIMARY, cls.STUB_SERVER, portfolio=portfolio)
Exemplo n.º 3
0
    async def test_facade(self):
        facade = Facade(self.home,
                        self.secret,
                        SetupChurchPortfolio().perform(
                            ChurchData(**Generate.church_data()[0])),
                        role=Const.A_ROLE_PRIMARY,
                        server=True)
        self.services_server(facade)
        self.assertIsInstance(facade, ChurchServerFacade)
        self.assertIsInstance(facade.data.portfolio.entity, Church)
        self.assertIsInstance(facade.data.portfolio.node, Node)
        self.extension_type(facade)
        facade.close()

        facade = Facade(self.home, self.secret)
        self.assertIsInstance(facade.data.portfolio.entity, Church)
        self.assertIsInstance(facade.data.portfolio.node, Node)
        self.extension_type(facade)
        facade.close()
Exemplo n.º 4
0
 async def create_server(cls) -> "ApplicationContext":
     """Create a stub server."""
     return await cls._setup(
         StubServer, SetupChurchPortfolio().perform(
             ChurchData(**Generate.church_data()[0]), server=StubServer.STUB_SERVER))
Exemplo n.º 5
0
 def create_server(cls) -> "FacadeContext":
     """Create a stub server."""
     return cls(
         SetupChurchPortfolio().perform(
             ChurchData(**Generate.church_data()[0]), server=True), True)
Exemplo n.º 6
0
 def test_perform(self):
     data = ChurchData(**Generate.church_data()[0])
     with evaluate("Church:Setup") as report:
         portfolio = SetupChurchPortfolio().perform(data, server=True)
     self.assertTrue(report)