button.spec.js 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. import { createTest } from '../util';
  2. import Button from 'packages/button';
  3. describe('Button', () => {
  4. it('create', () => {
  5. const vm = createTest(Button, {
  6. type: 'primary'
  7. }, true);
  8. let buttonElm = vm.$el;
  9. expect(buttonElm.classList.contains('el-button--primary')).to.be.true;
  10. });
  11. it('icon', () => {
  12. const vm = createTest(Button, {
  13. icon: 'search'
  14. }, true);
  15. let buttonElm = vm.$el;
  16. expect(buttonElm.querySelector('.el-icon-search')).to.be.ok;
  17. });
  18. it('nativeType', () => {
  19. const vm = createTest(Button, {
  20. nativeType: 'submit'
  21. }, true);
  22. let buttonElm = vm.$el;
  23. expect(buttonElm.getAttribute('type')).to.be.equal('submit');
  24. });
  25. it('loading', () => {
  26. const vm = createTest(Button, {
  27. loading: true
  28. }, true);
  29. let buttonElm = vm.$el;
  30. expect(buttonElm.classList.contains('is-loading')).to.be.true;
  31. expect(buttonElm.querySelector('.el-icon-loading')).to.be.ok;
  32. });
  33. it('disabled', () => {
  34. const vm = createTest(Button, {
  35. disabled: true
  36. }, true);
  37. let buttonElm = vm.$el;
  38. expect(buttonElm.classList.contains('is-disabled')).to.be.true;
  39. });
  40. it('size', () => {
  41. const vm = createTest(Button, {
  42. size: 'large'
  43. }, true);
  44. let buttonElm = vm.$el;
  45. expect(buttonElm.classList.contains('el-button--large')).to.be.true;
  46. });
  47. it('plain', () => {
  48. const vm = createTest(Button, {
  49. plain: true
  50. }, true);
  51. let buttonElm = vm.$el;
  52. expect(buttonElm.classList.contains('is-plain')).to.be.true;
  53. });
  54. });