import React from 'react';
import {shallow, mount} from 'enzyme';
import ActorAvatar from 'app/components/actorAvatar';
import MemberListStore from 'app/stores/memberListStore';
import TeamStore from 'app/stores/teamStore';
describe('Avatar', function() {
let sandbox;
const USER = {
id: '1',
name: 'Jane Doe',
email: 'janedoe@example.com',
};
const TEAM_1 = {
id: '3',
slug: 'cool-team',
name: 'COOL TEAM',
projects: [
{
slug: 2,
},
],
};
beforeEach(function() {
sandbox = sinon.sandbox.create();
MemberListStore.loadInitialData([USER]);
TeamStore.loadInitialData([TEAM_1]);
});
afterEach(function() {
sandbox.restore();
});
describe('render()', function() {
it('should show a gravatar when actor type is a user', function() {
let avatar = shallow(
);
expect(avatar).toMatchSnapshot();
});
it('should show a gravatar when actor type is a team', function() {
let avatar = shallow(
);
expect(avatar).toMatchSnapshot();
});
it('should return null when actor type is a unknown', function() {
window.console.error = jest.fn();
let avatar = mount(
);
expect(avatar.html()).toBe(null);
//proptype warning
expect(window.console.error.mock.calls.length).toBeGreaterThan(0);
window.console.error.mockRestore();
});
});
});