docbrown/app/javascript/chat/__tests__/RequestListItem.test.jsx
narender2031 0cfc593150
[deploy] 🚀 Feature: Chat channel request manager (#9305)
* Feature 🚀 : Ability to delete messages in chat channels

- Sending message ID to frontend
- Deleting Message
- Use pusher to delete message realtime

* Minor Bug 🐞: Show message action only for current user

- User can delete or edit their own messages

* Test cases added

* Bug 🐞: Update message id for receiver

Message id was not sent to receiver by pusher

* Refactoring🛠: Message controller refactoring

* Test Cases📝 : Specs for Delete message added

* Feature 🚀 : Ability to edit messages

* Test Cases📝 : Specs for Edit message added

* Merge conflict resolved

* request manager info API

* 👨🏼‍🎨 Design added for requestCenter

* integrate request manager with API

* remove unused argument

* fix request manager card UI

* fix request card UI

* add request manager button

* handle no invitaion UI

* fix badge UI

* add request specs

* add jest specs

* remove the presenter

* fix code climate issues

* fix queries

* fix runbocop issues

* fix PR suggestions

* remove empty lines

Co-authored-by: Sarthak Sharma <7lovesharma7@gmail.com>
2020-07-22 09:12:09 -04:00

40 lines
1.1 KiB
JavaScript

import { h } from 'preact';
import { render } from '@testing-library/preact';
import { axe } from 'jest-axe';
import RequestListItem from '../RequestManager/RequestListItem';
const data = {
request: {
name: 'Demo name',
membership_id: 11,
user_id: 10,
role: 'member',
image: '/image',
username: 'demousername',
status: 'joining_request',
chat_channel_name: 'demo channel',
},
};
describe('<RequestListItem />', () => {
it('should have no a11y violations', async () => {
const { container } = render(<RequestListItem request={data.request} />);
const results = await axe(container);
expect(results).toHaveNoViolations();
});
it('should render the the component', () => {
const { queryByText } = render(<RequestListItem request={data.request} />);
expect(
queryByText(
`${data.request.name} wants to join ${data.request.chat_channel_name}`,
),
).toBeDefined();
expect(queryByText('Reject', { selector: 'button' })).toBeDefined();
expect(queryByText('Accept', { selector: 'button' })).toBeDefined();
});
});