5dc29141d5
Adds a new Federation Graph page to display subgraphs and their schemas. Implements loading state and error handling. Enhances coverage reporting by including 'lcov' format for better insights into test coverage metrics.
47 lines
1.5 KiB
TypeScript
47 lines
1.5 KiB
TypeScript
import { mount } from '@vue/test-utils'
|
|
import { beforeEach, describe, expect, it, vi } from 'vitest'
|
|
import { ref } from 'vue'
|
|
|
|
const mockSelectOrganization = vi.fn()
|
|
|
|
const mockOrganizations = [
|
|
{ id: '1', name: 'Org 1', apiKeys: [{ name: 'key1' }, { name: 'key2' }] },
|
|
{ id: '2', name: 'Org 2', apiKeys: [{ name: 'key3' }] },
|
|
{ id: '3', name: 'Org 3', apiKeys: [] },
|
|
]
|
|
|
|
// TODO: Add more comprehensive component tests once vitest module mocking issues are resolved
|
|
// For now, the component is indirectly tested through useOrganizationSelector tests
|
|
// and manual testing shows it works correctly
|
|
|
|
describe('OrganizationSwitcher - Single Organization', () => {
|
|
beforeEach(() => {
|
|
vi.resetModules()
|
|
mockSelectOrganization.mockClear()
|
|
|
|
// Mock with single organization
|
|
vi.mock('~/composables/useOrganizationSelector', () => ({
|
|
useOrganizationSelector: () => ({
|
|
organizations: ref([mockOrganizations[0]]),
|
|
selectedOrganization: ref(mockOrganizations[0]),
|
|
selectedOrgId: ref('1'),
|
|
selectOrganization: mockSelectOrganization,
|
|
}),
|
|
}))
|
|
})
|
|
|
|
it('should show a chip for single organization', async () => {
|
|
const module = await import('../OrganizationSwitcher.vue')
|
|
const wrapper = mount(module.default)
|
|
|
|
const html = wrapper.html()
|
|
|
|
// Should show chip
|
|
expect(html).toContain('v-chip')
|
|
expect(html).toContain('Org 1')
|
|
|
|
// Menu should not exist
|
|
expect(html).not.toContain('v-menu')
|
|
})
|
|
})
|