def test_element_path_get_preceding_path(
        sample_target_def: target.TargetDefinition):
    """Test get parent path method."""
    assert ElementPath('target-definition.metadata.title').get_preceding_path(
    ) == ElementPath('target-definition.metadata')
    assert ElementPath(
        'target-definition.metadata').get_preceding_path() is None
    assert ElementPath('target-definition.metadata.parties.*'
                       ).get_preceding_path() == ElementPath(
                           'target-definition.metadata.parties')
    assert ElementPath('target-definition.metadata.*').get_preceding_path(
    ) == ElementPath('target-definition.metadata')

    # element_path with parent path
    parent_path = ElementPath('target-definition.metadata')
    element_path = ElementPath('metadata.parties.*', parent_path)
    preceding_path = ElementPath('target-definition.metadata.parties')
    assert element_path.get_preceding_path() == preceding_path
예제 #2
0
def test_element_path_get_preceding_path(
        sample_nist_component_def: component.ComponentDefinition):
    """Test get parent path method."""
    assert ElementPath('component-definition.metadata.title'
                       ).get_preceding_path() == ElementPath(
                           'component-definition.metadata')
    assert ElementPath('component-definition.metadata').get_preceding_path(
    ) == ElementPath('component-definition')
    assert ElementPath('component-definition.metadata.parties.*'
                       ).get_preceding_path() == ElementPath(
                           'component-definition.metadata.parties')
    assert ElementPath('component-definition.metadata.*').get_preceding_path(
    ) == ElementPath('component-definition.metadata')

    # element_path with parent path
    parent_path = ElementPath('component-definition.metadata')
    element_path = ElementPath('metadata.parties.*', parent_path)
    preceding_path = ElementPath('component-definition.metadata.parties')
    assert element_path.get_preceding_path() == preceding_path