def test_basic_general_page_loader_config(self): config_file = "basic-config.yaml" general_page_loader = GeneralPagesLoader( structure_dir="", structure_filename=config_file, base_path=self.BASE_PATH, ) general_page_loader.load() pages = GeneralPage.objects.all() self.assertEqual(1, len(pages)) page = pages[0] self.assertEqual("General page", page.name) self.assertEqual("general-page", page.slug) self.assertEqual("template.html", page.template) self.assertEqual("page", page.url_name)
def test_general_page_loader_multiple_configuration(self): config_file = "multiple.yaml" general_page_loader = GeneralPagesLoader( structure_dir="", structure_filename=config_file, base_path=self.BASE_PATH, ) general_page_loader.load() pages = GeneralPage.objects.order_by("name") self.assertEqual(3, len(pages)) self.assertQuerysetEqual( pages, [ "<GeneralPage: Page 1>", "<GeneralPage: Page 2>", "<GeneralPage: Page 3>", ], )
def test_general_page_loader_invalid_template_file(self): config_file = "invalid-template-file.yaml" general_page_loader = GeneralPagesLoader( structure_dir="", structure_filename=config_file, base_path=self.BASE_PATH, ) self.assertRaises( InvalidYAMLValueError, general_page_loader.load, )
def test_general_page_loader_missing_template_value(self): config_file = "missing-template.yaml" general_page_loader = GeneralPagesLoader( structure_dir="", structure_filename=config_file, base_path=self.BASE_PATH, ) self.assertRaises( MissingRequiredFieldError, general_page_loader.load, )
def test_general_page_loader_empty_configuration_file(self): config_file = "empty.yaml" general_page_loader = GeneralPagesLoader( structure_dir="", structure_filename=config_file, base_path=self.BASE_PATH, ) self.assertRaises( EmptyYAMLFileError, general_page_loader.load, )
def test_general_page_loader_missing_configuration_file(self): config_file = "missing.yaml" general_page_loader = GeneralPagesLoader( structure_dir="", structure_filename=config_file, base_path=self.BASE_PATH, ) self.assertRaises( CouldNotFindYAMLFileError, general_page_loader.load, )
def create_general_pages_loader(self, **kwargs): """Create general pages loader.""" return GeneralPagesLoader(structure_dir="", **kwargs)