Text.spec.js 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. import Text from "~/components/Ui/Xeditable/Text";
  2. import {mount} from "@vue/test-utils"
  3. import Vuetify from 'vuetify'
  4. var wrapper
  5. var vuetify
  6. beforeEach(()=>{
  7. vuetify = new Vuetify()
  8. wrapper = mount(Text, {
  9. propsData:{
  10. data: 'foo'
  11. },
  12. stubs:['UiInputText'],
  13. vuetify
  14. })
  15. })
  16. describe("edit-link", () => {
  17. it("should display by default", async () => {
  18. expect(wrapper.find(".edit-link").exists()).toBeTruthy()
  19. });
  20. it("should hide if we click on it", async () => {
  21. await wrapper.find('.edit-link').trigger('click')
  22. expect(wrapper.find(".edit-link").exists()).toBeFalsy()
  23. });
  24. it("should show if we click on it and after if we click on valid", async () => {
  25. await wrapper.find('.edit-link').trigger('click')
  26. await wrapper.find('.valid').trigger('click')
  27. expect(wrapper.find(".edit-link").exists()).toBeTruthy()
  28. });
  29. it("should show if we click on it and after if we click on cancel", async () => {
  30. await wrapper.find('.edit-link').trigger('click')
  31. await wrapper.find('.cancel').trigger('click')
  32. expect(wrapper.find(".edit-link").exists()).toBeTruthy()
  33. });
  34. })
  35. describe("x-editable-input", () => {
  36. it("should hide by default", async () => {
  37. expect(wrapper.find(".x-editable-input").exists()).toBeFalsy()
  38. });
  39. it("should show if we click on edit link it", async () => {
  40. await wrapper.find('.edit-link').trigger('click')
  41. expect(wrapper.find(".x-editable-input").exists()).toBeTruthy()
  42. });
  43. it("should emit an update event on valid button if inputValue has change", async () => {
  44. await wrapper.find('.edit-link').trigger('click')
  45. await wrapper.setData({ inputValue: 'bar' })
  46. await wrapper.find('.valid').trigger('click')
  47. expect(wrapper.emitted().update).toBeTruthy()
  48. });
  49. it("should not emit an update event on valid button if inputValue has not change", async () => {
  50. await wrapper.find('.edit-link').trigger('click')
  51. await wrapper.find('.valid').trigger('click')
  52. expect(wrapper.emitted().update).toBeFalsy()
  53. });
  54. })