Skip to content

Commit 9246b0a

Browse files
[AI-FSSDK] [FSSDK-12337] Add validation for experiment type field
1 parent 674ec56 commit 9246b0a

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

lib/project_config/project_config.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -260,6 +260,18 @@ export const createProjectConfig = function(datafileObj?: JSON, datafileStr: str
260260
projectConfig.experimentKeyMap = keyBy(projectConfig.experiments, 'key');
261261
projectConfig.experimentIdMap = keyBy(projectConfig.experiments, 'id');
262262

263+
const validExperimentTypes = new Set(Object.values(EXPERIMENT_TYPES));
264+
(projectConfig.experiments || []).forEach(experiment => {
265+
if (experiment.type != null && !validExperimentTypes.has(experiment.type)) {
266+
throw new OptimizelyError(
267+
'Experiment "%s" has invalid type "%s". Valid types: %s.',
268+
experiment.key,
269+
experiment.type,
270+
Array.from(validExperimentTypes).join(', '),
271+
);
272+
}
273+
});
274+
263275
projectConfig.variationIdMap = {};
264276
projectConfig.variationVariableUsageMap = {};
265277
(projectConfig.experiments || []).forEach(experiment => {

0 commit comments

Comments
 (0)