Drupal 7.でカスタムajax機能のテストケースを記述しようとしています。_.js
_ファイルでクリック時にイベントを発生させていますが、テストケースが失敗します。
私の_.tpl.php
_テンプレートファイルには、次のコードがあります。
<a href="javasctipt:void(0)" id="myFirstEvent">Click Here</a>
Jsファイルでは、次のようにイベントを取得しています。
_$('#myFirstEvent').live('click', function())
$.ajax({
cache: false,
url: Drupal.settings.basePath + '?q=mymodule/add',
data: {page: page, sort: sort, order: order},
dataType: 'text',
error: function(request, status, error) {
alert(status);
},
success: function(data, status, request) {
/**Function definition goes here**/
}
_
私のcustom.testファイルには、次のものが含まれています。
_$edit = array();
$this>drupalGet("myform/add");
$this->drupalPost('myform/add', $edit, 'myFirstEvent');
$this->assertResponse(200, 'Success');
_
しかし、テストケースを実行した後、成功画面(緑色)が表示されません。
Simplejavaは単に無視するため、カスタムテストをsimpletestでテストすることはできません。 Simpletestは、#ajaxプロパティを使用してフォームに追加した場合にのみ、(xpathを介して)ajax動作をシミュレートできます。 http://api.drupal.org/api/drupal/developer!topics!forms_api_reference.html/7#ajax
カスタムjsをテストするには、Seleniumを確認してください。