Skip to content

Commit bbee4d9

Browse files
other tests added
1 parent 286e4c0 commit bbee4d9

File tree

3 files changed

+49
-14
lines changed

3 files changed

+49
-14
lines changed

library/src/components/__tests__/Bindings.test.tsx

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
/* eslint-disable sonarjs/no-duplicate-string */
66

77
import React from 'react';
8-
import { render, screen } from '@testing-library/react';
8+
import { fireEvent, render, screen } from '@testing-library/react';
99
import {
1010
BindingV2 as BindingSchema,
1111
BindingsV2 as BindingsSchema,
@@ -41,14 +41,19 @@ describe('Bindings component', () => {
4141
};
4242
render(<Bindings bindings={createBinding(bindings)} />);
4343

44+
const expandAllButtons = screen.getAllByRole('button', {
45+
name: 'Expand all',
46+
});
47+
expandAllButtons.forEach((button) => fireEvent.click(button));
48+
4449
expect(screen.getAllByText('Binding specific information')).toBeDefined();
4550
expect(screen.getAllByText('Binding specific information')).toHaveLength(2);
4651
expect(screen.getByText('mqtt')).toBeDefined();
4752
expect(screen.getByText('fooMqtt')).toBeDefined();
48-
expect(screen.getByText('barMqtt')).toBeDefined();
53+
expect(screen.getByText('"barMqtt"')).toBeDefined();
4954
expect(screen.getByText('kafka')).toBeDefined();
5055
expect(screen.getByText('fooKafka')).toBeDefined();
51-
expect(screen.getByText('barKafka')).toBeDefined();
56+
expect(screen.getByText('"barKafka"')).toBeDefined();
5257
});
5358

