Commit c68cbbbcaee3cf75c8a99d8dd1bc99daadf32e7f
Exists in
colab
and in
4 other branches
Merge pull request #313 from mezuro/aggregation_form_fix
Aggregation form fix
Showing
9 changed files
with
39 additions
and
41 deletions
Show diff stats
.travis.yml
| @@ -9,7 +9,7 @@ before_script: | @@ -9,7 +9,7 @@ before_script: | ||
| 9 | - pushd kalibro_install | 9 | - pushd kalibro_install |
| 10 | # Remove bugged libzmq3 package, see https://github.com/travis-ci/travis-ci/issues/982 and https://github.com/travis-ci/travis-ci/issues/1715 for details | 10 | # Remove bugged libzmq3 package, see https://github.com/travis-ci/travis-ci/issues/982 and https://github.com/travis-ci/travis-ci/issues/1715 for details |
| 11 | - sudo apt-get remove libzmq3 | 11 | - sudo apt-get remove libzmq3 |
| 12 | - - export KALIBRO_PROCESSOR_VERSION=v1.1.7.rc1 | 12 | + - export KALIBRO_PROCESSOR_VERSION=v1.1.7 |
| 13 | - export KALIBRO_CONFIGURATIONS_VERSION=v2.0.0 | 13 | - export KALIBRO_CONFIGURATIONS_VERSION=v2.0.0 |
| 14 | - bash install.sh | 14 | - bash install.sh |
| 15 | - popd | 15 | - popd |
app/helpers/metric_configurations_helper.rb
| 1 | module MetricConfigurationsHelper | 1 | module MetricConfigurationsHelper |
| 2 | def aggregation_options | 2 | def aggregation_options |
| 3 | - [[t("aggregation_forms.AVERAGE"),"AVERAGE"], [t("aggregation_forms.MEDIAN"), "MEDIAN"], [t("aggregation_forms.MAXIMUM"), "MAXIMUM"], [t("aggregation_forms.MINIMUM"), "MINIMUM"], [t("aggregation_forms.STANDARD_DEVIATION"), "STANDARD_DEVIATION"], [t("aggregation_forms.COUNT"), "COUNT"]] | 3 | + [[t("aggregation_forms.MEAN"),"MEAN"], [t("aggregation_forms.MEDIAN"), "MEDIAN"], [t("aggregation_forms.MAXIMUM"), "MAXIMUM"], [t("aggregation_forms.MINIMUM"), "MINIMUM"], [t("aggregation_forms.STANDARD_DEVIATION"), "STANDARD_DEVIATION"], [t("aggregation_forms.COUNT"), "COUNT"]] |
| 4 | end | 4 | end |
| 5 | 5 | ||
| 6 | def reading_group_options | 6 | def reading_group_options |
config/locales/views/metric_configurations/en.yml
| @@ -45,10 +45,9 @@ en: | @@ -45,10 +45,9 @@ en: | ||
| 45 | PACKAGE: "Package" | 45 | PACKAGE: "Package" |
| 46 | SOFTWARE: "Software" | 46 | SOFTWARE: "Software" |
| 47 | aggregation_forms: | 47 | aggregation_forms: |
| 48 | - AVERAGE: "Average" | 48 | + MEAN: "Mean" |
| 49 | MEDIAN: "Median" | 49 | MEDIAN: "Median" |
| 50 | MAXIMUM: "Maximum" | 50 | MAXIMUM: "Maximum" |
| 51 | MINIMUM: "Minimum" | 51 | MINIMUM: "Minimum" |
| 52 | COUNT: "Count" | 52 | COUNT: "Count" |
| 53 | STANDARD_DEVIATION: "Standard Deviation" | 53 | STANDARD_DEVIATION: "Standard Deviation" |
| 54 | - |
config/locales/views/metric_configurations/pt.yml
| @@ -49,7 +49,7 @@ pt: | @@ -49,7 +49,7 @@ pt: | ||
| 49 | PACKAGE: "Pacote" | 49 | PACKAGE: "Pacote" |
| 50 | SOFTWARE: "Software" | 50 | SOFTWARE: "Software" |
| 51 | aggregation_forms: | 51 | aggregation_forms: |
| 52 | - AVERAGE: "Média" | 52 | + MEAN: "Média" |
| 53 | MEDIAN: "Mediana" | 53 | MEDIAN: "Mediana" |
| 54 | MAXIMUM: "Máxima" | 54 | MAXIMUM: "Máxima" |
| 55 | MINIMUM: "Mínima" | 55 | MINIMUM: "Mínima" |
| @@ -0,0 +1,31 @@ | @@ -0,0 +1,31 @@ | ||
| 1 | +Feature: Create a new native configuration and process a repository using it | ||
| 2 | + In order to view the results of a ruby repository | ||
| 3 | + As a regular user | ||
| 4 | + I should be able to configure a set of metrics and process a repository using them | ||
| 5 | + | ||
| 6 | + @kalibro_configuration_restart @kalibro_processor_restart @javascript | ||
| 7 | + Scenario: Create a ruby configuration and process a ruby repository | ||
| 8 | + Given I am a regular user | ||
| 9 | + And I am signed in | ||
| 10 | + And I own a sample configuration | ||
| 11 | + And I have a reading group named "Scholar" | ||
| 12 | + And I have a sample repository | ||
| 13 | + And I am at the Sample Configuration page | ||
| 14 | + And I click the Add Metric link | ||
| 15 | + And I click the "MetricFu" h3 | ||
| 16 | + And I click the Pain link | ||
| 17 | + And I fill the Weight field with "2" | ||
| 18 | + And I set the select field "Aggregation Form" as "Mean" | ||
| 19 | + And I set the select field "Reading Group" as "Scholar" | ||
| 20 | + When I press the Save button | ||
| 21 | + Then I should see "Pain" | ||
| 22 | + And I should see "2" | ||
| 23 | + When I start to process that repository | ||
| 24 | + And I wait up for a ready processing | ||
| 25 | + And I ask for the last ready processing of the given repository | ||
| 26 | + And I ask for the module result of the given processing | ||
| 27 | + And I ask for the metric results of the given module result | ||
| 28 | + When I visit the repository show page | ||
| 29 | + And I click the "Tree Metric Results" h3 | ||
| 30 | + Then I should see the sample metric's name | ||
| 31 | + And I should see the ruby metric results |
features/repository/show/metric_results.feature
| @@ -51,22 +51,6 @@ Feature: Repository metric results | @@ -51,22 +51,6 @@ Feature: Repository metric results | ||
| 51 | And I click the "Tree Metric Results" h3 | 51 | And I click the "Tree Metric Results" h3 |
| 52 | Then I should see "Repository process returned with error. There are no tree metric results." | 52 | Then I should see "Repository process returned with error. There are no tree metric results." |
| 53 | 53 | ||
| 54 | - @kalibro_processor_restart @kalibro_configuration_restart @javascript | ||
| 55 | - Scenario: Should show the metric results after processing with a ruby metric configuration | ||
| 56 | - Given I am a regular user | ||
| 57 | - And I am signed in | ||
| 58 | - And I have a sample configuration with ruby native metrics | ||
| 59 | - And I have a sample repository | ||
| 60 | - And I start to process that repository | ||
| 61 | - And I wait up for a ready processing | ||
| 62 | - And I ask for the last ready processing of the given repository | ||
| 63 | - And I ask for the module result of the given processing | ||
| 64 | - And I ask for the metric results of the given module result | ||
| 65 | - When I visit the repository show page | ||
| 66 | - And I click the "Tree Metric Results" h3 | ||
| 67 | - Then I should see the sample metric's name | ||
| 68 | - And I should see the ruby metric results | ||
| 69 | - | ||
| 70 | # TODO: Scenario: Should show the graphic of a given metric | 54 | # TODO: Scenario: Should show the graphic of a given metric |
| 71 | # It was getting really difficult to test this because of Poltergeist's timeouts | 55 | # It was getting really difficult to test this because of Poltergeist's timeouts |
| 72 | # so we gave up on this for now | 56 | # so we gave up on this for now |
features/step_definitions/repository_steps.rb
| @@ -59,6 +59,7 @@ end | @@ -59,6 +59,7 @@ end | ||
| 59 | 59 | ||
| 60 | Given(/^I wait up for a ready processing$/) do | 60 | Given(/^I wait up for a ready processing$/) do |
| 61 | while !@repository.has_ready_processing | 61 | while !@repository.has_ready_processing |
| 62 | + expect(@repository.last_processing_state).to_not eq "ERROR" | ||
| 62 | sleep(10) | 63 | sleep(10) |
| 63 | end | 64 | end |
| 64 | end | 65 | end |
features/tree_metric_configuration/create.feature
| @@ -20,30 +20,13 @@ Feature: Tree Metric Configuration Creation | @@ -20,30 +20,13 @@ Feature: Tree Metric Configuration Creation | ||
| 20 | And I click the "Analizo" h3 | 20 | And I click the "Analizo" h3 |
| 21 | And I click the Total Lines of Code link | 21 | And I click the Total Lines of Code link |
| 22 | And I fill the Weight field with "2" | 22 | And I fill the Weight field with "2" |
| 23 | - And I set the select field "Aggregation Form" as "Average" | 23 | + And I set the select field "Aggregation Form" as "Mean" |
| 24 | And I set the select field "Reading Group" as "Scholar" | 24 | And I set the select field "Reading Group" as "Scholar" |
| 25 | When I press the Save button | 25 | When I press the Save button |
| 26 | Then I should see "Total Lines of Code" | 26 | Then I should see "Total Lines of Code" |
| 27 | Then I should see "2" | 27 | Then I should see "2" |
| 28 | 28 | ||
| 29 | @kalibro_configuration_restart @javascript | 29 | @kalibro_configuration_restart @javascript |
| 30 | - Scenario: ruby metric configuration creation | ||
| 31 | - Given I am a regular user | ||
| 32 | - And I am signed in | ||
| 33 | - And I own a sample configuration | ||
| 34 | - And I have a reading group named "Scholar" | ||
| 35 | - And I am at the Sample Configuration page | ||
| 36 | - And I click the Add Metric link | ||
| 37 | - And I click the "MetricFu" h3 | ||
| 38 | - And I click the Pain link | ||
| 39 | - And I fill the Weight field with "2" | ||
| 40 | - And I set the select field "Aggregation Form" as "Average" | ||
| 41 | - And I set the select field "Reading Group" as "Scholar" | ||
| 42 | - When I press the Save button | ||
| 43 | - Then I should see "Pain" | ||
| 44 | - Then I should see "2" | ||
| 45 | - | ||
| 46 | - @kalibro_configuration_restart @javascript | ||
| 47 | Scenario: metric configuration creation | 30 | Scenario: metric configuration creation |
| 48 | Given I am a regular user | 31 | Given I am a regular user |
| 49 | And I am signed in | 32 | And I am signed in |
| @@ -68,7 +51,7 @@ Feature: Tree Metric Configuration Creation | @@ -68,7 +51,7 @@ Feature: Tree Metric Configuration Creation | ||
| 68 | And I click the "Analizo" h3 | 51 | And I click the "Analizo" h3 |
| 69 | And I click the Total Abstract Classes link | 52 | And I click the Total Abstract Classes link |
| 70 | And I fill the Weight field with "2" | 53 | And I fill the Weight field with "2" |
| 71 | - And I set the select field "Aggregation Form" as "Average" | 54 | + And I set the select field "Aggregation Form" as "Mean" |
| 72 | And I set the select field "Reading Group" as "Scholar" | 55 | And I set the select field "Reading Group" as "Scholar" |
| 73 | When I press the Save button | 56 | When I press the Save button |
| 74 | Then I should see "Code must be unique within a kalibro configuration" | 57 | Then I should see "Code must be unique within a kalibro configuration" |
spec/helpers/metric_configurations_helper_spec.rb
| @@ -3,7 +3,7 @@ require 'rails_helper' | @@ -3,7 +3,7 @@ require 'rails_helper' | ||
| 3 | describe MetricConfigurationsHelper, :type => :helper do | 3 | describe MetricConfigurationsHelper, :type => :helper do |
| 4 | describe 'aggregation_form_options' do | 4 | describe 'aggregation_form_options' do |
| 5 | it 'should return an array with the supported aggregation forms' do | 5 | it 'should return an array with the supported aggregation forms' do |
| 6 | - expect(helper.aggregation_options).to eq [["Average","AVERAGE"], ["Median", "MEDIAN"], ["Maximum", "MAXIMUM"], ["Minimum", "MINIMUM"], | 6 | + expect(helper.aggregation_options).to eq [["Mean","MEAN"], ["Median", "MEDIAN"], ["Maximum", "MAXIMUM"], ["Minimum", "MINIMUM"], |
| 7 | ["Standard Deviation", "STANDARD_DEVIATION"], ["Count", "COUNT"]] | 7 | ["Standard Deviation", "STANDARD_DEVIATION"], ["Count", "COUNT"]] |
| 8 | end | 8 | end |
| 9 | end | 9 | end |