blob: 847af6676356366c363deea1c2b9a97612d463f2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
import {FeatureFlagsService, Features} from "./feature-flags.service";
import {getTestBed, TestBed} from "@angular/core/testing";
import {NgRedux} from "@angular-redux/store";
import each from 'jest-each';
let flagValue:boolean;
class MockReduxStore<T> {
getState() {
return {
"global": {
"flags": {
"FLAG_1810_CR_ADD_CLOUD_OWNER_TO_MSO_REQUEST": flagValue,
},
},
}
};
}
describe('Feature flags Service', () => {
let injector;
let service: FeatureFlagsService;
beforeAll(done => (async () => {
TestBed.configureTestingModule({
providers: [
FeatureFlagsService,
{provide: NgRedux, useClass: MockReduxStore}]
});
await TestBed.compileComponents();
injector = getTestBed();
service = injector.get(FeatureFlagsService);
})().then(done).catch(done.fail));
let flagValueDataProvider = [
['flag is true', true],
['flag is false', false]
];
each(flagValueDataProvider).test("should return the correct flag %s", (desc: string, flag: boolean) => {
flagValue = flag;
expect(service.getFlagState(Features.FLAG_1810_CR_ADD_CLOUD_OWNER_TO_MSO_REQUEST)).toEqual(flag);
});
});
|