From 2cc9785d0a5409588d746c1e9e07525833ef09e0 Mon Sep 17 00:00:00 2001 From: Stas Vilchik Date: Thu, 25 Jun 2015 10:15:21 +0200 Subject: [PATCH] SONAR-6570 update web --- .../apps/metrics/templates/metrics-form.hbs | 2 +- .../metrics/templates/metrics-list-item.hbs | 2 +- .../source-viewer/measures-overlay.js | 3 +- server/sonar-web/src/test/js/metrics-spec.js | 4 +- .../test/json/metrics-spec/search-big-1.json | 20 +- .../test/json/metrics-spec/search-big-2.json | 9 +- .../json/metrics-spec/search-created.json | 38 +- .../json/metrics-spec/search-updated.json | 29 +- .../src/test/json/metrics-spec/search.json | 29 +- .../src/test/json/metrics-spec/types.json | 55 +- .../test/json/source-viewer-spec/metrics.json | 1107 +++++++++-------- .../resources/org/sonar/l10n/core.properties | 19 + 12 files changed, 720 insertions(+), 597 deletions(-) diff --git a/server/sonar-web/src/main/js/apps/metrics/templates/metrics-form.hbs b/server/sonar-web/src/main/js/apps/metrics/templates/metrics-form.hbs index 43c533f8416..2739a9076c7 100644 --- a/server/sonar-web/src/main/js/apps/metrics/templates/metrics-form.hbs +++ b/server/sonar-web/src/main/js/apps/metrics/templates/metrics-form.hbs @@ -24,7 +24,7 @@ diff --git a/server/sonar-web/src/main/js/apps/metrics/templates/metrics-list-item.hbs b/server/sonar-web/src/main/js/apps/metrics/templates/metrics-list-item.hbs index d4a59f17d7b..1fd85e6dfa4 100644 --- a/server/sonar-web/src/main/js/apps/metrics/templates/metrics-list-item.hbs +++ b/server/sonar-web/src/main/js/apps/metrics/templates/metrics-list-item.hbs @@ -15,7 +15,7 @@
- {{type.name}} + {{t 'metric.type' type}}
diff --git a/server/sonar-web/src/main/js/components/source-viewer/measures-overlay.js b/server/sonar-web/src/main/js/components/source-viewer/measures-overlay.js index 232915afb16..f23ee673dc5 100644 --- a/server/sonar-web/src/main/js/components/source-viewer/measures-overlay.js +++ b/server/sonar-web/src/main/js/components/source-viewer/measures-overlay.js @@ -66,7 +66,7 @@ define([ data: { ps: 9999 } }).done(function (data) { metrics = _.filter(data.metrics, function (metric) { - return metric.type.key !== 'DATA'; + return metric.type !== 'DATA' && !metric.hidden; }); metrics = _.sortBy(metrics, 'name'); }); @@ -120,6 +120,7 @@ define([ measures = that.model.get('measures') || {}; measuresList.forEach(function (m) { var metric = _.findWhere(metrics, { key: m.key }); + console.log(m.key, metric); metric.value = m.frmt_val || m.data; measures[m.key] = m.frmt_val || m.data; measures[m.key + '_raw'] = m.val; diff --git a/server/sonar-web/src/test/js/metrics-spec.js b/server/sonar-web/src/test/js/metrics-spec.js index c4f9805e138..f8fc0a8b68c 100644 --- a/server/sonar-web/src/test/js/metrics-spec.js +++ b/server/sonar-web/src/test/js/metrics-spec.js @@ -32,7 +32,7 @@ casper.test.begin(testName('List'), 9, function (test) { test.assertSelectorContains('#metrics-list .js-metric-name', 'Business value'); test.assertSelectorContains('#metrics-list .js-metric-key', 'business_value'); test.assertSelectorContains('#metrics-list .js-metric-domain', 'Complexity'); - test.assertSelectorContains('#metrics-list .js-metric-type', 'Percent'); + test.assertSelectorContains('#metrics-list .js-metric-type', 'PERCENT'); test.assertSelectorContains('#metrics-list .js-metric-description', 'Description of Business value'); test.assertElementCount('#metrics-list .js-metric-update', 3); test.assertElementCount('#metrics-list .js-metric-delete', 3); @@ -210,7 +210,7 @@ casper.test.begin(testName('Update'), 4, function (test) { test.assertSelectorContains('#metrics-list [data-id="3"] .js-metric-key', 'updated_key'); test.assertSelectorContains('#metrics-list [data-id="3"] .js-metric-name', 'Updated Name'); test.assertSelectorContains('#metrics-list [data-id="3"] .js-metric-domain', 'Random Domain'); - test.assertSelectorContains('#metrics-list [data-id="3"] .js-metric-type', 'Duration'); + test.assertSelectorContains('#metrics-list [data-id="3"] .js-metric-type', 'WORK_DUR'); }) .then(function () { diff --git a/server/sonar-web/src/test/json/metrics-spec/search-big-1.json b/server/sonar-web/src/test/json/metrics-spec/search-big-1.json index cedb98c247a..ab2bbb7068d 100644 --- a/server/sonar-web/src/test/json/metrics-spec/search-big-1.json +++ b/server/sonar-web/src/test/json/metrics-spec/search-big-1.json @@ -5,21 +5,23 @@ "key": "burned_budget", "name": "Burned budget", "domain": "Management", - "type": { - "key": "FLOAT", - "name": "Float" - } + "type": "FLOAT", + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": true }, { "id": "2", "key": "business_value", "name": "Business value", "domain": "Complexity", - "type": { - "key": "PERCENT", - "name": "Percent" - }, - "description": "Description of Business value" + "type": "PERCENT", + "description": "Description of Business value", + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": true } ], "total": 3, diff --git a/server/sonar-web/src/test/json/metrics-spec/search-big-2.json b/server/sonar-web/src/test/json/metrics-spec/search-big-2.json index 432d6c007bb..1243aa1832d 100644 --- a/server/sonar-web/src/test/json/metrics-spec/search-big-2.json +++ b/server/sonar-web/src/test/json/metrics-spec/search-big-2.json @@ -5,10 +5,11 @@ "key": "team_size", "name": "Team size", "domain": "Management", - "type": { - "key": "INT", - "name": "Integer" - } + "type": "INT", + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": true } ], "total": 3, diff --git a/server/sonar-web/src/test/json/metrics-spec/search-created.json b/server/sonar-web/src/test/json/metrics-spec/search-created.json index 879b52af9d0..783d5d66803 100644 --- a/server/sonar-web/src/test/json/metrics-spec/search-created.json +++ b/server/sonar-web/src/test/json/metrics-spec/search-created.json @@ -5,41 +5,45 @@ "key": "burned_budget", "name": "Burned budget", "domain": "Management", - "type": { - "key": "FLOAT", - "name": "Float" - } + "type": "FLOAT", + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": true }, { "id": "2", "key": "business_value", "name": "Business value", "domain": "Complexity", - "type": { - "key": "PERCENT", - "name": "Percent" - }, - "description": "Description of Business value" + "type": "PERCENT", + "description": "Description of Business value", + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": true }, { "id": "3", "key": "team_size", "name": "Team size", "domain": "Management", - "type": { - "key": "INT", - "name": "Integer" - } + "type": "INT", + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": true }, { "id": "4", "key": "new_metric", "name": "New Metric", "domain": "Domain for New Metric", - "type": { - "key": "RATING", - "name": "Rating" - } + "type": "RATING", + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": true } ], "total": 4, diff --git a/server/sonar-web/src/test/json/metrics-spec/search-updated.json b/server/sonar-web/src/test/json/metrics-spec/search-updated.json index 639f5835a63..060e33f143c 100644 --- a/server/sonar-web/src/test/json/metrics-spec/search-updated.json +++ b/server/sonar-web/src/test/json/metrics-spec/search-updated.json @@ -5,31 +5,34 @@ "key": "burned_budget", "name": "Burned budget", "domain": "Management", - "type": { - "key": "FLOAT", - "name": "Float" - } + "type": "FLOAT", + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": true }, { "id": "2", "key": "business_value", "name": "Business value", "domain": "Complexity", - "type": { - "key": "PERCENT", - "name": "Percent" - }, - "description": "Description of Business value" + "type": "PERCENT", + "description": "Description of Business value", + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": true }, { "id": "3", "key": "updated_key", "name": "Updated Name", "domain": "Random Domain", - "type": { - "key": "WORK_DUR", - "name": "Duration" - } + "type": "WORK_DUR", + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": true } ], "total": 3, diff --git a/server/sonar-web/src/test/json/metrics-spec/search.json b/server/sonar-web/src/test/json/metrics-spec/search.json index fb7c53c35eb..2d5dec0b56a 100644 --- a/server/sonar-web/src/test/json/metrics-spec/search.json +++ b/server/sonar-web/src/test/json/metrics-spec/search.json @@ -5,31 +5,34 @@ "key": "burned_budget", "name": "Burned budget", "domain": "Management", - "type": { - "key": "FLOAT", - "name": "Float" - } + "type": "FLOAT", + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": true }, { "id": "2", "key": "business_value", "name": "Business value", "domain": "Complexity", - "type": { - "key": "PERCENT", - "name": "Percent" - }, - "description": "Description of Business value" + "type": "PERCENT", + "description": "Description of Business value", + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": true }, { "id": "3", "key": "team_size", "name": "Team size", "domain": "Management", - "type": { - "key": "INT", - "name": "Integer" - } + "type": "INT", + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": true } ], "total": 3, diff --git a/server/sonar-web/src/test/json/metrics-spec/types.json b/server/sonar-web/src/test/json/metrics-spec/types.json index fcfb12493e2..c160e087e24 100644 --- a/server/sonar-web/src/test/json/metrics-spec/types.json +++ b/server/sonar-web/src/test/json/metrics-spec/types.json @@ -1,48 +1,15 @@ { "types": [ - { - "key": "INT", - "name": "Integer" - }, - { - "key": "FLOAT", - "name": "Float" - }, - { - "key": "PERCENT", - "name": "Percent" - }, - { - "key": "BOOL", - "name": "Yes/No" - }, - { - "key": "STRING", - "name": "String" - }, - { - "key": "MILLISEC", - "name": "Milliseconds" - }, - { - "key": "DATA", - "name": "Data" - }, - { - "key": "LEVEL", - "name": "Level" - }, - { - "key": "DISTRIB", - "name": "Distribution" - }, - { - "key": "RATING", - "name": "Rating" - }, - { - "key": "WORK_DUR", - "name": "Work Duration" - } + "INT", + "FLOAT", + "PERCENT", + "BOOL", + "STRING", + "MILLISEC", + "DATA", + "LEVEL", + "DISTRIB", + "RATING", + "WORK_DUR" ] } diff --git a/server/sonar-web/src/test/json/source-viewer-spec/metrics.json b/server/sonar-web/src/test/json/source-viewer-spec/metrics.json index b7c4cf3e674..e50c696fe02 100644 --- a/server/sonar-web/src/test/json/source-viewer-spec/metrics.json +++ b/server/sonar-web/src/test/json/source-viewer-spec/metrics.json @@ -3,1341 +3,1464 @@ { "id": "11", "key": "accessors", + "type": "INT", "name": "Accessors", "description": "Accessors", "domain": "Size", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": true, + "custom": false }, { "id": "94", "key": "blocker_violations", + "type": "INT", "name": "Blocker issues", "description": "Blocker issues", "domain": "Issues", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "45", "key": "conditions_to_cover", + "type": "INT", "name": "Branches to cover", "description": "Branches to cover", "domain": "Tests", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "63", "key": "new_it_conditions_to_cover", + "type": "INT", "name": "Branches to cover by IT on new code", "description": "Branches to cover by Integration Tests on new code", "domain": "Tests (Integration)", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "46", "key": "new_conditions_to_cover", + "type": "INT", "name": "Branches to cover on new code", "description": "Branches to cover on new code", "domain": "Tests", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": 0, + "qualitative": false, + "hidden": true, + "custom": false }, { "id": "143", "key": "burned_budget", + "type": "FLOAT", "name": "Burned budget", "domain": "Management", - "type": { - "key": "FLOAT", - "name": "Float" - } + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": true }, { "id": "144", "key": "business_value", + "type": "FLOAT", "name": "Business value", "domain": "Management", - "type": { - "key": "FLOAT", - "name": "Float" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": true }, { "id": "6", "key": "classes", + "type": "INT", "name": "Classes", "description": "Classes", "domain": "Size", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "26", "key": "class_complexity_distribution", + "type": "DISTRIB", "name": "Classes distribution /complexity", "description": "Classes distribution /complexity", "domain": "Complexity", - "type": { - "key": "DISTRIB", - "name": "Distribution" - } + "direction": 0, + "qualitative": true, + "hidden": true, + "custom": false }, { "id": "19", "key": "commented_out_code_lines", + "type": "INT", "name": "Commented-out LOC", "description": "Commented lines of code", "domain": "Documentation", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": true, + "custom": false }, { "id": "15", "key": "comment_lines", + "type": "INT", "name": "Comment lines", "description": "Number of comment lines", "domain": "Documentation", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": 1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "137", "key": "comment_lines_data", + "type": "DATA", "name": "comment_lines_data", "domain": "Documentation", - "type": { - "key": "DATA", - "name": "Data" - } + "direction": 0, + "qualitative": false, + "hidden": true, + "custom": false }, { "id": "16", "key": "comment_lines_density", + "type": "PERCENT", "name": "Comments (%)", "description": "Comments balanced by ncloc + comment lines", "domain": "Documentation", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "20", "key": "complexity", + "type": "INT", "name": "Complexity", "description": "Cyclomatic complexity", "domain": "Complexity", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "23", "key": "class_complexity", + "type": "FLOAT", "name": "Complexity /class", "description": "Complexity average by class", "domain": "Complexity", - "type": { - "key": "FLOAT", - "name": "Float" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "21", "key": "file_complexity", + "type": "FLOAT", "name": "Complexity /file", "description": "Complexity average by file", "domain": "Complexity", - "type": { - "key": "FLOAT", - "name": "Float" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "25", "key": "function_complexity", + "type": "FLOAT", "name": "Complexity /function", "description": "Complexity average by function", "domain": "Complexity", - "type": { - "key": "FLOAT", - "name": "Float" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "22", "key": "complexity_in_classes", + "type": "INT", "name": "Complexity in classes", "description": "Cyclomatic complexity in classes", "domain": "Complexity", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": true, + "custom": false }, { "id": "24", "key": "complexity_in_functions", + "type": "INT", "name": "Complexity in functions", "description": "Cyclomatic complexity in functions", "domain": "Complexity", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": true, + "custom": false }, { "id": "49", "key": "branch_coverage", + "type": "PERCENT", "name": "Condition coverage", "description": "Condition coverage", "domain": "Tests", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "67", "key": "new_it_branch_coverage", + "type": "PERCENT", "name": "Condition coverage by IT on new code", "description": "Condition coverage by Integration Tests of new/changed code", "domain": "Tests (Integration)", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "50", "key": "new_branch_coverage", + "type": "PERCENT", "name": "Condition coverage on new code", "description": "Condition coverage of new/changed code", "domain": "Tests", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "51", "key": "conditions_by_line", + "type": "DATA", "name": "Conditions by line", "domain": "Tests", - "type": { - "key": "DATA", - "name": "Data" - } + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "108", "key": "confirmed_issues", + "type": "INT", "name": "Confirmed issues", "description": "Confirmed issues", "domain": "Issues", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "36", "key": "coverage", + "type": "PERCENT", "name": "Coverage", "description": "Coverage by unit tests", "domain": "Tests", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "54", "key": "new_it_coverage", + "type": "PERCENT", "name": "Coverage by IT on new code", "description": "Integration Tests Coverage of new/changed code", "domain": "Tests (Integration)", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "44", "key": "coverage_line_hits_data", + "type": "DATA", "name": "Coverage hits by line", "domain": "Tests", - "type": { - "key": "DATA", - "name": "Data" - } + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "37", "key": "new_coverage", + "type": "PERCENT", "name": "Coverage on new code", "description": "Coverage of new/changed code", "domain": "Tests", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "52", "key": "covered_conditions_by_line", + "type": "DATA", "name": "Covered conditions by line", "domain": "Tests", - "type": { - "key": "DATA", - "name": "Data" - } + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "95", "key": "critical_violations", + "type": "INT", "name": "Critical issues", "description": "Critical issues", "domain": "Issues", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "146", "key": "days_since_last_commit", + "type": "INT", "name": "Days since last commit", "domain": "SCM", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "8", "key": "directories", + "type": "INT", "name": "Directories", "description": "Directories", "domain": "Size", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "88", "key": "duplicated_blocks", + "type": "INT", "name": "Duplicated blocks", "description": "Duplicated blocks", "domain": "Duplication", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "89", "key": "duplicated_files", + "type": "INT", "name": "Duplicated files", "description": "Duplicated files", "domain": "Duplication", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "87", "key": "duplicated_lines", + "type": "INT", "name": "Duplicated lines", "description": "Duplicated lines", "domain": "Duplication", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "90", "key": "duplicated_lines_density", + "type": "PERCENT", "name": "Duplicated lines (%)", "description": "Duplicated lines balanced by statements", "domain": "Duplication", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "91", "key": "duplications_data", + "type": "DATA", "name": "Duplications details", "description": "Duplications details", "domain": "Duplication", - "type": { - "key": "DATA", - "name": "Data" - } + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "105", "key": "false_positive_issues", + "type": "INT", "name": "False positive issues", "description": "False positive issues", "domain": "Issues", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "7", "key": "files", + "type": "INT", "name": "Files", "description": "Number of files", "domain": "Size", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "28", "key": "file_complexity_distribution", + "type": "DISTRIB", "name": "Files distribution /complexity", "description": "Files distribution /complexity", "domain": "Complexity", - "type": { - "key": "DISTRIB", - "name": "Distribution" - } + "direction": 0, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "10", "key": "functions", + "type": "INT", "name": "Functions", "description": "Functions", "domain": "Size", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "27", "key": "function_complexity_distribution", + "type": "DISTRIB", "name": "Functions distribution /complexity", "description": "Functions distribution /complexity", "domain": "Complexity", - "type": { - "key": "DISTRIB", - "name": "Distribution" - } + "direction": 0, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "2", "key": "generated_lines", + "type": "INT", "name": "Generated Lines", "description": "Number of generated lines", "domain": "Size", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "5", "key": "generated_ncloc", + "type": "INT", "name": "Generated lines of code", "description": "Generated non Commenting Lines of Code", "domain": "Size", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "98", "key": "info_violations", + "type": "INT", "name": "Info issues", "description": "Info issues", "domain": "Issues", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "93", "key": "violations", + "type": "INT", "name": "Issues", "description": "Issues", "domain": "Issues", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "62", "key": "it_conditions_to_cover", + "type": "INT", "name": "IT branches to cover", "description": "Integration Tests conditions to cover", "domain": "Tests (Integration)", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": 1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "66", "key": "it_branch_coverage", + "type": "PERCENT", "name": "IT condition coverage", "description": "IT condition coverage", "domain": "Tests (Integration)", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "68", "key": "it_conditions_by_line", + "type": "DATA", "name": "IT conditions by line", "domain": "Tests (Integration)", - "type": { - "key": "DATA", - "name": "Data" - } + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "53", "key": "it_coverage", + "type": "PERCENT", "name": "IT coverage", "description": "Coverage by integration tests", "domain": "Tests (Integration)", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "61", "key": "it_coverage_line_hits_data", + "type": "DATA", "name": "IT coverage hits data", "description": "Integration Tests Code coverage line hits data", "domain": "Tests (Integration)", - "type": { - "key": "DATA", - "name": "Data" - } + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "69", "key": "it_covered_conditions_by_line", + "type": "DATA", "name": "IT covered conditions by line", "domain": "Tests (Integration)", - "type": { - "key": "DATA", - "name": "Data" - } + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "59", "key": "it_line_coverage", + "type": "PERCENT", "name": "IT line coverage", "description": "IT line coverage", "domain": "Tests (Integration)", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "55", "key": "it_lines_to_cover", + "type": "INT", "name": "IT lines to cover", "description": "Lines to cover by Integration Tests", "domain": "Tests (Integration)", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": 1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "64", "key": "it_uncovered_conditions", + "type": "INT", "name": "IT uncovered branches", "description": "Integration Tests uncovered conditions", "domain": "Tests (Integration)", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "57", "key": "it_uncovered_lines", + "type": "INT", "name": "IT uncovered lines", "description": "IT uncovered lines", "domain": "Tests (Integration)", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "42", "key": "line_coverage", + "type": "PERCENT", "name": "Line coverage", "description": "Line coverage", "domain": "Tests", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "60", "key": "new_it_line_coverage", + "type": "PERCENT", "name": "Line coverage by IT on new code", "description": "Line Coverage by Integration Tests of added/changed code", "domain": "Tests (Integration)", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "43", "key": "new_line_coverage", + "type": "PERCENT", "name": "Line coverage on new code", "description": "Line coverage of added/changed code", "domain": "Tests", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "1", "key": "lines", + "type": "INT", "name": "Lines", "description": "Lines", "domain": "Size", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "3", "key": "ncloc", + "type": "INT", "name": "Lines of code", "description": "Non Commenting Lines of Code", "domain": "Size", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "4", "key": "ncloc_language_distribution", + "type": "DATA", "name": "Lines of code per language", "description": "Non Commenting Lines of Code Distributed By Language", "domain": "Size", - "type": { - "key": "DATA", - "name": "Data" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "38", "key": "lines_to_cover", + "type": "INT", "name": "Lines to cover", "description": "Lines to cover", "domain": "Tests", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": 1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "56", "key": "new_it_lines_to_cover", + "type": "INT", "name": "Lines to cover by IT on new code", "description": "Lines to cover by Integration Tests on new code", "domain": "Tests (Integration)", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "39", "key": "new_lines_to_cover", + "type": "INT", "name": "Lines to cover on new code", "description": "Lines to cover on new code", "domain": "Tests", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "96", "key": "major_violations", + "type": "INT", "name": "Major issues", "description": "Major issues", "domain": "Issues", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "97", "key": "minor_violations", + "type": "INT", "name": "Minor issues", "description": "Minor issues", "domain": "Issues", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "136", "key": "ncloc_data", + "type": "DATA", "name": "ncloc_data", "domain": "Size", - "type": { - "key": "DATA", - "name": "Data" - } + "direction": 0, + "qualitative": false, + "hidden": true, + "custom": false }, { "id": "100", "key": "new_blocker_violations", + "type": "INT", "name": "New Blocker issues", "description": "New Blocker issues", "domain": "Issues", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "101", "key": "new_critical_violations", + "type": "INT", "name": "New Critical issues", "description": "New Critical issues", "domain": "Issues", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "104", "key": "new_info_violations", + "type": "INT", "name": "New Info issues", "description": "New Info issues", "domain": "Issues", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "99", "key": "new_violations", + "type": "INT", "name": "New issues", "description": "New Issues", "domain": "Issues", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "102", "key": "new_major_violations", + "type": "INT", "name": "New Major issues", "description": "New Major issues", "domain": "Issues", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "103", "key": "new_minor_violations", + "type": "INT", "name": "New Minor issues", "description": "New Minor issues", "domain": "Issues", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "106", "key": "open_issues", + "type": "INT", "name": "Open issues", "description": "Open issues", "domain": "Issues", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "79", "key": "overall_conditions_to_cover", + "type": "INT", "name": "Overall branches to cover", "description": "Branches to cover by all tests", "domain": "Tests (Overall)", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": 1, + "qualitative": false, + "hidden": true, + "custom": false }, { "id": "80", "key": "new_overall_conditions_to_cover", + "type": "INT", "name": "Overall branches to cover on new code", "description": "New branches to cover by all tests", "domain": "Tests (Overall)", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": 0, + "qualitative": false, + "hidden": true, + "custom": false }, { "id": "83", "key": "overall_branch_coverage", + "type": "PERCENT", "name": "Overall condition coverage", "description": "Condition coverage by all tests", "domain": "Tests (Overall)", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "84", "key": "new_overall_branch_coverage", + "type": "PERCENT", "name": "Overall condition coverage on new code", "description": "Condition coverage of new/changed code by all tests", "domain": "Tests (Overall)", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "85", "key": "overall_conditions_by_line", + "type": "DATA", "name": "Overall conditions by line", "description": "Overall conditions by all tests and by line", "domain": "Tests (Overall)", - "type": { - "key": "DATA", - "name": "Data" - } + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "70", "key": "overall_coverage", + "type": "PERCENT", "name": "Overall coverage", "description": "Overall test coverage", "domain": "Tests (Overall)", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "78", "key": "overall_coverage_line_hits_data", + "type": "DATA", "name": "Overall coverage hits by line", "description": "Coverage hits by all tests and by line", "domain": "Tests (Overall)", - "type": { - "key": "DATA", - "name": "Data" - } + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "71", "key": "new_overall_coverage", + "type": "PERCENT", "name": "Overall coverage on new code", "description": "Overall coverage of new/changed code", "domain": "Tests (Overall)", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "86", "key": "overall_covered_conditions_by_line", + "type": "DATA", "name": "Overall covered branches by line", "description": "Overall covered branches by all tests and by line", "domain": "Tests (Overall)", - "type": { - "key": "DATA", - "name": "Data" - } + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "76", "key": "overall_line_coverage", + "type": "PERCENT", "name": "Overall line coverage", "description": "Line coverage by all tests", "domain": "Tests (Overall)", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "77", "key": "new_overall_line_coverage", + "type": "PERCENT", "name": "Overall line coverage on new code", "description": "Line coverage of added/changed code by all tests", "domain": "Tests (Overall)", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "72", "key": "overall_lines_to_cover", + "type": "INT", "name": "Overall lines to cover", "description": "Overall lines to cover by all tests", "domain": "Tests (Overall)", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": 1, + "qualitative": false, + "hidden": true, + "custom": false }, { "id": "73", "key": "new_overall_lines_to_cover", + "type": "INT", "name": "Overall lines to cover on new code", "description": "New lines to cover by all tests", "domain": "Tests (Overall)", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "81", "key": "overall_uncovered_conditions", + "type": "INT", "name": "Overall uncovered branches", "description": "Uncovered branches by all tests", "domain": "Tests (Overall)", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "82", "key": "new_overall_uncovered_conditions", + "type": "INT", "name": "Overall uncovered branches on new code", "description": "New branches that are not covered by any test", "domain": "Tests (Overall)", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "74", "key": "overall_uncovered_lines", + "type": "INT", "name": "Overall uncovered lines", "description": "Uncovered lines by all tests", "domain": "Tests (Overall)", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "75", "key": "new_overall_uncovered_lines", + "type": "INT", "name": "Overall uncovered lines on new code", "description": "New lines that are not covered by any tests", "domain": "Tests (Overall)", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "9", "key": "packages", + "type": "INT", "name": "Packages", "description": "Packages", "domain": "Size", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": true, + "custom": false }, { "id": "140", "key": "profile", + "type": "DATA", "name": "Profile", "description": "Selected quality profile", "domain": "General", - "type": { - "key": "DATA", - "name": "Data" - } + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "142", "key": "quality_profiles", + "type": "DATA", "name": "Profiles", "description": "Details of quality profiles used during analysis", "domain": "General", - "type": { - "key": "DATA", - "name": "Data" - } + "direction": 0, + "qualitative": false, + "hidden": true, + "custom": false }, { "id": "141", "key": "profile_version", + "type": "INT", "name": "Profile version", "description": "Selected quality profile version", "domain": "General", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": 0, + "qualitative": false, + "hidden": true, + "custom": false }, { "id": "14", "key": "projects", + "type": "INT", "name": "Projects", "description": "Number of projects", "domain": "Size", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "13", "key": "public_api", + "type": "INT", "name": "Public API", "description": "Public API", "domain": "Size", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "17", "key": "public_documented_api_density", + "type": "PERCENT", "name": "Public documented API (%)", "description": "Public documented classes and functions balanced by ncloc", "domain": "Documentation", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "18", "key": "public_undocumented_api", + "type": "INT", "name": "Public undocumented API", "description": "Public undocumented classes, functions and variables", "domain": "Documentation", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "139", "key": "quality_gate_details", + "type": "DATA", "name": "Quality Gate Details", "description": "The project detailed status with regard to its quality gate.", "domain": "General", - "type": { - "key": "DATA", - "name": "Data" - } + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "138", "key": "alert_status", + "type": "LEVEL", "name": "Quality Gate Status", "description": "The project status with regard to its quality gate.", "domain": "General", - "type": { - "key": "LEVEL", - "name": "Level" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "107", "key": "reopened_issues", + "type": "INT", "name": "Reopened issues", "description": "Reopened issues", "domain": "Issues", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "32", "key": "skipped_tests", + "type": "INT", "name": "Skipped unit tests", "description": "Number of skipped unit tests", "domain": "Tests", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "134", "key": "development_cost", + "type": "STRING", "name": "SQALE Development Cost", "domain": "Technical Debt", - "type": { - "key": "STRING", - "name": "String" - } + "direction": -1, + "qualitative": true, + "hidden": true, + "custom": false }, { "id": "133", "key": "sqale_rating", + "type": "RATING", "name": "SQALE Rating", "domain": "Technical Debt", - "type": { - "key": "RATING", - "name": "Rating" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "135", "key": "sqale_debt_ratio", + "type": "PERCENT", "name": "SQALE Technical Debt Ratio", "description": "Ratio of the technical debt compared to what it would cost to develop the whole source code from scratch.", "domain": "Technical Debt", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "12", "key": "statements", + "type": "INT", "name": "Statements", "description": "Number of statements", "domain": "Size", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "145", "key": "team_size", + "type": "INT", "name": "Team size", "domain": "Management", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": 0, + "qualitative": false, + "hidden": false, + "custom": true }, { "id": "131", "key": "sqale_index", + "type": "WORK_DUR", "name": "Technical Debt", "domain": "Technical Debt", - "type": { - "key": "WORK_DUR", - "name": "Work Duration" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "132", "key": "new_technical_debt", + "type": "WORK_DUR", "name": "Technical Debt on new code", "description": "Technical Debt of new code", "domain": "Technical Debt", - "type": { - "key": "WORK_DUR", - "name": "Work Duration" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "47", "key": "uncovered_conditions", + "type": "INT", "name": "Uncovered branches", "description": "Uncovered branches", "domain": "Tests", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "65", "key": "new_it_uncovered_conditions", + "type": "INT", "name": "Uncovered branches by IT on new code", "description": "Uncovered branches by Integration Tests on new code", "domain": "Tests (Integration)", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "48", "key": "new_uncovered_conditions", + "type": "INT", "name": "Uncovered branches on new code", "description": "Uncovered branches on new code", "domain": "Tests", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "40", "key": "uncovered_lines", + "type": "INT", "name": "Uncovered lines", "description": "Uncovered lines", "domain": "Tests", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "58", "key": "new_it_uncovered_lines", + "type": "INT", "name": "Uncovered lines by IT on new code", "description": "Uncovered lines by IT on new code", "domain": "Tests (Integration)", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "41", "key": "new_uncovered_lines", + "type": "INT", "name": "Uncovered lines on new code", "description": "Uncovered lines on new code", "domain": "Tests", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "31", "key": "test_errors", + "type": "INT", "name": "Unit test errors", "description": "Number of unit test errors", "domain": "Tests", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "33", "key": "test_failures", + "type": "INT", "name": "Unit test failures", "description": "Number of unit test failures", "domain": "Tests", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": true, + "hidden": false, + "custom": false }, { "id": "29", "key": "tests", + "type": "INT", "name": "Unit tests", "description": "Number of unit tests", "domain": "Tests", - "type": { - "key": "INT", - "name": "Integer" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "35", "key": "test_data", + "type": "DATA", "name": "Unit tests details", "description": "Unit tests details", "domain": "Tests", - "type": { - "key": "DATA", - "name": "Data" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "30", "key": "test_execution_time", + "type": "MILLISEC", "name": "Unit tests duration", "description": "Execution duration of unit tests", "domain": "Tests", - "type": { - "key": "MILLISEC", - "name": "Milliseconds" - } + "direction": -1, + "qualitative": false, + "hidden": false, + "custom": false }, { "id": "34", "key": "test_success_density", + "type": "PERCENT", "name": "Unit test success (%)", "description": "Density of successful unit tests", "domain": "Tests", - "type": { - "key": "PERCENT", - "name": "Percent" - } + "direction": 1, + "qualitative": true, + "hidden": false, + "custom": false } ], "total": 123, diff --git a/sonar-core/src/main/resources/org/sonar/l10n/core.properties b/sonar-core/src/main/resources/org/sonar/l10n/core.properties index 44d646999a5..8109e55e18e 100644 --- a/sonar-core/src/main/resources/org/sonar/l10n/core.properties +++ b/sonar-core/src/main/resources/org/sonar/l10n/core.properties @@ -2742,6 +2742,25 @@ metric.sqale_debt_ratio.short_name=Debt Ratio metric.sqale_debt_ratio.description=Ratio of the actual technical debt compared to the estimated cost to develop the whole source code from scratch. +#-------------------------------------------------------------------------------------------------------------------- +# +# METRIC TYPES +# +#-------------------------------------------------------------------------------------------------------------------- + +metric.type.INT=Integer +metric.type.FLOAT=Float +metric.type.PERCENT=Percent +metric.type.BOOL=Boolean +metric.type.STRING=String +metric.type.MILLISEC=Milliseconds +metric.type.DATA=Data +metric.type.LEVEL=Level +metric.type.DISTRIB=Distribution +metric.type.RATING=Rating +metric.type.WORK_DUR=Work Duration + + #------------------------------------------------------------------------------ # # GLOBAL PERMISSIONS -- 2.39.5