$sceをDIしてるやつ、例えばこちらのようなののテストを書く場合。
newlines_spec.coffee
"use strict"
describe "Filter: newlines", ->
beforeEach module "myApp"
newlines = {}
beforeEach inject ($filter) ->
newlines = $filter "newlines"
it "\nを<br />に変換して返すこと", ->
text = "angularjs\nnewlines"
expect(newlines(text)).toBe ("angularjs<br />newlines")
単純にこんな感じに書くと、下記のようなメッセージで失敗する
Expected { $$unwrapTrustedValue : Function } to be 'angularjs<br />newlines'.
ので、$$unwrapTrustedValueでexpectしてみた。
newlines_spec.coffee
it "\nを<br />に変換して返すこと", ->
text = "angularjs\nnewlines"
expect(newlines(text).$$unwrapTrustedValue()).toBe ("angularjs<br />newlines")
テスト通ったけど、$sceProviderをテストの時は無効化するとか、他のやり方のほうがいいんだろうか。
sce_provider_desable.coffee
beforeEach module 'myApp',($sceProvider)->
$sceProvider.enabled(false)
return