123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- import {LocationFixture} from 'sentry-fixture/locationFixture';
- import {ProjectFixture} from 'sentry-fixture/project';
- import {
- TrendParameterColumn,
- TrendParameterLabel,
- } from 'sentry/views/performance/trends/types';
- import {
- getCurrentTrendParameter,
- performanceTypeToTrendParameterLabel,
- } from 'sentry/views/performance/trends/utils';
- import {ProjectPerformanceType} from 'sentry/views/performance/utils';
- describe('Trend parameter utils', function () {
- describe('performanceTypeToTrendParameterLabel', function () {
- it('returns correct trend parameter label based on performance type', function () {
- const lcp = {
- label: TrendParameterLabel.LCP,
- column: TrendParameterColumn.LCP,
- };
- const duration = {
- label: TrendParameterLabel.DURATION,
- column: TrendParameterColumn.DURATION,
- };
- const frontendProjectOutput = performanceTypeToTrendParameterLabel(
- ProjectPerformanceType.FRONTEND
- );
- expect(frontendProjectOutput).toEqual(lcp);
- const anyProjectOutput = performanceTypeToTrendParameterLabel(
- ProjectPerformanceType.ANY
- );
- expect(anyProjectOutput).toEqual(duration);
- const backendProjectOutput = performanceTypeToTrendParameterLabel(
- ProjectPerformanceType.BACKEND
- );
- expect(backendProjectOutput).toEqual(duration);
- const frontendOtherProjectOutput = performanceTypeToTrendParameterLabel(
- ProjectPerformanceType.FRONTEND_OTHER
- );
- expect(frontendOtherProjectOutput).toEqual(duration);
- const mobileProjectOutput = performanceTypeToTrendParameterLabel(
- ProjectPerformanceType.MOBILE
- );
- expect(mobileProjectOutput).toEqual(duration);
- });
- });
- describe('getCurrentTrendParameter', function () {
- it('returns trend parameter from location', () => {
- const location = LocationFixture({query: {trendParameter: 'FCP'}});
- const expectedTrendParameter = {
- label: TrendParameterLabel.FCP,
- column: TrendParameterColumn.FCP,
- };
- // project with performance type 'any'
- const projects = [ProjectFixture({id: '1', platform: undefined})];
- const output = getCurrentTrendParameter(location, projects, [1]);
- expect(output).toEqual(expectedTrendParameter);
- });
- it('returns default trend parameter based on project type if no trend parameter set in location', function () {
- const location = LocationFixture();
- const expectedTrendParameter = {
- label: TrendParameterLabel.DURATION,
- column: TrendParameterColumn.DURATION,
- };
- // project with performance type 'any'
- const projects = [ProjectFixture({id: '1', platform: undefined})];
- const output = getCurrentTrendParameter(location, projects, [1]);
- expect(output).toEqual(expectedTrendParameter);
- });
- });
- });
|