Advertisement
Guest User

Untitled

a guest
Mar 18th, 2019
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import { createLocalVue, mount, shallowMount } from "@vue/test-utils";
  2. import Home from "./Home";
  3. import users from "../store/modules/users";
  4. import Vuex from "vuex";
  5. import axios from "axios";
  6.  
  7. let store;
  8. let localVue = createLocalVue();
  9. localVue.use(Vuex);
  10.  
  11. jest.mock('axios', () => {
  12.   return {
  13.     get: () => Promise.resolve({ data: ["user1", "user2"] })
  14.   }
  15. })
  16.  
  17. function createWrapper() {
  18.   return shallowMount(Home, { localVue, store });
  19. }
  20.  
  21. function createStore(){
  22.   return new Vuex.Store({
  23.     modules: {
  24.       users: users
  25.     }
  26.   })
  27. }
  28.  
  29. describe("components", () => {
  30.   beforeEach(() => {
  31.     store = createStore()
  32.   });
  33.  
  34.   it("should fetch users", () => {
  35.     const wrapper = createWrapper();
  36.     expect(store.getters.getUsers).toEqual([]);
  37.     wrapper.find(".mdl-button").trigger("click");
  38.     //expect(store.getters.getUsers).toEqual(["user1", "user2"]); // How would you assert this?
  39.  
  40.     wrapper.vm.$nextTick(() => {
  41.       expect(store.getters.getUsers).toEqual(["user1", "user2"])
  42.     })
  43.   });
  44. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement