Fixed tests

This commit is contained in:
Alejandro Celaya 2020-09-17 18:05:26 +02:00
parent 871868f0a4
commit 51556d76ac
3 changed files with 14 additions and 14 deletions

View file

@ -35,9 +35,7 @@ export const extractDomain = (url: string | Empty): string => {
return 'Direct';
}
const domain = url.includes('://') ? url.split('/')[2] : url.split('/')[0];
return domain.split(':')[0];
return url.split('/')[url.includes('://') ? 2 : 0]?.split(':')[0] ?? '';
};
export const fillTheGaps = (stats: Stats, labels: string[]): number[] =>

View file

@ -3,6 +3,7 @@ import { shallow, ShallowWrapper } from 'enzyme';
import { Doughnut, HorizontalBar } from 'react-chartjs-2';
import { keys, values } from 'ramda';
import DefaultChart from '../../../src/visits/helpers/DefaultChart';
import { prettify } from '../../../src/utils/helpers/numbers';
describe('<DefaultChart />', () => {
let wrapper: ShallowWrapper;
@ -69,7 +70,7 @@ describe('<DefaultChart />', () => {
expect(scales).toEqual({
xAxes: [
{
ticks: { beginAtZero: true, precision: 0 },
ticks: { beginAtZero: true, precision: 0, callback: prettify },
stacked: true,
},
],

View file

@ -6,11 +6,12 @@ import moment from 'moment';
import { Mock } from 'ts-mockery';
import LineChartCard from '../../../src/visits/helpers/LineChartCard';
import ToggleSwitch from '../../../src/utils/ToggleSwitch';
import { Visit } from '../../../src/visits/types';
import { NormalizedVisit } from '../../../src/visits/types';
import { prettify } from '../../../src/utils/helpers/numbers';
describe('<LineChartCard />', () => {
let wrapper: ShallowWrapper;
const createWrapper = (visits: Visit[] = [], highlightedVisits: Visit[] = []) => {
const createWrapper = (visits: NormalizedVisit[] = [], highlightedVisits: NormalizedVisit[] = []) => {
wrapper = shallow(<LineChartCard title="Cool title" visits={visits} highlightedVisits={highlightedVisits} />);
return wrapper;
@ -34,7 +35,7 @@ describe('<LineChartCard />', () => {
[[{ date: moment().subtract(7, 'month').format() }], 'monthly' ],
[[{ date: moment().subtract(1, 'year').format() }], 'monthly' ],
])('renders group menu and selects proper grouping item based on visits dates', (visits, expectedActiveItem) => {
const wrapper = createWrapper(visits.map((visit) => Mock.of<Visit>(visit)));
const wrapper = createWrapper(visits.map((visit) => Mock.of<NormalizedVisit>(visit)));
const items = wrapper.find(DropdownItem);
expect(items).toHaveLength(4);
@ -58,7 +59,7 @@ describe('<LineChartCard />', () => {
scales: {
yAxes: [
{
ticks: { beginAtZero: true, precision: 0 },
ticks: { beginAtZero: true, precision: 0, callback: prettify },
},
],
xAxes: [
@ -67,16 +68,16 @@ describe('<LineChartCard />', () => {
},
],
},
tooltips: {
tooltips: expect.objectContaining({
intersect: false,
axis: 'x',
},
}),
});
});
it.each([
[[ Mock.of<Visit>({}) ], [], 1 ],
[[ Mock.of<Visit>({}) ], [ Mock.of<Visit>({}) ], 2 ],
[[ Mock.of<NormalizedVisit>({}) ], [], 1 ],
[[ Mock.of<NormalizedVisit>({}) ], [ Mock.of<NormalizedVisit>({}) ], 2 ],
])('renders chart with expected data', (visits, highlightedVisits, expectedLines) => {
const wrapper = createWrapper(visits, highlightedVisits);
const chart = wrapper.find(Line);
@ -87,8 +88,8 @@ describe('<LineChartCard />', () => {
it('includes stats for visits with no dates if selected', () => {
const wrapper = createWrapper([
Mock.of<Visit>({ date: '2016-04-01' }),
Mock.of<Visit>({ date: '2016-01-01' }),
Mock.of<NormalizedVisit>({ date: '2016-04-01' }),
Mock.of<NormalizedVisit>({ date: '2016-01-01' }),
]);
expect((wrapper.find(Line).prop('data') as any).labels).toHaveLength(2);