def test_resolved_value(self): # ARRANGE # path = PathDdvTestImpl(RelOptionType.REL_TMP, path_ddvs.empty_path_part()) sdv = sut.PathConstantSdv(path) # ACT # actual = sdv.resolve(empty_symbol_table()) # ASSERT # assertion = equals_path(path) assertion.apply_without_message(self, actual)
def runTest(self): # ARRANGE # put = test_case_with_failure_exception_set_to_test_exception() expected = PathDdvTestImpl(RelOptionType.REL_ACT, path_ddvs.constant_path_part('name')) actual = PathDdvTestImpl(RelOptionType.REL_ACT, path_ddvs.empty_path_part()) # ACT & ASSERT # with put.assertRaises(TestException): sut.equals_path(expected).apply_with_message( put, actual, 'NotEquals')
def fixed_path_parts(str_or_list) -> PathPartDdv: if isinstance(str_or_list, str): return path_ddvs.constant_path_part(str_or_list) elif isinstance(str_or_list, list): parts = str_or_list if not parts: return path_ddvs.empty_path_part() return path_ddvs.constant_path_part('/'.join(parts)) else: raise TypeError('path parts is neither a str nor a list: ', str(type(str_or_list)))
def __init__(self, relativity: RelOptionType, expected_accepted_relativities: PathRelativityVariants, symbol_name: str): self.expected_accepted_relativities = expected_accepted_relativities self.relativity = relativity self.symbol_name = symbol_name self.symbol_context = PathDdvSymbolContext( symbol_name, path_ddvs.of_rel_option(relativity, path_ddvs.empty_path_part()), accepted_relativities=expected_accepted_relativities, default_reference_variant=PathReferenceVariant.PATH, )
def of_no_suffix( name: str, relativity: RelOptionType, accepted_relativities: PathRelativityVariants = ALL_REL_OPTION_VARIANTS, definition_source: Optional[ SourceLocationInfo] = ARBITRARY_LINE_SEQUENCE_FOR_DEFINITION, default_reference_variant: PathReferenceVariant = PathReferenceVariant. PATH_OR_STRING, ) -> 'PathDdvSymbolContext': return PathDdvSymbolContext( name, path_ddvs.of_rel_option(relativity, path_ddvs.empty_path_part()), accepted_relativities, definition_source, default_reference_variant, )
def _empty_or_fixed_path_part(file_name: str) -> PathPartDdv: if file_name and not file_name.isspace(): return PathPartDdvAsFixedPath(file_name) else: return empty_path_part()
def path_sdv_for_root_dir(self) -> PathSdv: return self._path_sdv_for(empty_path_part())
def of_rel_option( rel_option: relativity_root.RelOptionType, path_suffix: PathPartDdv = path_ddvs.empty_path_part() ) -> PathSdv: return constant(path_ddvs.of_rel_option(rel_option, path_suffix))
def suite() -> unittest.TestSuite: return unittest.TestSuite([ TestEqualsCommonToBothAssertionMethods(), unittest.makeSuite(Test1NotEquals), unittest.makeSuite(Test2NotEquals), ]) _EXISTS_PRE_SDS_RELATIVITY = RelOptionType.REL_HDS_CASE _NOT_EXISTS_PRE_SDS_RELATIVITY = RelOptionType.REL_ACT _PATH_SUFFIX_VARIANTS = [ path_ddvs.constant_path_part('file-name'), path_ddvs.empty_path_part(), ] _RELATIVITY_VARIANTS = [ _EXISTS_PRE_SDS_RELATIVITY, _NOT_EXISTS_PRE_SDS_RELATIVITY, ] _SYMBOL_REFERENCES = [ [], [SymbolReference('symbol_name', ReferenceRestrictionsOnDirectAndIndirect(ArbitraryValueWStrRenderingRestriction.of_any()))] ] class TestEqualsCommonToBothAssertionMethods(unittest.TestCase):
def _result_from_no_arguments(self, ) -> Either[SymbolName, PathSdv]: return Either.of_right( path_sdvs.constant( path_ddvs.of_rel_option( self.conf.rel_opt_conf.options.default_option, path_ddvs.empty_path_part())))
def resolve(self, symbols: SymbolTable) -> PathPartDdv: return path_ddvs.empty_path_part()
def _path_of(relativity=RelOptionType.REL_ACT) -> PathDdv: return path_ddvs.of_rel_option(relativity, path_ddvs.empty_path_part())