1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- import * as PropTypes from 'prop-types';
- import {mountWithTheme} from 'sentry-test/enzyme';
- import {Client} from 'sentry/api';
- import AccountSubscriptions from 'sentry/views/settings/account/accountSubscriptions';
- const ENDPOINT = '/users/me/subscriptions/';
- describe('AccountSubscriptions', function () {
- beforeEach(function () {
- Client.clearMockResponses();
- });
- it('renders empty', function () {
- Client.addMockResponse({
- url: ENDPOINT,
- body: [],
- });
- const wrapper = mountWithTheme(<AccountSubscriptions />, {
- context: {
- router: TestStubs.router(),
- },
- childContextTypes: {
- router: PropTypes.object,
- },
- });
- expect(wrapper).toSnapshot();
- });
- it('renders list and can toggle', function () {
- Client.addMockResponse({
- url: ENDPOINT,
- body: TestStubs.Subscriptions(),
- });
- const mock = Client.addMockResponse({
- url: ENDPOINT,
- method: 'PUT',
- });
- const wrapper = mountWithTheme(<AccountSubscriptions />, {
- context: {
- router: TestStubs.router(),
- },
- childContextTypes: {
- router: PropTypes.object,
- },
- });
- expect(wrapper).toSnapshot();
- expect(mock).not.toHaveBeenCalled();
- wrapper.find('Switch').first().simulate('click');
- expect(mock).toHaveBeenCalledWith(
- ENDPOINT,
- expect.objectContaining({
- method: 'PUT',
- data: {
- listId: 2,
- subscribed: false,
- },
- })
- );
- });
- });
|