私は AngularJS を使用する Rails 3.2 アプリに取り組んでいます。Angular で必要なことを実行することはできますが、自分が行っていることをテストする方法を理解するのに非常に苦労しています。私は Guard-jasmine を使用して、PhantomJS を使用して Jasmine 仕様を実行しています。
(関連する)htmlは次のとおりです。
<html id="ng-app" ng-app="app">
<div id="directive-element" class="directive-element">
</div>
</html>
javascript (coffeescript) は次のようになります。
window.Project =
App: angular.module('app', [])
Directive: {}
Project.Directive.DirectiveElement =
->
restrict: 'C'
link: (scope, element, attrs) ->
element.html 'hello world'
Project.App.directive 'directiveElement', Project.Directive.DirectiveElement
上記のコードは、意図したことを正確に実行します。テストが問題です。私はそれらをまったく機能させることができません。これは私が試したことの1つです。これを投稿することは、ほとんどの場合、どこかで会話を開始するためだけです.
describe 'App.Directive.DirectiveElement', ->
it 'updates directive-element', ->
inject ($compile, $rootScope) ->
element = $compile('<div id="app" ng-app="app"><div id="directive'element" class="directive-element"></div></div>')
expect(element.text()).toEqual('hello world')
余談ですが、私は AngularJS を初めて使用するので、名前空間やモジュールなどに関して、私が守っていないベスト プラクティスがあれば、アドバイスをいただければ幸いです。
これが機能するためのテストを取得するにはどうすればよいですか?