def METHOD_NAME(dd_agent_check):
    config = create_e2e_core_test_config("juniper")
    aggregator = common.dd_agent_check_wrapper(dd_agent_check, config, rate=True)
    ip_address = get_device_ip_from_config(config)
    common_tags = [
        "snmp_profile:juniper",
        "snmp_host:jnxM40",
        "device_namespace:default",
        "snmp_device:" + ip_address,
    ]
    # --- TEST METRICS ---
    assert_common_metrics(aggregator, common_tags)
    assert_extend_generic_if(aggregator, common_tags)
    assert_extend_generic_ip(aggregator, common_tags)
    assert_extend_generic_tcp(aggregator, common_tags)
    assert_extend_generic_udp(aggregator, common_tags)
    assert_extend_generic_ospf(aggregator, common_tags)
    assert_extend_generic_bgp4(aggregator, common_tags)
    assert_extend_generic_host_resources(aggregator, common_tags)
    aggregator.assert_all_metrics_covered()
    aggregator.assert_metrics_using_metadata(get_metadata_metrics())
    # --- TEST METADATA ---
    device = {
        "description": "Juniper Networks, Inc.",
        "id": "default:" + ip_address,
        "id_tags": ["device_namespace:default", "snmp_device:" + ip_address],
        "ip_address": "" + ip_address,
        "name": "jnxM40",
        'os_name': 'JUNOS',
        "profile": "juniper",
        "status": 1,
        "sys_object_id": "1.3.6.1.4.1.2636.1.1.1.2.1",
        "tags": [
            "device_namespace:default",
            "snmp_device:" + ip_address,
            "snmp_host:jnxM40",
            "snmp_profile:juniper",
        ],
        "vendor": "juniper-networks",
    }
    assert_device_metadata(aggregator, device)