Skip to content
Snippets Groups Projects
DataloadSection.spec.tsx 1.48 KiB
Newer Older
  • Learn to ignore specific revisions
  • import { DataloadSectionType, FluidType } from 'enums'
    
    import { mount } from 'enzyme'
    import toJson from 'enzyme-to-json'
    import { Dataload } from 'models'
    
    Bastien DUMONT's avatar
    Bastien DUMONT committed
    import React from 'react'
    
    import { baseDataLoad } from 'tests/__mocks__/chartData.mock'
    
    import DataloadSection from './DataloadSection'
    
    jest.mock(
      'components/ConsumptionVisualizer/DataloadSectionValue',
      () => 'mock-dataloadsectionvalue'
    )
    jest.mock(
      'components/ConsumptionVisualizer/DataloadSectionDetail',
      () => 'mock-dataloadsectiondetail'
    )
    
    const mockToggleEstimationModal = jest.fn()
    
    describe('DataloadSection component', () => {
      const mockDataload: Dataload = baseDataLoad
    
      it('should render correctly', () => {
        const wrapper = mount(
          <DataloadSection
            dataload={mockDataload}
            fluidType={FluidType.ELECTRICITY}
            dataloadSectionType={DataloadSectionType.NO_COMPARE}
            toggleEstimationModal={mockToggleEstimationModal}
          />
        )
        expect(toJson(wrapper)).toMatchSnapshot()
      })
    
      it('should render no_data when dataload value is -1 and section is left', () => {
        const _mockDatalaod = { ...mockDataload, value: -1 }
        const wrapper = mount(
          <DataloadSection
            dataload={_mockDatalaod}
            fluidType={FluidType.ELECTRICITY}
            dataloadSectionType={DataloadSectionType.LEFT}
            toggleEstimationModal={mockToggleEstimationModal}
          />
        )
        expect(wrapper.find('.dataloadvisualizer-novalue').text()).toBe(
          'consumption_visualizer.no_data'
        )
      })
    })