Add test case for WorkflowSelectPreferredObjectStore.test.js

This commit is contained in:
John Chilton
2023-03-13 12:53:33 -04:00
parent 6e7ccd5a35
commit e5d71f141c
@@ -0,0 +1,41 @@
import { mount } from "@vue/test-utils";
import { getLocalVue } from "tests/jest/helpers";
import { setupSelectableMock } from "@/components/ObjectStore/mockServices";
setupSelectableMock();
import flushPromises from "flush-promises";
import WorkflowSelectPreferredObjectStore from "./WorkflowSelectPreferredObjectStore.vue";
const localVue = getLocalVue(true);
function mountComponent() {
const wrapper = mount(WorkflowSelectPreferredObjectStore, {
propsData: { invocationPreferredObjectStoreId: null },
localVue,
});
return wrapper;
}
import { ROOT_COMPONENT } from "@/utils/navigation";
const PREFERENCES = ROOT_COMPONENT.preferences;
describe("WorkflowSelectPreferredObjectStore.vue", () => {
it("updates object store to default on selection null", async () => {
const wrapper = mountComponent();
await flushPromises();
const els = wrapper.findAll(PREFERENCES.object_store_selection.option_buttons.selector);
expect(els.length).toBe(3);
const galaxyDefaultOption = wrapper.find(
PREFERENCES.object_store_selection.option_button({ object_store_id: "__null__" }).selector
);
expect(galaxyDefaultOption.exists()).toBeTruthy();
await galaxyDefaultOption.trigger("click");
await flushPromises();
const errorEl = wrapper.find(".object-store-selection-error");
expect(errorEl.exists()).toBeFalsy();
const emitted = wrapper.emitted();
expect(emitted["updated"][0][0]).toEqual(null);
});
});