Eric
Eric

Reputation: 309

JHipster sample application fails every test

I have built the JHipster sample app, which builds successfully, but fails every test on the client side (gulp test).

There are great many lines in the trace such as:

PhantomJS 2.1.1 (Mac OS X 0.0.0): Executed 0 of 43 SUCCESS (0 secs / 0 secs)
PhantomJS 2.1.1 (Mac OS X 0.0.0) Controller Tests ActivationController calls Auth.activateAccount with the key from stateParams FAILED
        src/main/webapp/bower_components/angular/angular.js:9:139615
        forEach@src/main/webapp/bower_components/angular/angular.js:9:7090
        loadModules@src/main/webapp/bower_components/angular/angular.js:9:136826
        createInjector@src/main/webapp/bower_components/angular/angular.js:9:132232
        workFn@src/main/webapp/bower_components/angular-mocks/angular-mocks.js:9:157942
        inject@src/main/webapp/bower_components/angular-mocks/angular-mocks.js:9:156451
        mockApiAccountCall@src/test/javascript/spec/helpers/httpBackend.js:9:113
        loaded@http://localhost:9876/context.js:151:17
        src/main/webapp/bower_components/angular/angular.js:9:139615
        forEach@src/main/webapp/bower_components/angular/angular.js:9:7090
        loadModules@src/main/webapp/bower_components/angular/angular.js:9:136826
        createInjector@src/main/webapp/bower_components/angular/angular.js:9:132232
        workFn@src/main/webapp/bower_components/angular-mocks/angular-mocks.js:9:157942
        inject@src/main/webapp/bower_components/angular-mocks/angular-mocks.js:9:156451
        mockI18nCalls@src/test/javascript/spec/helpers/httpBackend.js:9:375
        loaded@http://localhost:9876/context.js:151:17
        src/main/webapp/bower_components/angular/angular.js:9:139615
        forEach@src/main/webapp/bower_components/angular/angular.js:9:7090
        loadModules@src/main/webapp/bower_components/angular/angular.js:9:136826
        createInjector@src/main/webapp/bower_components/angular/angular.js:9:132232
        workFn@src/main/webapp/bower_components/angular-mocks/angular-mocks.js:9:157942
        loaded@http://localhost:9876/context.js:151:17
        TypeError: undefined is not an object (evaluating 'MockAuth.activateAccount') in src/test/javascript/spec/app/account/activate/activate.controller.spec.js (line 9)
        src/test/javascript/spec/app/account/activate/activate.controller.spec.js:9:2014
        loaded@http://localhost:9876/context.js:151:17
