3

contenteditable マークアップを使用してセルを編集できるグリッドがあります。

グリッドは正常に動作し、angularjs モデルに正しくバインドされますが、angularjs e2e テスト フレームワークを使用してテストの自動化を機能させることができません。

angular シナリオ js を参照した後、e2e テストを実行するための dsl メソッドを見つけ、contenteditable が入力メソッドで機能しないことに気付きました。

そこで、contenteditable 用の新しい DSL メソッドを作成しました。

angular.scenario.dsl('contenteditable', function () {
    var chain = {};

    chain.enter = function (value) {
        return this.addFutureAction("contenteditable '" + this.name + "' enter '" + value + "'", function             ($window, $document, done) {
            var contenteditable = $document.elements(this.name);
            debugger;
            contenteditable.text(value);
            contenteditable.trigger('change');
            done();
        });
    };

    return function (name) {
        this.name = name;
        return chain;
    };
});

しばらくすると、その半分を機能させることができましたが、Angular ディレクティブ コードが機能するために重要な「変更」イベントはまだトリガーされません (トリガー呼び出しがあっても)。

それを解決する最善の方法は何ですか?アイデア?

4

0 に答える 0