@@ -50,10 +50,10 @@ def __init__(self, id, key, type, value):
5050class OptimizelyConfigBuilder (object ):
5151
5252 def __init__ (self , project_config ):
53- self .experiments = project_config .get ( ' experiments' , [])
54- self .feature_flags = project_config .get ( 'featureFlags' , [])
55- self .groups = config . get ( ' groups' , [])
56- self .revision = config . get ( ' revision' )
53+ self .experiments = project_config .experiments
54+ self .feature_flags = project_config .feature_flags
55+ self .groups = project_config . groups
56+ self .revision = project_config . revision
5757
5858 def get_optimizely_config (self ):
5959 experiments_map = self ._get_experiments_map ()
@@ -62,13 +62,13 @@ def get_optimizely_config(self):
6262 return OptimizelyConfig (self .revision , experiments_map , features_map )
6363
6464 def _get_feature_variable_by_id (self , variable_id , feature_flag ):
65- for variable in feature_flag .get ('variables' , None ):
65+ for variable in feature_flag .get ('variables' , [] ):
6666 if variable_id == variable ['id' ]:
6767 return variable
6868 return None
6969
70- def _get_featureflag_by_experiment_id (self , experiment_id , feature_flags ):
71- for feature in feature_flags :
70+ def _get_featureflag_by_experiment_id (self , experiment_id ):
71+ for feature in self . feature_flags :
7272 for id in feature ['experimentIds' ]:
7373 if id == experiment_id :
7474 return feature
@@ -81,8 +81,8 @@ def _get_experiment_by_id(self, experiment_id, experiments_map):
8181
8282 return None
8383
84- def _get_variables_map (self , variation , experiment , feature_flags ):
85- feature_flag = self ._get_featureflag_by_experiment_id (experiment ['id' ], feature_flags )
84+ def _get_variables_map (self , variation , experiment ):
85+ feature_flag = self ._get_featureflag_by_experiment_id (experiment ['id' ])
8686 if feature_flag is None :
8787 return {}
8888
@@ -107,7 +107,7 @@ def _get_variations_map(self, experiment):
107107 variations_map = {}
108108
109109 for variation in experiment .get ('variations' , []):
110- variables_map = self ._get_variables_map (variation , experiment , self . feature_flags )
110+ variables_map = self ._get_variables_map (variation , experiment )
111111 feature_enabled = variation .get ('featureEnabled' , None )
112112
113113 optly_variation = OptimizelyVariation (
@@ -167,26 +167,3 @@ def _get_features_map(self, experiments_map):
167167
168168
169169 return features_map
170-
171-
172-
173- def _readfile ():
174- with open ('feature_variables.json' , 'r' ) as datafile :
175- return datafile .read ()
176-
177-
178- datafile = _readfile ()
179- config = json .loads (datafile )
180-
181- opt_builder = OptimizelyConfigBuilder (config )
182-
183- response = opt_builder .get_optimizely_config ()
184-
185-
186- import pprint
187- pp = pprint .PrettyPrinter (indent = 2 )
188- pp .pprint (json .dumps (response .__dict__ , default = lambda o : o .__dict__ ))
189-
190-
191- # print(response.__dict__)
192-
0 commit comments