mirror of
				https://github.com/KevinMidboe/vue-chartjs.git
				synced 2025-10-29 18:00:20 +00:00 
			
		
		
		
	separate HorizontalBar component added, to remove optional 'type' parameter at Bar, which was ignored inside reactive mixins
This commit is contained in:
		
							
								
								
									
										64
									
								
								test/unit/specs/HorizontalBar.spec.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								test/unit/specs/HorizontalBar.spec.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,64 @@
 | 
			
		||||
import Vue from 'vue'
 | 
			
		||||
import HorizontalBarChart from 'src/examples/HorizontalBarExample'
 | 
			
		||||
 | 
			
		||||
describe('HorizontalBarChart', () => {
 | 
			
		||||
  let el
 | 
			
		||||
 | 
			
		||||
  beforeEach(() => {
 | 
			
		||||
    el = document.createElement('div')
 | 
			
		||||
  })
 | 
			
		||||
 | 
			
		||||
  it('should render a canvas', () => {
 | 
			
		||||
    const vm = new Vue({
 | 
			
		||||
      render: function (createElement) {
 | 
			
		||||
        return createElement(
 | 
			
		||||
          HorizontalBarChart
 | 
			
		||||
        )
 | 
			
		||||
      },
 | 
			
		||||
      components: { HorizontalBarChart }
 | 
			
		||||
    }).$mount(el)
 | 
			
		||||
 | 
			
		||||
    expect(vm.$el.querySelector('#horizontalbar-chart')).not.to.be.an('undefined')
 | 
			
		||||
    expect(vm.$el.querySelector('canvas')).not.to.be.an('undefined')
 | 
			
		||||
    expect(vm.$el.querySelector('canvas')).not.to.be.an('null')
 | 
			
		||||
    expect(vm.$el.querySelector('canvas')).to.exist
 | 
			
		||||
  })
 | 
			
		||||
 | 
			
		||||
  it('should change id based on prop', () => {
 | 
			
		||||
    const vm = new Vue({
 | 
			
		||||
      render: function (createElement) {
 | 
			
		||||
        return createElement(
 | 
			
		||||
          HorizontalBarChart, {
 | 
			
		||||
            props: {
 | 
			
		||||
              chartId: 'horizontalbarchartprop'
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
        )
 | 
			
		||||
      },
 | 
			
		||||
      components: { HorizontalBarChart }
 | 
			
		||||
    }).$mount(el)
 | 
			
		||||
 | 
			
		||||
    expect(vm.$el.querySelector('#horizontalbarchartprop')).not.to.be.an('undefined')
 | 
			
		||||
  })
 | 
			
		||||
 | 
			
		||||
  it('should destroy chart instance', (done) => {
 | 
			
		||||
    const vm = new Vue({
 | 
			
		||||
      render: function (createElement) {
 | 
			
		||||
        return createElement(
 | 
			
		||||
          HorizontalBarChart
 | 
			
		||||
        )
 | 
			
		||||
      },
 | 
			
		||||
      components: { HorizontalBarChart }
 | 
			
		||||
    }).$mount(el)
 | 
			
		||||
 | 
			
		||||
    expect(vm.$children[0]._chart.chart.ctx).not.to.be.null
 | 
			
		||||
 | 
			
		||||
    vm.$destroy()
 | 
			
		||||
 | 
			
		||||
    vm.$nextTick(() => {
 | 
			
		||||
      vm.$forceUpdate()
 | 
			
		||||
      expect(vm.$children[0]._chart.chart.ctx).to.be.null
 | 
			
		||||
      done()
 | 
			
		||||
    })
 | 
			
		||||
  })
 | 
			
		||||
})
 | 
			
		||||
		Reference in New Issue
	
	Block a user