^[[1A^[[2KPhantomJS 2.1.1 (Mac OS X 0.0.0) Controller Tests ActivationController calls Auth.activateAccount with the key from stateParams FAILED
        src/main/webapp/bower_components/angular/angular.js:9:139615

The last lines are:

ESC[1AESC[2KPhantomJS 2.1.1 (Mac OS X 0.0.0) Service Tests Auth should call backend on logout then call authServerProvider.logout FAILED
        src/main/webapp/bower_components/angular/angular.js:9:139615
        forEach@src/main/webapp/bower_components/angular/angular.js:9:7090
        loadModules@src/main/webapp/bower_components/angular/angular.js:9:136826
        createInjector@src/main/webapp/bower_components/angular/angular.js:9:132232
        workFn@src/main/webapp/bower_components/angular-mocks/angular-mocks.js:9:157942
        inject@src/main/webapp/bower_components/angular-mocks/angular-mocks.js:9:156451
        mockApiAccountCall@src/test/javascript/spec/helpers/httpBackend.js:9:113
        src/main/webapp/bower_components/angular/angular.js:9:139615
        forEach@src/main/webapp/bower_components/angular/angular.js:9:7090
        loadModules@src/main/webapp/bower_components/angular/angular.js:9:136826
        createInjector@src/main/webapp/bower_components/angular/angular.js:9:132232
        workFn@src/main/webapp/bower_components/angular-mocks/angular-mocks.js:9:157942
        inject@src/main/webapp/bower_components/angular-mocks/angular-mocks.js:9:156451
        mockI18nCalls@src/test/javascript/spec/helpers/httpBackend.js:9:375
        src/main/webapp/bower_components/angular/angular.js:9:139615
        forEach@src/main/webapp/bower_components/angular/angular.js:9:7090
        loadModules@src/main/webapp/bower_components/angular/angular.js:9:136826
        createInjector@src/main/webapp/bower_components/angular/angular.js:9:132232
        workFn@src/main/webapp/bower_components/angular-mocks/angular-mocks.js:9:157942
        inject@src/main/webapp/bower_components/angular-mocks/angular-mocks.js:9:156451
        mockScriptsCalls@src/test/javascript/spec/helpers/httpBackend.js:9:644
        src/main/webapp/bower_components/angular/angular.js:9:139615
        forEach@src/main/webapp/bower_components/angular/angular.js:9:7090
        loadModules@src/main/webapp/bower_components/angular/angular.js:9:136826
        createInjector@src/main/webapp/bower_components/angular/angular.js:9:132232
        workFn@src/main/webapp/bower_components/angular-mocks/angular-mocks.js:9:157942
        Error: <spyOn> : could not find an object to spy upon for logout()
        Usage: spyOn(<object>, <methodName>) in node_modules/jasmine-core/lib/jasmine-core/jasmine.js (line 9)
        src/test/javascript/spec/app/services/auth/auth.services.spec.js:9:2046
        TypeError: undefined is not an object (evaluating '$httpBackend.verifyNoOutstandingExpectation') in src/test/javascript/spec/app/services/auth/auth.services.spec.js (line 9)
        src/test/javascript/spec/app/services/auth/auth.services.spec.js:9:1725
PhantomJS 2.1.1 (Mac OS X 0.0.0): Executed 43 of 43 (43 FAILED) (0 secs / 0.732 secs)
PhantomJS 2.1.1 (Mac OS X 0.0.0): Executed 43 of 43 (43 FAILED) ERROR (1.725 secs / 0.732 secs)
ESC[1AESC[2KPhantomJS 2.1.1 (Mac OS X 0.0.0): Executed 43 of 43 (43 FAILED) ERROR (1.725 secs / 0.732 secs)
[20:05:29] 'test' errored after 7.75 s
[20:05:29] Error: 1
    at formatError (/usr/local/lib/node_modules/gulp/bin/gulp.js:169:10)
    at Gulp.<anonymous> (/usr/local/lib/node_modules/gulp/bin/gulp.js:195:15)
    at emitOne (events.js:96:13)
    at Gulp.emit (events.js:188:7)
    at Gulp.Orchestrator._emitTaskDone (/Users/eric/Documents/devel/test/demo/jhipster-sample-app-master/node_modules/orchestrator/index.js:264:8)
    at /Users/eric/Documents/devel/test/demo/jhipster-sample-app-master/node_modules/orchestrator/index.js:275:23
    at finish (/Users/eric/Documents/devel/test/demo/jhipster-sample-app-master/node_modules/orchestrator/lib/runTask.js:21:8)
    at cb (/Users/eric/Documents/devel/test/demo/jhipster-sample-app-master/node_modules/orchestrator/lib/runTask.js:29:3)
    at removeAllListeners (/Users/eric/Documents/devel/test/demo/jhipster-sample-app-master/node_modules/karma/lib/server.js:379:7)
    at Server.<anonymous> (/Users/eric/Documents/devel/test/demo/jhipster-sample-app-master/node_modules/karma/lib/server.js:390:9)
    at Server.g (events.js:291:16)
    at emitNone (events.js:91:20)
    at Server.emit (events.js:185:7)
    at emitCloseNT (net.js:1555:8)
    at _combinedTickCallback (internal/process/next_tick.js:71:11)
    at process._tickCallback (internal/process/next_tick.js:98:9)

Any idea what the problem might be? I'm using Node v6.9.5. npm is 3.10.10 and gulp is 3.9.1

Thanks for your kind help!

Upvotes: 0

Views: 369

Answers (1)

Jon Ruddell
Jon Ruddell

Reputation: 6362

There's something wrong with the bower_components. These errors don't show up when you generate an app because bower_components are installed during generation.

In order to run tests successfully from the sample-app:

git clone [email protected]:jhipster/jhipster-sample-app.git
cd jhipster-sample-app
npm install

rm -r src/main/webapp/bower_components
bower install

gulp install
gulp test

Upvotes: 2

Related Questions