12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- import {MembersFixture} from 'sentry-fixture/members';
- import {OrganizationFixture} from 'sentry-fixture/organization';
- import {ProjectFixture} from 'sentry-fixture/project';
- import {UserFixture} from 'sentry-fixture/user';
- import {render, screen} from 'sentry-test/reactTestingLibrary';
- import ConfigStore from 'sentry/stores/configStore';
- import type {IssueOwnership} from 'sentry/types';
- import {EditOwnershipRules} from './editRulesModal';
- describe('Project Ownership Input', () => {
- const org = OrganizationFixture();
- const project = ProjectFixture();
- const user = UserFixture();
- beforeEach(() => {
- ConfigStore.set('user', user);
- MockApiClient.addMockResponse({
- url: `/organizations/${org.slug}/members/`,
- method: 'GET',
- body: MembersFixture(),
- });
- });
- const ownership: IssueOwnership = {
- fallthrough: false,
- autoAssignment: 'Auto Assign to Suspect Commits',
- codeownersAutoSync: false,
- raw: 'url:src',
- isActive: true,
- dateCreated: '',
- lastUpdated: '',
- };
- afterEach(() => {
- MockApiClient.clearMockResponses();
- });
- it('renders', () => {
- render(
- <EditOwnershipRules
- organization={org}
- ownership={ownership}
- project={project}
- onCancel={() => {}}
- onSave={() => {}}
- />
- );
- expect(screen.getByText('Globbing Syntax')).toBeInTheDocument();
- });
- it('renders with streamline-targeting-context', () => {
- render(
- <EditOwnershipRules
- organization={{...org, features: ['streamline-targeting-context']}}
- ownership={ownership}
- project={project}
- onCancel={() => {}}
- onSave={() => {}}
- />
- );
- expect(screen.getByText(/Assign issues based on custom rules/)).toBeInTheDocument();
- });
- });
|