infiniteScroll.spec.js 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. import { createVue, wait, destroyVM } from '../util';
  2. describe('InfiniteScroll', () => {
  3. let vm;
  4. afterEach(() => {
  5. destroyVM(vm);
  6. });
  7. it('create', async() => {
  8. vm = createVue({
  9. template: `
  10. <ul ref="scrollTarget" v-infinite-scroll="load" style="height: 300px;overflow: auto;">
  11. <li v-for="i in count" style="display: flex;height: 50px;">{{ i }}</li>
  12. </ul>
  13. `,
  14. data() {
  15. return {
  16. count: 0
  17. };
  18. },
  19. methods: {
  20. load() {
  21. this.count += 2;
  22. }
  23. }
  24. }, true);
  25. vm.$refs.scrollTarget.scrollTop = 2000;
  26. await wait();
  27. expect(vm.$el.innerText.indexOf('2') > -1).to.be.true;
  28. });
  29. it('invisible element not trigger', async() => {
  30. vm = createVue({
  31. template: `
  32. <div v-show="false">
  33. <ul ref="scrollTarget" v-infinite-scroll="load" style="height: 300px;overflow: auto;">
  34. <li v-for="i in count" style="display: flex;height: 50px;">{{ i }}</li>
  35. </ul>
  36. </div>
  37. `,
  38. data() {
  39. return {
  40. count: 0
  41. };
  42. },
  43. methods: {
  44. load() {
  45. this.count += 2;
  46. }
  47. }
  48. }, true);
  49. vm.$refs.scrollTarget.scrollTop = 2000;
  50. await wait();
  51. expect(vm.$el.innerText.indexOf('2') > -1).to.be.false;
  52. });
  53. });