Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64
User : corals ( 1002)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/corals/vreg/node_modules/bootstrap-vue/src/components/table/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //home/corals/vreg/node_modules/bootstrap-vue/src/components/table/table-pagination.spec.js
import { mount } from '@vue/test-utils'
import { BTable } from './table'

const testItems = [
  { a: 1, b: 2, c: 3 },
  { a: 4, b: 5, c: 6 },
  { a: 7, b: 8, c: 9 },
  { a: 10, b: 11, c: 12 },
  { a: 13, b: 14, c: 15 }
]

describe('table > pagination', () => {
  it('default should not be paginated', async () => {
    const wrapper = mount(BTable, {
      propsData: {
        items: testItems
      }
    })
    expect(wrapper.findAll('tbody > tr').length).toBe(5)

    wrapper.destroy()
  })

  it('should have 3 rows when per-page=3', async () => {
    const wrapper = mount(BTable, {
      propsData: {
        items: testItems,
        perPage: 3,
        currentPage: 1
      }
    })
    expect(wrapper.findAll('tbody > tr').length).toBe(3)
    const $trs = wrapper.findAll('tbody > tr')
    expect(
      $trs
        .at(0)
        .find('td')
        .text()
    ).toBe('1')
    expect(
      $trs
        .at(1)
        .find('td')
        .text()
    ).toBe('4')
    expect(
      $trs
        .at(2)
        .find('td')
        .text()
    ).toBe('7')

    wrapper.destroy()
  })

  it('changing pages should update rows', async () => {
    const wrapper = mount(BTable, {
      propsData: {
        items: testItems,
        perPage: 3,
        currentPage: 1
      }
    })
    expect(wrapper.findAll('tbody > tr').length).toBe(3)
    let $trs = wrapper.findAll('tbody > tr')
    expect(
      $trs
        .at(0)
        .find('td')
        .text()
    ).toBe('1')
    expect(
      $trs
        .at(1)
        .find('td')
        .text()
    ).toBe('4')
    expect(
      $trs
        .at(2)
        .find('td')
        .text()
    ).toBe('7')

    await wrapper.setProps({ currentPage: 2 })

    expect(wrapper.findAll('tbody > tr').length).toBe(2)
    $trs = wrapper.findAll('tbody > tr')
    expect(
      $trs
        .at(0)
        .find('td')
        .text()
    ).toBe('10')
    expect(
      $trs
        .at(1)
        .find('td')
        .text()
    ).toBe('13')

    await wrapper.setProps({ currentPage: 3 })

    expect(wrapper.findAll('tbody > tr').length).toBe(0)

    wrapper.destroy()
  })

  it('setting current-page to more than pages shows empty row when show-empty=true', async () => {
    const wrapper = mount(BTable, {
      propsData: {
        items: testItems,
        perPage: 3,
        currentPage: 1,
        showEmpty: true
      }
    })
    expect(wrapper.findAll('tbody > tr').length).toBe(3)

    await wrapper.setProps({ currentPage: 10 })

    expect(wrapper.findAll('tbody > tr').length).toBe(1)
    const $tr = wrapper.find('tbody > tr')
    expect($tr.text()).toBe(wrapper.vm.emptyText)
    expect($tr.classes()).toContain('b-table-empty-row')
    expect($tr.attributes('role')).toBe('row')
    expect(wrapper.find('tbody > tr > td').attributes('role')).toBe('cell')
    expect(wrapper.find('tbody > tr > td > div').attributes('role')).toBe('alert')
    expect(wrapper.find('tbody > tr > td > div').attributes('aria-live')).toBe('polite')

    wrapper.destroy()
  })
})

Spamworldpro Mini