{
    "TestDynamicAttributeMemory": {
        "version": 1,
        "description": [
            "Test node that exercises various memory locations for dynamic attributes.",
            "Add a dynamic input attribute named 'array' with type 'int[]' and a dynamic output attribute named",
            "'array' with type 'int[]' to exercise the node. The inputs array will be copied to the output array",
            "using the requested memory space."
        ],
        "language": "python",
        "categories": "internal:test",
        "exclude": ["tests", "usd", "docs"],
        "icon": {
            "path": "TestNodeIcon.svg"
        },
        "inputs": {
            "onGpu": {
                "type": "bool",
                "description": "Set to True if the dynamic attribute memory should come from the GPU"
            },
            "gpuPtrsOnGpu": {
                "type": "bool",
                "description": "Set to True if the pointers to GPU array memory should also be on the GPU"
            }
        },
        "outputs": {
            "inputMemoryVerified": {
                "type": "bool",
                "description": [
                    "True if the memory locations of the input dynamic attribute matched the locations requested",
                    "by the input attribute values."
                ]
            },
            "outputMemoryVerified": {
                "type": "bool",
                "description": [
                    "True if the memory locations of the output dynamic attribute matched the locations requested",
                    "by the input attribute values."
                ]
            }
        },
        "$tests": "Tests cannot be added here as they require the addition of dynamic attributes to do anything"
    }
}