Ejemplo n.º 1
0
    public void Editor_CanGenerateCodeWrapperForInputAsset_WhenAssetNameContainsSpacesAndSymbols()
    {
        var set1 = new InputActionMap("set1");

        set1.AddAction(name: "action ^&", binding: "/gamepad/leftStick");
        set1.AddAction(name: "1thing", binding: "/gamepad/leftStick");
        var asset = ScriptableObject.CreateInstance <InputActionAsset>();

        asset.AddActionMap(set1);
        asset.name = "New Controls (4)";

        var code = InputActionCodeGenerator.GenerateWrapperCode(asset,
                                                                new InputActionCodeGenerator.Options {
            sourceAssetPath = "test"
        });

        Assert.That(code, Contains.Substring("class NewControls_4_"));
        Assert.That(code, Contains.Substring("public UnityEngine.Experimental.Input.InputAction @action__"));
        Assert.That(code, Contains.Substring("public UnityEngine.Experimental.Input.InputAction @_1thing"));
    }