2018-08-13 16:58:27 +00:00
import Vue from 'vue' ;
import component from '~/jobs/components/job_log.vue' ;
2018-08-20 08:53:43 +00:00
import mountComponent from '../../helpers/vue_mount_component_helper' ;
2018-08-13 16:58:27 +00:00
describe ( 'Job Log' , ( ) => {
const Component = Vue . extend ( component ) ;
let vm ;
const trace = 'Running with gitlab-runner 11.1.0 (081978aa)<br> on docker-auto-scale-com d5ae8d25<br>Using Docker executor with image dev.gitlab.org:5005/gitlab/gitlab-build-images:ruby-2.4.4-golang-1.9-git-2.18-chrome-67.0-node-8.x-yarn-1.2-postgresql-9.6-graphicsmagick-1.3.29 ...<br>' ;
afterEach ( ( ) => {
vm . $destroy ( ) ;
} ) ;
it ( 'renders provided trace' , ( ) => {
vm = mountComponent ( Component , {
trace ,
2018-09-27 11:08:31 +00:00
isComplete : true ,
2018-08-13 16:58:27 +00:00
} ) ;
expect ( vm . $el . querySelector ( 'code' ) . textContent ) . toContain ( 'Running with gitlab-runner 11.1.0 (081978aa)' ) ;
} ) ;
describe ( 'while receiving trace' , ( ) => {
it ( 'renders animation' , ( ) => {
vm = mountComponent ( Component , {
trace ,
2018-09-27 11:08:31 +00:00
isComplete : true ,
2018-08-13 16:58:27 +00:00
} ) ;
expect ( vm . $el . querySelector ( '.js-log-animation' ) ) . not . toBeNull ( ) ;
} ) ;
} ) ;
describe ( 'when build trace has finishes' , ( ) => {
it ( 'does not render animation' , ( ) => {
vm = mountComponent ( Component , {
trace ,
2018-09-27 11:08:31 +00:00
isComplete : false ,
2018-08-13 16:58:27 +00:00
} ) ;
expect ( vm . $el . querySelector ( '.js-log-animation' ) ) . toBeNull ( ) ;
} ) ;
} ) ;
} ) ;