Skip to content

Commit

Permalink
fix: Fix console errors about feature flags when running tests (#21275)
Browse files Browse the repository at this point in the history
  • Loading branch information
codyml committed Sep 1, 2022
1 parent c4b6fc5 commit 742dbdd
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 10 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -19,17 +19,45 @@

import { FeatureFlag, isFeatureEnabled } from '@superset-ui/core';

describe('isFeatureFlagEnabled', () => {
const originalFeatureFlags = window.featureFlags;
// eslint-disable-next-line no-console
const originalConsoleError = console.error;
const reset = () => {
window.featureFlags = originalFeatureFlags;
// eslint-disable-next-line no-console
console.error = originalConsoleError;
};

it('returns false and raises console error if feature flags have not been initialized', () => {
// eslint-disable-next-line no-console
console.error = jest.fn();
delete (window as any).featureFlags;
expect(isFeatureEnabled(FeatureFlag.ALLOW_DASHBOARD_DOMAIN_SHARDING)).toEqual(
false,
);

// eslint-disable-next-line no-console
expect(console.error).toHaveBeenNthCalledWith(
1,
'Failed to query feature flag ALLOW_DASHBOARD_DOMAIN_SHARDING (see error below)',
);

reset();
});

it('returns false for unset feature flag', () => {
expect(isFeatureEnabled(FeatureFlag.ALLOW_DASHBOARD_DOMAIN_SHARDING)).toEqual(
false,
);

reset();
});

it('returns true for set feature flag', () => {
window.featureFlags = {
[FeatureFlag.CLIENT_CACHE]: true,
};
it('returns false for unset feature flag', () => {
expect(
isFeatureEnabled(FeatureFlag.ALLOW_DASHBOARD_DOMAIN_SHARDING),
).toEqual(false);
});

it('returns true for set feature flag', () => {
expect(isFeatureEnabled(FeatureFlag.CLIENT_CACHE)).toEqual(true);
});

expect(isFeatureEnabled(FeatureFlag.CLIENT_CACHE)).toEqual(true);
reset();
});
1 change: 1 addition & 0 deletions superset-frontend/spec/helpers/shim.ts
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@ g.window.performance = { now: () => new Date().getTime() };
g.window.Worker = Worker;
g.window.IntersectionObserver = IntersectionObserver;
g.window.ResizeObserver = ResizeObserver;
g.window.featureFlags = {};
g.URL.createObjectURL = () => '';
g.caches = new CacheStorage();

Expand Down

0 comments on commit 742dbdd

Please sign in to comment.