mirror of
https://github.com/IT4Change/gradido.git
synced 2025-12-13 07:45:54 +00:00
add mocks and button unit test to federation visualization in admin interface
This commit is contained in:
parent
81eed73922
commit
9435c3620f
@ -1,30 +1,98 @@
|
|||||||
import { mount } from '@vue/test-utils'
|
import { mount } from '@vue/test-utils'
|
||||||
import FederationVisualize from './FederationVisualize'
|
import FederationVisualize from './FederationVisualize'
|
||||||
|
import VueApollo from 'vue-apollo'
|
||||||
|
import { createMockClient } from 'mock-apollo-client'
|
||||||
|
import { getCommunities } from '@/graphql/getCommunities'
|
||||||
|
|
||||||
|
const mockClient = createMockClient()
|
||||||
|
const apolloProvider = new VueApollo({
|
||||||
|
defaultClient: mockClient,
|
||||||
|
})
|
||||||
|
|
||||||
const localVue = global.localVue
|
const localVue = global.localVue
|
||||||
|
|
||||||
|
localVue.use(VueApollo)
|
||||||
|
|
||||||
const mocks = {
|
const mocks = {
|
||||||
$t: (key) => key,
|
$t: (key) => key,
|
||||||
|
// $t: jest.fn((t) => t),
|
||||||
|
$d: jest.fn((d) => d),
|
||||||
$i18n: {
|
$i18n: {
|
||||||
locale: 'de',
|
locale: 'en',
|
||||||
t: (key) => key,
|
t: (key) => key,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
describe('Overview', () => {
|
const defaultData = () => {
|
||||||
|
return {
|
||||||
|
getCommunities: [
|
||||||
|
{
|
||||||
|
id: 1776,
|
||||||
|
foreign: true,
|
||||||
|
publicKey: 'c7ca9e742421bb167b8666cb78f90b40c665b8f35db8f001988d44dbb3ce8527',
|
||||||
|
url: 'http://localhost/api/api/2_0',
|
||||||
|
lastAnnouncedAt: '2023-04-07T12:27:24.037Z',
|
||||||
|
verifiedAt: null,
|
||||||
|
lastErrorAt: null,
|
||||||
|
createdAt: '2023-04-07T11:45:06.254Z',
|
||||||
|
updatedAt: null,
|
||||||
|
__typename: 'Community',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 1775,
|
||||||
|
foreign: true,
|
||||||
|
publicKey: 'c7ca9e742421bb167b8666cb78f90b40c665b8f35db8f001988d44dbb3ce8527',
|
||||||
|
url: 'http://localhost/api/api/1_1',
|
||||||
|
lastAnnouncedAt: '2023-04-07T12:27:24.023Z',
|
||||||
|
verifiedAt: null,
|
||||||
|
lastErrorAt: null,
|
||||||
|
createdAt: '2023-04-07T11:45:06.234Z',
|
||||||
|
updatedAt: null,
|
||||||
|
__typename: 'Community',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 1774,
|
||||||
|
foreign: true,
|
||||||
|
publicKey: 'c7ca9e742421bb167b8666cb78f90b40c665b8f35db8f001988d44dbb3ce8527',
|
||||||
|
url: 'http://localhost/api/api/1_0',
|
||||||
|
lastAnnouncedAt: '2023-04-07T12:27:24.009Z',
|
||||||
|
verifiedAt: null,
|
||||||
|
lastErrorAt: null,
|
||||||
|
createdAt: '2023-04-07T11:45:06.218Z',
|
||||||
|
updatedAt: null,
|
||||||
|
__typename: 'Community',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
describe('FederationVisualize', () => {
|
||||||
let wrapper
|
let wrapper
|
||||||
|
const getCommunitiesMock = jest.fn()
|
||||||
|
|
||||||
|
mockClient.setRequestHandler(
|
||||||
|
getCommunities,
|
||||||
|
getCommunitiesMock
|
||||||
|
.mockRejectedValueOnce({ message: 'Ouch!' })
|
||||||
|
.mockResolvedValue({ data: defaultData() }),
|
||||||
|
)
|
||||||
|
|
||||||
const Wrapper = () => {
|
const Wrapper = () => {
|
||||||
return mount(FederationVisualize, { localVue, mocks })
|
return mount(FederationVisualize, { localVue, mocks, apolloProvider })
|
||||||
}
|
}
|
||||||
|
|
||||||
describe('mount', () => {
|
describe('mount', () => {
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
|
jest.clearAllMocks()
|
||||||
wrapper = Wrapper()
|
wrapper = Wrapper()
|
||||||
})
|
})
|
||||||
|
|
||||||
it('has a DIV element with the class.component-confirm-register-mail', () => {
|
it('has a DIV element with the class "federation-visualize"', () => {
|
||||||
expect(wrapper.find('div.federation-visualize').exists()).toBe(true)
|
expect(wrapper.find('div.federation-visualize').exists()).toBe(true)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
it('has a refresh button', () => {
|
||||||
|
expect(wrapper.find('[data-test="federation-communities-refresh-btn"]').exists()).toBe(true)
|
||||||
|
})
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|||||||
@ -8,6 +8,7 @@
|
|||||||
font-scale="2"
|
font-scale="2"
|
||||||
:animation="animation"
|
:animation="animation"
|
||||||
@click="$apollo.queries.GetCommunities.refresh()"
|
@click="$apollo.queries.GetCommunities.refresh()"
|
||||||
|
data-test="federation-communities-refresh-btn"
|
||||||
></b-icon>
|
></b-icon>
|
||||||
</b-button>
|
</b-button>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user