import { flushPromises, mount } from '@vue/test-utils'; import MeasurementInfo from '@/components/navigation/measurement/MeasurementInfo.vue'; import { DataOverlayPolygonFaker } from '@test/fakers/data-overlay-polygon.faker'; import MeasurementInfoPolygon from '@/components/navigation/measurement/MeasurementInfoPolygon.vue'; import { DataOverlayLengthFaker } from '@test/fakers/data-overlay-length.faker'; import MeasurementInfoLength from '@/components/navigation/measurement/MeasurementInfoLength.vue'; import { DataOverlayAngleFaker } from '@test/fakers/data-overlay-angle.faker'; import MeasurementInfoAngle from '@/components/navigation/measurement/MeasurementInfoAngle.vue'; import { DataOverlayMeasurement } from '@3cr/viewer-types-ts'; describe('MeasurementInfo tests', () => { it('should open MeasurementInfo', async () => { const wrapper = mount(MeasurementInfo, { props: { measurement: DataOverlayPolygonFaker.random(), isModal: false }, }); const snack = wrapper.findComponent(MeasurementInfoPolygon); await flushPromises(); expect(snack.isVisible()).toBe(true); }); it('should open MeasurementInfo', async () => { const wrapper = mount(MeasurementInfo, { props: { measurement: DataOverlayLengthFaker.random(), isModal: false }, }); const snack = wrapper.findComponent(MeasurementInfoLength); await flushPromises(); expect(snack.isVisible()).toBe(true); }); it('should open MeasurementInfo', async () => { const wrapper = mount(MeasurementInfo, { props: { measurement: DataOverlayAngleFaker.random(), isModal: false }, }); const snack = wrapper.findComponent(MeasurementInfoAngle); await flushPromises(); expect(snack.isVisible()).toBe(true); }); it('should open MeasurementInfo', async () => { const wrapper = mount(MeasurementInfo, { props: { measurement: DataOverlayPolygonFaker.random(), isModal: true }, }); const snack = wrapper.findComponent(MeasurementInfoPolygon); await flushPromises(); expect(snack.isVisible()).toBe(true); }); it('should open MeasurementInfo', async () => { const wrapper = mount(MeasurementInfo, { props: { measurement: DataOverlayLengthFaker.random(), isModal: true }, }); const snack = wrapper.findComponent(MeasurementInfoLength); await flushPromises(); expect(snack.isVisible()).toBe(true); }); it('should open MeasurementInfo', async () => { const wrapper = mount(MeasurementInfo, { props: { measurement: DataOverlayAngleFaker.random(), isModal: true }, }); const snack = wrapper.findComponent(MeasurementInfoAngle); await flushPromises(); expect(snack.isVisible()).toBe(true); }); it('should open MeasurementInfo', async () => { const measure = DataOverlayAngleFaker.random() as DataOverlayMeasurement; delete (measure as any).SegmentAngles; const wrapper = mount(MeasurementInfo, { props: { measurement: measure, isModal: true }, }); const snack = wrapper.findComponent(MeasurementInfoAngle); await flushPromises(); expect(snack.exists()).toBe(false); }); });