def test_check_requirements_valid(self):
        dpkg_env = DpkgEnvironment()

        # setting attribute on class-level
        setattr(DpkgEnvironment, 'required_packages_for_package_file_method', ['tar'])
        setattr(DpkgEnvironment, 'required_packages_for_sign_method', ['tar'])

        dpkg_env.check_requirements(package_file_execution=True)
    def test_check_requirements_valid(self):
        dpkg_env = DpkgEnvironment()

        # setting attribute on class-level
        setattr(DpkgEnvironment, 'required_packages_for_package_file_method',
                ['tar'])
        setattr(DpkgEnvironment, 'required_packages_for_sign_method', ['tar'])

        dpkg_env.check_requirements(package_file_execution=True)
    def test_check_requirements_asserts(self):
        dpkg_env = DpkgEnvironment()

        # setting attribute on class-level
        setattr(DpkgEnvironment, 'required_packages_for_package_file_method', None)
        setattr(DpkgEnvironment, 'required_packages_for_sign_method', None)

        with self.assertRaises(AssertionError):
            dpkg_env.check_requirements(package_file_execution=True)

        with self.assertRaises(AssertionError):
            dpkg_env.check_requirements(sign_tag_execution=True)
    def test_check_requirements_asserts(self):
        dpkg_env = DpkgEnvironment()

        # setting attribute on class-level
        setattr(DpkgEnvironment, 'required_packages_for_package_file_method',
                None)
        setattr(DpkgEnvironment, 'required_packages_for_sign_method', None)

        with self.assertRaises(AssertionError):
            dpkg_env.check_requirements(package_file_execution=True)

        with self.assertRaises(AssertionError):
            dpkg_env.check_requirements(sign_tag_execution=True)
    def test_check_requirements_not_valid(self):
        dpkg_env = DpkgEnvironment()

        self.package_installed_patch.stop()

        # setting attribute on class-level
        setattr(DpkgEnvironment, 'required_packages_for_package_file_method', ['f'])
        setattr(DpkgEnvironment, 'required_packages_for_sign_method', ['f'])

        with self.assertRaises(RequirementsNotInstalledError):
            dpkg_env.check_requirements(package_file_execution=True)

        with self.assertRaises(RequirementsNotInstalledError):
            dpkg_env.check_requirements(sign_tag_execution=True)
    def test_check_requirements_not_valid(self):
        dpkg_env = DpkgEnvironment()

        self.package_installed_patch.stop()

        # setting attribute on class-level
        setattr(DpkgEnvironment, 'required_packages_for_package_file_method',
                ['f'])
        setattr(DpkgEnvironment, 'required_packages_for_sign_method', ['f'])

        with self.assertRaises(RequirementsNotInstalledError):
            dpkg_env.check_requirements(package_file_execution=True)

        with self.assertRaises(RequirementsNotInstalledError):
            dpkg_env.check_requirements(sign_tag_execution=True)