def METHOD_NAME(with_kafka=False, kafka_datasets=None, is_multifile=False, context_line=30, line_start=10,
                     line_finish=20, **tag_meta) -> Tag:
    meta = {
        "name": "MOCK_NAME",
        "description": "MOCK_DESCRIPTION",
        "complexity": "ADVANCED",
        "multifile": False,
        "categories": ["Testing", "Schemas"],
        "pipeline_options": "--MOCK_OPTION MOCK_OPTION_VALUE",
    }
    if with_kafka:
        if kafka_datasets is None:
            kafka_datasets = {"dataset_id_1": {"format": "avro", "location": "local"}}
        emulators = [
            {
                "type": "kafka",
                "topic": {"id": "topic1", "source_dataset": k},
            } for k in kafka_datasets.keys()]
        meta.update(
            emulators=emulators,
            datasets=kafka_datasets
        )
    if is_multifile:
        meta.update(
            multifile=True,
            files=[
                {"name": "utils.java"},
                {"name": "schema.java"}
            ]
        )
    for k, v in tag_meta.items():
        if v is None:
            meta.pop(k, None)
        else:
            meta[k] = v
    return Tag(
        filepath="../../examples/MOCK_EXAMPLE/main.java",
        line_start=line_start,
        line_finish=line_finish,
        context_line=context_line,
        **meta,
    )