Jasmine:测试文件夹中是否存在图像

时间:2013-12-10 10:19:46

标签: javascript unit-testing angularjs jasmine karma-runner

我有一个使用Jasmine测试的angularJS项目。 我需要编写一个单元测试,它将检查图像是否存在于文件夹中并且未被删除。在我的情况下,这只是一个默认的个人资料图片,例如。

我们的想法是,我们下载图片并在加载时发送成功或在错误时不成功。如果我在简单的JS中尝试它 - 一切都像魅力一样。但不知何故,Jasmine总是失败。怎么了?有没有更好的方法来测试图像是否存在并正确加载?

抱歉Coffeescript而不是JS。但它仍然应该很容易遵循:

describe "Default services: ", ->

    beforeEach angular.mock.module("default.services")

    describe "App Image: ", ->

        async = new AsyncSpec(this)
        success = false

        async.beforeEach (done) ->
            inject (defaultStuff) ->
                img = new Image()

                img.onload = ->
                    success = true
                    done()
                img.onerror = ->
                    success = false
                    done()

                img.src = defaultStuff.appImage

        it "should have default app image", inject (defaultStuff) ->
          expect(defaultStuff.appImage).not.toBe(null)

        async.it "should download default app image (e. g. check that it exists)", (done) ->
            expect(success).toBe(true)

0 个答案:

没有答案