5459
test('should render empty binding as string', () => {
@@ -61,11 +66,16 @@ describe('Bindings component', () => {
6166
};
6267
render(<Bindings bindings={createBinding(bindings)} />);
6368

69+
const expandAllButtons = screen.getAllByRole('button', {
70+
name: 'Expand all',
71+
});
72+
expandAllButtons.forEach((button) => fireEvent.click(button));
73+
6474
expect(screen.getAllByText('Binding specific information')).toBeDefined();
6575
expect(screen.getAllByText('Binding specific information')).toHaveLength(3);
6676
expect(screen.getByText('mqtt')).toBeDefined();
6777
expect(screen.getByText('foo')).toBeDefined();
68-
expect(screen.getByText('bar')).toBeDefined();
78+
expect(screen.getByText('"bar"')).toBeDefined();
6979
expect(screen.getByText('kafka')).toBeDefined();
7080
expect(screen.getByText('http')).toBeDefined();
7181
expect(screen.queryByText('undefined')).toEqual(null);

library/src/components/__tests__/Extensions.test.tsx

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
*/
44

55
import React from 'react';
6-
import { render, screen } from '@testing-library/react';
6+
import { fireEvent, render, screen } from '@testing-library/react';
77

88
import { SchemaV2 as SchemaModel } from '@asyncapi/parser';
99

@@ -18,11 +18,13 @@ describe('Extensions component', () => {
1818
const schemaModel = new SchemaModel(schema);
1919
render(<Extensions item={schemaModel} />);
2020

21+
fireEvent.click(screen.getByRole('button', { name: 'Expand all' }));
22+
2123
expect(screen.getByText('Extensions')).toBeDefined();
2224
expect(screen.getByText('x-foo')).toBeDefined();
23-
expect(screen.getByText('xBar')).toBeDefined();
25+
expect(screen.getByText('"xBar"')).toBeDefined();
2426
expect(screen.getByText('x-bar')).toBeDefined();
25-
expect(screen.getByText('xFoo')).toBeDefined();
27+
expect(screen.getByText('"xFoo"')).toBeDefined();
2628
});
2729

2830
test('should filter non extensions', () => {
@@ -38,12 +40,14 @@ describe('Extensions component', () => {
3840
};
3941
const schemaModel = new SchemaModel(schema);
4042
render(<Extensions item={schemaModel} />);
43+
44+
fireEvent.click(screen.getByRole('button', { name: 'Expand all' }));
4145

4246
expect(screen.getByText('Extensions')).toBeDefined();
4347
expect(screen.getByText('x-foo')).toBeDefined();
44-
expect(screen.getByText('xBar')).toBeDefined();
48+
expect(screen.getByText('"xBar"')).toBeDefined();
4549
expect(screen.getByText('x-bar')).toBeDefined();
46-
expect(screen.getByText('xFoo')).toBeDefined();
50+
expect(screen.getByText('"xFoo"')).toBeDefined();
4751
expect(screen.queryByText('foo')).toEqual(null);
4852
expect(screen.queryByText('bar')).toEqual(null);
4953
});
@@ -57,9 +61,11 @@ describe('Extensions component', () => {
5761
const schemaModel = new SchemaModel(schema);
5862
render(<Extensions item={schemaModel} />);
5963

64+
fireEvent.click(screen.getByRole('button', { name: 'Expand all' }));
65+
6066
expect(screen.getByText('Extensions')).toBeDefined();
6167
expect(screen.getByText('x-foo')).toBeDefined();
62-
expect(screen.getByText('xBar')).toBeDefined();
68+
expect(screen.getByText('"xBar"')).toBeDefined();
6369
expect(screen.getByText('x-bar')).toBeDefined();
6470
expect(screen.getByText('x-foobar')).toBeDefined();
6571
expect(screen.queryByText('undefined')).toEqual(null);

library/src/components/__tests__/Schema.test.tsx

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,8 @@
33
*/
44

55
import React from 'react';
6-
import { render, screen } from '@testing-library/react';
6+
import { fireEvent, render, screen } from '@testing-library/react';
77
import { SchemaV2 as SchemaModel } from '@asyncapi/parser';
8-
98
import { Schema } from '../Schema';
109

1110
describe('Schema component', () => {
@@ -41,6 +40,8 @@ describe('Schema component', () => {
4140

4241
render(<Schema schema={schemaModel} />);
4342

43+
fireEvent.click(screen.getByRole('button', { name: 'Expand all' }));
44+
4445
// properties
4546
expect(screen.getByText('nonCircular')).toBeDefined();
4647
expect(screen.getByText('circular')).toBeDefined();
@@ -69,6 +70,8 @@ describe('Schema component', () => {
6970

7071
render(<Schema schema={schemaModel} />);
7172

73+
fireEvent.click(screen.getByRole('button', { name: 'Expand all' }));
74+
7275
expect(screen.getByText('true')).toBeDefined();
7376
expect(screen.getByText('false')).toBeDefined();
7477
});
@@ -91,6 +94,12 @@ describe('Schema component', () => {
9194

9295
render(<Schema schema={schemaModel} />);
9396

97+
fireEvent.click(screen.getByRole('button', { name: 'Expand all' }));
98+
99+
const constantValueElements = screen.getAllByText('Constant value:');
100+
expect(constantValueElements).toBeDefined();
101+
expect(constantValueElements).toHaveLength(2);
102+
94103
expect(screen.getByText('true')).toBeDefined();
95104
expect(screen.getByText('false')).toBeDefined();
96105
});
@@ -147,8 +156,18 @@ describe('Schema component', () => {
147156

148157
render(<Schema schema={schemaModel} />);
149158

150-
expect(screen.getByText('Adheres to Cat:')).toBeDefined();
151-
expect(screen.getByText('Or to Dog:')).toBeDefined();
159+
fireEvent.click(screen.getByRole('button', { name: 'Expand all' }));
160+
161+
fireEvent.click(screen.getByRole('button', { name: 'Expand all' }));
162+
163+
expect(
164+
screen.getAllByRole('heading', {
165+
name: /can be one of the following/i,
166+
}),
167+
).toBeDefined();
168+
169+
expect(screen.getByText('Cat:')).toBeDefined();
170+
expect(screen.getByText('Dog:')).toBeDefined();
152171
});
153172
});
154173
});

0 commit comments

Comments
 (0)