def test_scenario1(self): """ Scenario: Successfully creating an evaluation: Given I create a data source uploading a "<data>" file And I wait until the source is ready less than <time_1> secs And I create a dataset And I wait until the dataset is ready less than <time_2> secs And I create a model And I wait until the model is ready less than <time_3> secs When I create an evaluation for the model with the dataset And I wait until the evaluation is ready less than <time_4> secs Then the measured "<measure>" is <value> Examples: | data | time_1 | time_2 | time_3 | time_4 | measure | value | | ../data/iris.csv | 30 | 30 | 30 | 30 | average_phi | 1 | """ print self.test_scenario1.__doc__ examples = [[ 'data/iris.csv', '50', '50', '50', '50', 'average_phi', '1' ]] for example in examples: print "\nTesting with:\n", example source_create.i_upload_a_file(self, example[0]) source_create.the_source_is_finished(self, example[1]) dataset_create.i_create_a_dataset(self) dataset_create.the_dataset_is_finished_in_less_than( self, example[2]) model_create.i_create_a_model(self) model_create.the_model_is_finished_in_less_than(self, example[3]) evaluation_create.i_create_an_evaluation(self) evaluation_create.the_evaluation_is_finished_in_less_than( self, example[4]) evaluation_create.the_measured_measure_is_value( self, example[5], example[6])
def test_scenario2(self): """ Scenario: Successfully creating an evaluation for an ensemble: Given I create a data source uploading a "<data>" file And I wait until the source is ready less than <time_1> secs And I create a dataset And I wait until the dataset is ready less than <time_2> secs And I create an ensemble of <number_of_models> models and <tlp> tlp And I wait until the ensemble is ready less than <time_3> secs When I create an evaluation for the ensemble with the dataset And I wait until the evaluation is ready less than <time_4> secs Then the measured "<measure>" is <value> Examples: | data | time_1 | time_2 | number_of_models | tlp | time_3 | time_4 | measure | value | | ../data/iris.csv | 30 | 30 | 5 | 1 | 50 | 30 | average_phi | 0.98029 | """ print self.test_scenario2.__doc__ examples = [ ['data/iris.csv', '50', '50', '5', '1', '80', '80', 'average_phi', '0.98029']] for example in examples: print "\nTesting with:\n", example source_create.i_upload_a_file(self, example[0]) source_create.the_source_is_finished(self, example[1]) dataset_create.i_create_a_dataset(self) dataset_create.the_dataset_is_finished_in_less_than(self, example[2]) ensemble_create.i_create_an_ensemble(self, example[3], example[4]) ensemble_create.the_ensemble_is_finished_in_less_than(self, example[5]) evaluation_create.i_create_an_evaluation_ensemble(self) evaluation_create.the_evaluation_is_finished_in_less_than(self, example[6]) evaluation_create.the_measured_measure_is_value(self, example[7], example[8])
def test_scenario1(self): """ Scenario: Successfully creating an evaluation: Given I create a data source uploading a "<data>" file And I wait until the source is ready less than <time_1> secs And I create a dataset And I wait until the dataset is ready less than <time_2> secs And I create a model And I wait until the model is ready less than <time_3> secs When I create an evaluation for the model with the dataset And I wait until the evaluation is ready less than <time_4> secs Then the measured "<measure>" is <value> Examples: | data | time_1 | time_2 | time_3 | time_4 | measure | value | | ../data/iris.csv | 30 | 30 | 30 | 30 | average_phi | 1 | """ print self.test_scenario1.__doc__ examples = [ ['data/iris.csv', '50', '50', '50', '50', 'average_phi', '1']] for example in examples: print "\nTesting with:\n", example source_create.i_upload_a_file(self, example[0]) source_create.the_source_is_finished(self, example[1]) dataset_create.i_create_a_dataset(self) dataset_create.the_dataset_is_finished_in_less_than(self, example[2]) model_create.i_create_a_model(self) model_create.the_model_is_finished_in_less_than(self, example[3]) evaluation_create.i_create_an_evaluation(self) evaluation_create.the_evaluation_is_finished_in_less_than(self, example[4]) evaluation_create.the_measured_measure_is_value(self, example[5], example[6])
def test_scenario2(self): """ Scenario 2: Successfully creating a fusion: Given I create a data source uploading a "<data>" file And I wait until the source is ready less than <time_1> secs And I create a dataset And I wait until the dataset is ready less than <time_2> secs And I create a model with "<params>" And I wait until the model is ready less than <time_3> secs And I create a model with "<params>" And I wait until the model is ready less than <time_3> secs And I create a model with "<params>" And I wait until the model is ready less than <time_3> secs And I retrieve a list of remote models tagged with "<tag>" And I create a fusion from a list of models And I wait until the fusion is ready less than <time_4> secs And I update the fusion name to "<fusion_name>" When I wait until the fusion is ready less than <time_5> secs And I create a prediction for "<data_input>" Then the fusion name is "<fusion_name>" And the prediction for "<objective>" is "<prediction>" And I create an evaluation for the fusion with the dataset And I wait until the evaluation is ready less than <time_4> secs Then the measured "<measure>" is <value> Examples: | data | time_1 | time_2 | time_3 | time_4 | fusion_name | data_input | objective | prediction | ../data/iris.csv | 10 | 10 | 20 | 20 | my new fusion name | {"petal length": 1, "petal width": 1} | "000004" | "Iris-setosa" """ print self.test_scenario2.__doc__ examples = [ ['data/iris.csv', '10', '10', '20', '20', 'my new fusion name', '{"tags":["my_fusion_2_tag"]}', 'my_fusion_2_tag', '{"petal width": 1.75, "petal length": 2.45}', "000004", "Iris-setosa", 'average_phi', '1.0']] for example in examples: print "\nTesting with:\n", example source_create.i_upload_a_file(self, example[0]) source_create.the_source_is_finished(self, example[1]) dataset_create.i_create_a_dataset(self) dataset_create.the_dataset_is_finished_in_less_than(self, example[2]) model_create.i_create_a_model_with(self, example[6]) model_create.the_model_is_finished_in_less_than(self, example[3]) model_create.i_create_a_model_with(self, example[6]) model_create.the_model_is_finished_in_less_than(self, example[3]) model_create.i_create_a_model_with(self, example[6]) model_create.the_model_is_finished_in_less_than(self, example[3]) compare_pred.i_retrieve_a_list_of_remote_models(self, example[7]) model_create.i_create_a_fusion(self) model_create.the_fusion_is_finished_in_less_than(self, example[3]) model_create.i_update_fusion_name(self, example[5]) model_create.the_fusion_is_finished_in_less_than(self, example[4]) model_create.i_check_fusion_name(self, example[5]) prediction_create.i_create_a_fusion_prediction(self, example[8]) prediction_create.the_prediction_is(self, example[9], example[10]) evaluation_create.i_create_an_evaluation_fusion(self) evaluation_create.the_evaluation_is_finished_in_less_than(self, example[3]) evaluation_create.the_measured_measure_is_value(self, example[11], example[12])
def test_scenario2(self): """ Scenario: Successfully creating an evaluation for an ensemble: Given I create a data source uploading a "<data>" file And I wait until the source is ready less than <time_1> secs And I create a dataset And I wait until the dataset is ready less than <time_2> secs And I create an ensemble of <number_of_models> models and <tlp> tlp And I wait until the ensemble is ready less than <time_3> secs When I create an evaluation for the ensemble with the dataset And I wait until the evaluation is ready less than <time_4> secs Then the measured "<measure>" is <value> Examples: | data | time_1 | time_2 | number_of_models | tlp | time_3 | time_4 | measure | value | | ../data/iris.csv | 30 | 30 | 5 | 1 | 50 | 30 | average_phi | 0.98029 | """ print self.test_scenario2.__doc__ examples = [[ 'data/iris.csv', '50', '50', '5', '1', '80', '80', 'average_phi', '0.98029' ]] for example in examples: print "\nTesting with:\n", example source_create.i_upload_a_file(self, example[0]) source_create.the_source_is_finished(self, example[1]) dataset_create.i_create_a_dataset(self) dataset_create.the_dataset_is_finished_in_less_than( self, example[2]) ensemble_create.i_create_an_ensemble(self, example[3], example[4]) ensemble_create.the_ensemble_is_finished_in_less_than( self, example[5]) evaluation_create.i_create_an_evaluation_ensemble(self) evaluation_create.the_evaluation_is_finished_in_less_than( self, example[6]) evaluation_create.the_measured_measure_is_value( self, example[7], example[8])