|
1 | 1 | import * as React from 'react';
|
2 |
| -import { View, Text, TextInput } from 'react-native'; |
| 2 | +import { View, Text, TextInput, Image } from 'react-native'; |
3 | 3 | import { render, screen } from '../..';
|
4 | 4 | import '../extend-expect';
|
5 | 5 |
|
@@ -72,17 +72,26 @@ test('toHaveAccessibleName() handles view with "aria-labelledby" prop', () => {
|
72 | 72 | expect(element).not.toHaveAccessibleName('Other label');
|
73 | 73 | });
|
74 | 74 |
|
75 |
| -test('toHaveAccessibleName() handles view with implicit accessible name', () => { |
| 75 | +test('toHaveAccessibleName() handles Text with text content', () => { |
76 | 76 | render(<Text testID="view">Text</Text>);
|
| 77 | + |
77 | 78 | const element = screen.getByTestId('view');
|
78 | 79 | expect(element).toHaveAccessibleName('Text');
|
79 | 80 | expect(element).not.toHaveAccessibleName('Other text');
|
80 | 81 | });
|
81 | 82 |
|
| 83 | +test('toHaveAccessibleName() handles Image with "alt" prop', () => { |
| 84 | + render(<Image testID="image" alt="Test image" />); |
| 85 | + |
| 86 | + const element = screen.getByTestId('image'); |
| 87 | + expect(element).toHaveAccessibleName('Test image'); |
| 88 | + expect(element).not.toHaveAccessibleName('Other text'); |
| 89 | +}); |
| 90 | + |
82 | 91 | test('toHaveAccessibleName() supports calling without expected name', () => {
|
83 | 92 | render(<View testID="view" accessibilityLabel="Test label" />);
|
84 |
| - const element = screen.getByTestId('view'); |
85 | 93 |
|
| 94 | + const element = screen.getByTestId('view'); |
86 | 95 | expect(element).toHaveAccessibleName();
|
87 | 96 | expect(() => expect(element).not.toHaveAccessibleName()).toThrowErrorMatchingInlineSnapshot(`
|
88 | 97 | "expect(element).not.toHaveAccessibleName()
|
|
0 commit comments