def METHOD_NAME(root_logger):
    """ Test invalid test """
    # Missing name
    with pytest.raises(tmt.utils.GeneralError):
        tmt.Test.from_dict(logger=root_logger, mapping={}, name='')
    # Invalid name
    with pytest.raises(SpecificationError):
        tmt.Test.from_dict(logger=root_logger, mapping={}, name='bad')
    # Invalid attributes
    for key in ['component', 'require', 'tag']:
        with pytest.raises(SpecificationError) as exc_context:
            tmt.Test.from_dict(
                logger=root_logger,
                mapping={
                    key: 1},
                name='/smoke',
                raise_on_validation_error=True)
        exc = exc_context.value
        assert isinstance(exc, SpecificationError)
        assert exc.message == 'fmf node /smoke failed validation'
        validation_error, error_message = exc.validation_errors[0]
        assert isinstance(validation_error, jsonschema.ValidationError)
        assert error_message \
            == f'/smoke:{key} - 1 is not valid under any of the given schemas'
    with pytest.raises(SpecificationError):
        tmt.Test.from_dict(logger=root_logger, mapping={'environment': 'string'},
                           name='/smoke', raise_on_validation_error=True)
    # Listify attributes
    assert tmt.Test.from_dict(
        logger=root_logger,
        mapping={
            'test': 'test',
            'tag': 'a'},
        name='/smoke').tag == ['a']
    assert tmt.Test.from_dict(logger=root_logger, mapping={'test': 'test', 'tag': [
                              'a', 'b']}, name='/smoke').tag == ['a', 'b']