aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--server/sonar-web/src/main/js/coding-rules/app.js10
-rw-r--r--server/sonar-web/src/main/js/coding-rules/facets/characteristic-facet.js25
-rw-r--r--server/sonar-web/src/main/js/coding-rules/rule-details-view.js1
-rw-r--r--server/sonar-web/src/main/js/coding-rules/show-app.js10
-rw-r--r--server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-active-severity-facet/app.json230
-rw-r--r--server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-available-since/app.json230
-rw-r--r--server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-inheritance-facet/app.json230
-rw-r--r--server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-no-available-profiles-for-activation/app.json230
-rw-r--r--server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-quality-profile-facet/app.json230
-rw-r--r--server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-query-facet/app.json230
-rw-r--r--server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-rule-permalink/app.json230
-rw-r--r--server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-activate-profile/app.json230
-rw-r--r--server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-create-custom-rules/app.json230
-rw-r--r--server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-create-manual-rules/app.json230
-rw-r--r--server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-delete-custom-rules/app.json230
-rw-r--r--server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-delete-manual-rules/app.json230
-rw-r--r--server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-custom-rules/app.json230
-rw-r--r--server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-deprecated-label/app.json230
-rw-r--r--server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-details/app.json230
-rw-r--r--server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-empty-list/app.json230
-rw-r--r--server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-rule-issues/app.json230
21 files changed, 3236 insertions, 720 deletions
diff --git a/server/sonar-web/src/main/js/coding-rules/app.js b/server/sonar-web/src/main/js/coding-rules/app.js
index cbf845d6410..b467dbaadb7 100644
--- a/server/sonar-web/src/main/js/coding-rules/app.js
+++ b/server/sonar-web/src/main/js/coding-rules/app.js
@@ -93,8 +93,14 @@ requirejs([
};
};
- App.getSubCharacteristicName = function (name) {
- return (App.characteristics[name] || '').replace(': ', ' > ');
+ App.getSubCharacteristicName = function (key) {
+ if (key != null) {
+ var ch = _.findWhere(App.characteristics, { key: key }),
+ parent = _.findWhere(App.characteristics, { key: ch.parent });
+ return [parent.name, ch.name].join(' > ');
+ } else {
+ return null;
+ }
};
var appXHR = $.get(baseUrl + '/api/rules/app').done(function(r) {
diff --git a/server/sonar-web/src/main/js/coding-rules/facets/characteristic-facet.js b/server/sonar-web/src/main/js/coding-rules/facets/characteristic-facet.js
index 256db1fa3d8..359131f5f04 100644
--- a/server/sonar-web/src/main/js/coding-rules/facets/characteristic-facet.js
+++ b/server/sonar-web/src/main/js/coding-rules/facets/characteristic-facet.js
@@ -1,20 +1,20 @@
define([
- 'coding-rules/facets/base-facet'
+ 'coding-rules/facets/base-facet'
], function (BaseFacet) {
- var $ = jQuery;
-
return BaseFacet.extend({
getValues: function () {
var values = this.model.getValues(),
characteristics = this.options.app.characteristics;
return values.map(function (value) {
- var label = characteristics[value.val];
- if (value.val === 'NONE') {
- label = t('coding_rules.noncharacterized');
+ var ch = _.findWhere(characteristics, { key: value.val });
+ if (ch != null) {
+ _.extend(value, ch, { label: ch.name });
+ } else {
+ _.extend(value, { label: t('coding_rules.noncharacterized') });
}
- return _.extend(value, { label: label });
+ return value;
});
},
@@ -24,17 +24,6 @@ define([
});
},
- toggleFacet: function (e) {
- var obj = {},
- property = this.model.get('property');
- if ($(e.currentTarget).is('.active')) {
- obj[property] = null;
- } else {
- obj[property] = $(e.currentTarget).data('value');
- }
- this.options.app.state.updateFilter(obj);
- },
-
serializeData: function () {
return _.extend(BaseFacet.prototype.serializeData.apply(this, arguments), {
values: this.sortValues(this.getValues())
diff --git a/server/sonar-web/src/main/js/coding-rules/rule-details-view.js b/server/sonar-web/src/main/js/coding-rules/rule-details-view.js
index 95475fe7b5a..c6c6d75cb64 100644
--- a/server/sonar-web/src/main/js/coding-rules/rule-details-view.js
+++ b/server/sonar-web/src/main/js/coding-rules/rule-details-view.js
@@ -171,7 +171,6 @@ define([
isEditable: isEditable,
canWrite: this.options.app.canWrite,
qualityProfilesVisible: qualityProfilesVisible,
- subCharacteristic: this.options.app.getSubCharacteristicName(this.model.get('debtSubChar')),
allTags: _.union(this.model.get('sysTags'), this.model.get('tags'))
});
}
diff --git a/server/sonar-web/src/main/js/coding-rules/show-app.js b/server/sonar-web/src/main/js/coding-rules/show-app.js
index 3e815a93f26..1505c23ec51 100644
--- a/server/sonar-web/src/main/js/coding-rules/show-app.js
+++ b/server/sonar-web/src/main/js/coding-rules/show-app.js
@@ -42,8 +42,14 @@ requirejs([
};
};
- App.getSubCharacteristicName = function (name) {
- return (App.characteristics[name] || '').replace(': ', ' > ');
+ App.getSubCharacteristicName = function (key) {
+ if (key != null) {
+ var ch = _.findWhere(App.characteristics, { key: key }),
+ parent = _.findWhere(App.characteristics, { key: ch.parent });
+ return [parent.name, ch.name].join(' > ');
+ } else {
+ return null;
+ }
};
var appXHR = $.get(baseUrl + '/api/rules/app').done(function(r) {
diff --git a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-active-severity-facet/app.json b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-active-severity-facet/app.json
index 4f3319c8707..0eb43bc39f7 100644
--- a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-active-severity-facet/app.json
+++ b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-active-severity-facet/app.json
@@ -124,45 +124,193 @@
"DEPRECATED": "Deprecated",
"READY": "Ready"
},
- "characteristics": {
- "UNDERSTANDABILITY": "Maintainability: Understandability",
- "MAINTAINABILITY": "Maintainability",
- "TIME_ZONE_RELATED_PORTABILITY": "Portability: Time zone related portability",
- "READABILITY": "Maintainability: Readability",
- "SECURITY_FEATURES": "Security: Security features",
- "ARCHITECTURE_RELIABILITY": "Reliability: Architecture related reliability",
- "OS_RELATED_PORTABILITY": "Portability: OS related portability",
- "EXCEPTION_HANDLING": "Reliability: Exception handling",
- "LOGIC_CHANGEABILITY": "Changeability: Logic related changeability",
- "SOFTWARE_RELATED_PORTABILITY": "Portability: Software related portability",
- "INPUT_VALIDATION_AND_REPRESENTATION": "Security: Input validation and representation",
- "LANGUAGE_RELATED_PORTABILITY": "Portability: Language related portability",
- "ERRORS": "Security: Errors",
- "SECURITY": "Security",
- "RELIABILITY": "Reliability",
- "PORTABILITY": "Portability",
- "HARDWARE_RELATED_PORTABILITY": "Portability: Hardware related portability",
- "SYNCHRONIZATION_RELIABILITY": "Reliability: Synchronization related reliability",
- "TRANSPORTABILITY": "Reusability: Transportability",
- "COMPILER_RELATED_PORTABILITY": "Portability: Compiler related portability",
- "RESOURCE_RELIABILITY": "Reliability: Resource",
- "CPU_EFFICIENCY": "Efficiency: Processor use",
- "EFFICIENCY": "Efficiency",
- "CHANGEABILITY": "Changeability",
- "DATA_CHANGEABILITY": "Changeability: Data related changeability",
- "API_ABUSE": "Security: API abuse",
- "ARCHITECTURE_CHANGEABILITY": "Changeability: Architecture related changeability",
- "UNIT_TESTS": "Reliability: Unit tests",
- "INSTRUCTION_RELIABILITY": "Reliability: Instruction related reliability",
- "REUSABILITY": "Reusability",
- "MODULARITY": "Reusability: Modularity",
- "UNIT_TESTABILITY": "Testability: Unit level testability",
- "TESTABILITY": "Testability",
- "INTEGRATION_TESTABILITY": "Testability: Integration level testability",
- "NETWORK_USE": "Efficiency: Network use",
- "MEMORY_EFFICIENCY": "Efficiency: Memory use",
- "DATA_RELIABILITY": "Reliability: Data related reliability",
- "FAULT_TOLERANCE": "Reliability: Fault tolerance",
- "LOGIC_RELIABILITY": "Reliability: Logic related reliability"
- }
+ "characteristics": [
+ {
+ "key": "UNDERSTANDABILITY",
+ "name": "Understandability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "MAINTAINABILITY",
+ "name": "Maintainability"
+ },
+ {
+ "key": "TIME_ZONE_RELATED_PORTABILITY",
+ "name": "Time zone related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "READABILITY",
+ "name": "Readability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "SECURITY_FEATURES",
+ "name": "Security features",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_RELIABILITY",
+ "name": "Architecture related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "OS_RELATED_PORTABILITY",
+ "name": "OS related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "EXCEPTION_HANDLING",
+ "name": "Exception handling",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_CHANGEABILITY",
+ "name": "Logic related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "SOFTWARE_RELATED_PORTABILITY",
+ "name": "Software related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "INPUT_VALIDATION_AND_REPRESENTATION",
+ "name": "Input validation and representation",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "LANGUAGE_RELATED_PORTABILITY",
+ "name": "Language related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "ERRORS",
+ "name": "Errors",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "SECURITY",
+ "name": "Security"
+ },
+ {
+ "key": "RELIABILITY",
+ "name": "Reliability"
+ },
+ {
+ "key": "PORTABILITY",
+ "name": "Portability"
+ },
+ {
+ "key": "HARDWARE_RELATED_PORTABILITY",
+ "name": "Hardware related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "SYNCHRONIZATION_RELIABILITY",
+ "name": "Synchronization related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "TRANSPORTABILITY",
+ "name": "Transportability",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "COMPILER_RELATED_PORTABILITY",
+ "name": "Compiler related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "RESOURCE_RELIABILITY",
+ "name": "Resource",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "CPU_EFFICIENCY",
+ "name": "Processor use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "EFFICIENCY",
+ "name": "Efficiency"
+ },
+ {
+ "key": "CHANGEABILITY",
+ "name": "Changeability"
+ },
+ {
+ "key": "DATA_CHANGEABILITY",
+ "name": "Data related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "API_ABUSE",
+ "name": "API abuse",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_CHANGEABILITY",
+ "name": "Architecture related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "UNIT_TESTS",
+ "name": "Unit tests",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "INSTRUCTION_RELIABILITY",
+ "name": "Instruction related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "REUSABILITY",
+ "name": "Reusability"
+ },
+ {
+ "key": "MODULARITY",
+ "name": "Modularity",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "UNIT_TESTABILITY",
+ "name": "Unit level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "TESTABILITY",
+ "name": "Testability"
+ },
+ {
+ "key": "INTEGRATION_TESTABILITY",
+ "name": "Integration level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "NETWORK_USE",
+ "name": "Network use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "MEMORY_EFFICIENCY",
+ "name": "Memory use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "DATA_RELIABILITY",
+ "name": "Data related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "FAULT_TOLERANCE",
+ "name": "Fault tolerance",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_RELIABILITY",
+ "name": "Logic related reliability",
+ "parent": "RELIABILITY"
+ }
+ ]
}
diff --git a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-available-since/app.json b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-available-since/app.json
index 4f3319c8707..0eb43bc39f7 100644
--- a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-available-since/app.json
+++ b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-available-since/app.json
@@ -124,45 +124,193 @@
"DEPRECATED": "Deprecated",
"READY": "Ready"
},
- "characteristics": {
- "UNDERSTANDABILITY": "Maintainability: Understandability",
- "MAINTAINABILITY": "Maintainability",
- "TIME_ZONE_RELATED_PORTABILITY": "Portability: Time zone related portability",
- "READABILITY": "Maintainability: Readability",
- "SECURITY_FEATURES": "Security: Security features",
- "ARCHITECTURE_RELIABILITY": "Reliability: Architecture related reliability",
- "OS_RELATED_PORTABILITY": "Portability: OS related portability",
- "EXCEPTION_HANDLING": "Reliability: Exception handling",
- "LOGIC_CHANGEABILITY": "Changeability: Logic related changeability",
- "SOFTWARE_RELATED_PORTABILITY": "Portability: Software related portability",
- "INPUT_VALIDATION_AND_REPRESENTATION": "Security: Input validation and representation",
- "LANGUAGE_RELATED_PORTABILITY": "Portability: Language related portability",
- "ERRORS": "Security: Errors",
- "SECURITY": "Security",
- "RELIABILITY": "Reliability",
- "PORTABILITY": "Portability",
- "HARDWARE_RELATED_PORTABILITY": "Portability: Hardware related portability",
- "SYNCHRONIZATION_RELIABILITY": "Reliability: Synchronization related reliability",
- "TRANSPORTABILITY": "Reusability: Transportability",
- "COMPILER_RELATED_PORTABILITY": "Portability: Compiler related portability",
- "RESOURCE_RELIABILITY": "Reliability: Resource",
- "CPU_EFFICIENCY": "Efficiency: Processor use",
- "EFFICIENCY": "Efficiency",
- "CHANGEABILITY": "Changeability",
- "DATA_CHANGEABILITY": "Changeability: Data related changeability",
- "API_ABUSE": "Security: API abuse",
- "ARCHITECTURE_CHANGEABILITY": "Changeability: Architecture related changeability",
- "UNIT_TESTS": "Reliability: Unit tests",
- "INSTRUCTION_RELIABILITY": "Reliability: Instruction related reliability",
- "REUSABILITY": "Reusability",
- "MODULARITY": "Reusability: Modularity",
- "UNIT_TESTABILITY": "Testability: Unit level testability",
- "TESTABILITY": "Testability",
- "INTEGRATION_TESTABILITY": "Testability: Integration level testability",
- "NETWORK_USE": "Efficiency: Network use",
- "MEMORY_EFFICIENCY": "Efficiency: Memory use",
- "DATA_RELIABILITY": "Reliability: Data related reliability",
- "FAULT_TOLERANCE": "Reliability: Fault tolerance",
- "LOGIC_RELIABILITY": "Reliability: Logic related reliability"
- }
+ "characteristics": [
+ {
+ "key": "UNDERSTANDABILITY",
+ "name": "Understandability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "MAINTAINABILITY",
+ "name": "Maintainability"
+ },
+ {
+ "key": "TIME_ZONE_RELATED_PORTABILITY",
+ "name": "Time zone related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "READABILITY",
+ "name": "Readability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "SECURITY_FEATURES",
+ "name": "Security features",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_RELIABILITY",
+ "name": "Architecture related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "OS_RELATED_PORTABILITY",
+ "name": "OS related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "EXCEPTION_HANDLING",
+ "name": "Exception handling",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_CHANGEABILITY",
+ "name": "Logic related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "SOFTWARE_RELATED_PORTABILITY",
+ "name": "Software related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "INPUT_VALIDATION_AND_REPRESENTATION",
+ "name": "Input validation and representation",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "LANGUAGE_RELATED_PORTABILITY",
+ "name": "Language related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "ERRORS",
+ "name": "Errors",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "SECURITY",
+ "name": "Security"
+ },
+ {
+ "key": "RELIABILITY",
+ "name": "Reliability"
+ },
+ {
+ "key": "PORTABILITY",
+ "name": "Portability"
+ },
+ {
+ "key": "HARDWARE_RELATED_PORTABILITY",
+ "name": "Hardware related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "SYNCHRONIZATION_RELIABILITY",
+ "name": "Synchronization related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "TRANSPORTABILITY",
+ "name": "Transportability",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "COMPILER_RELATED_PORTABILITY",
+ "name": "Compiler related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "RESOURCE_RELIABILITY",
+ "name": "Resource",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "CPU_EFFICIENCY",
+ "name": "Processor use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "EFFICIENCY",
+ "name": "Efficiency"
+ },
+ {
+ "key": "CHANGEABILITY",
+ "name": "Changeability"
+ },
+ {
+ "key": "DATA_CHANGEABILITY",
+ "name": "Data related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "API_ABUSE",
+ "name": "API abuse",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_CHANGEABILITY",
+ "name": "Architecture related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "UNIT_TESTS",
+ "name": "Unit tests",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "INSTRUCTION_RELIABILITY",
+ "name": "Instruction related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "REUSABILITY",
+ "name": "Reusability"
+ },
+ {
+ "key": "MODULARITY",
+ "name": "Modularity",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "UNIT_TESTABILITY",
+ "name": "Unit level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "TESTABILITY",
+ "name": "Testability"
+ },
+ {
+ "key": "INTEGRATION_TESTABILITY",
+ "name": "Integration level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "NETWORK_USE",
+ "name": "Network use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "MEMORY_EFFICIENCY",
+ "name": "Memory use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "DATA_RELIABILITY",
+ "name": "Data related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "FAULT_TOLERANCE",
+ "name": "Fault tolerance",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_RELIABILITY",
+ "name": "Logic related reliability",
+ "parent": "RELIABILITY"
+ }
+ ]
}
diff --git a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-inheritance-facet/app.json b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-inheritance-facet/app.json
index 4f3319c8707..0eb43bc39f7 100644
--- a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-inheritance-facet/app.json
+++ b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-inheritance-facet/app.json
@@ -124,45 +124,193 @@
"DEPRECATED": "Deprecated",
"READY": "Ready"
},
- "characteristics": {
- "UNDERSTANDABILITY": "Maintainability: Understandability",
- "MAINTAINABILITY": "Maintainability",
- "TIME_ZONE_RELATED_PORTABILITY": "Portability: Time zone related portability",
- "READABILITY": "Maintainability: Readability",
- "SECURITY_FEATURES": "Security: Security features",
- "ARCHITECTURE_RELIABILITY": "Reliability: Architecture related reliability",
- "OS_RELATED_PORTABILITY": "Portability: OS related portability",
- "EXCEPTION_HANDLING": "Reliability: Exception handling",
- "LOGIC_CHANGEABILITY": "Changeability: Logic related changeability",
- "SOFTWARE_RELATED_PORTABILITY": "Portability: Software related portability",
- "INPUT_VALIDATION_AND_REPRESENTATION": "Security: Input validation and representation",
- "LANGUAGE_RELATED_PORTABILITY": "Portability: Language related portability",
- "ERRORS": "Security: Errors",
- "SECURITY": "Security",
- "RELIABILITY": "Reliability",
- "PORTABILITY": "Portability",
- "HARDWARE_RELATED_PORTABILITY": "Portability: Hardware related portability",
- "SYNCHRONIZATION_RELIABILITY": "Reliability: Synchronization related reliability",
- "TRANSPORTABILITY": "Reusability: Transportability",
- "COMPILER_RELATED_PORTABILITY": "Portability: Compiler related portability",
- "RESOURCE_RELIABILITY": "Reliability: Resource",
- "CPU_EFFICIENCY": "Efficiency: Processor use",
- "EFFICIENCY": "Efficiency",
- "CHANGEABILITY": "Changeability",
- "DATA_CHANGEABILITY": "Changeability: Data related changeability",
- "API_ABUSE": "Security: API abuse",
- "ARCHITECTURE_CHANGEABILITY": "Changeability: Architecture related changeability",
- "UNIT_TESTS": "Reliability: Unit tests",
- "INSTRUCTION_RELIABILITY": "Reliability: Instruction related reliability",
- "REUSABILITY": "Reusability",
- "MODULARITY": "Reusability: Modularity",
- "UNIT_TESTABILITY": "Testability: Unit level testability",
- "TESTABILITY": "Testability",
- "INTEGRATION_TESTABILITY": "Testability: Integration level testability",
- "NETWORK_USE": "Efficiency: Network use",
- "MEMORY_EFFICIENCY": "Efficiency: Memory use",
- "DATA_RELIABILITY": "Reliability: Data related reliability",
- "FAULT_TOLERANCE": "Reliability: Fault tolerance",
- "LOGIC_RELIABILITY": "Reliability: Logic related reliability"
- }
+ "characteristics": [
+ {
+ "key": "UNDERSTANDABILITY",
+ "name": "Understandability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "MAINTAINABILITY",
+ "name": "Maintainability"
+ },
+ {
+ "key": "TIME_ZONE_RELATED_PORTABILITY",
+ "name": "Time zone related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "READABILITY",
+ "name": "Readability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "SECURITY_FEATURES",
+ "name": "Security features",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_RELIABILITY",
+ "name": "Architecture related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "OS_RELATED_PORTABILITY",
+ "name": "OS related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "EXCEPTION_HANDLING",
+ "name": "Exception handling",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_CHANGEABILITY",
+ "name": "Logic related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "SOFTWARE_RELATED_PORTABILITY",
+ "name": "Software related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "INPUT_VALIDATION_AND_REPRESENTATION",
+ "name": "Input validation and representation",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "LANGUAGE_RELATED_PORTABILITY",
+ "name": "Language related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "ERRORS",
+ "name": "Errors",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "SECURITY",
+ "name": "Security"
+ },
+ {
+ "key": "RELIABILITY",
+ "name": "Reliability"
+ },
+ {
+ "key": "PORTABILITY",
+ "name": "Portability"
+ },
+ {
+ "key": "HARDWARE_RELATED_PORTABILITY",
+ "name": "Hardware related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "SYNCHRONIZATION_RELIABILITY",
+ "name": "Synchronization related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "TRANSPORTABILITY",
+ "name": "Transportability",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "COMPILER_RELATED_PORTABILITY",
+ "name": "Compiler related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "RESOURCE_RELIABILITY",
+ "name": "Resource",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "CPU_EFFICIENCY",
+ "name": "Processor use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "EFFICIENCY",
+ "name": "Efficiency"
+ },
+ {
+ "key": "CHANGEABILITY",
+ "name": "Changeability"
+ },
+ {
+ "key": "DATA_CHANGEABILITY",
+ "name": "Data related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "API_ABUSE",
+ "name": "API abuse",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_CHANGEABILITY",
+ "name": "Architecture related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "UNIT_TESTS",
+ "name": "Unit tests",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "INSTRUCTION_RELIABILITY",
+ "name": "Instruction related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "REUSABILITY",
+ "name": "Reusability"
+ },
+ {
+ "key": "MODULARITY",
+ "name": "Modularity",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "UNIT_TESTABILITY",
+ "name": "Unit level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "TESTABILITY",
+ "name": "Testability"
+ },
+ {
+ "key": "INTEGRATION_TESTABILITY",
+ "name": "Integration level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "NETWORK_USE",
+ "name": "Network use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "MEMORY_EFFICIENCY",
+ "name": "Memory use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "DATA_RELIABILITY",
+ "name": "Data related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "FAULT_TOLERANCE",
+ "name": "Fault tolerance",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_RELIABILITY",
+ "name": "Logic related reliability",
+ "parent": "RELIABILITY"
+ }
+ ]
}
diff --git a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-no-available-profiles-for-activation/app.json b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-no-available-profiles-for-activation/app.json
index 439f0faafca..4e69bdee31a 100644
--- a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-no-available-profiles-for-activation/app.json
+++ b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-no-available-profiles-for-activation/app.json
@@ -66,45 +66,193 @@
"DEPRECATED": "Deprecated",
"READY": "Ready"
},
- "characteristics": {
- "UNDERSTANDABILITY": "Maintainability: Understandability",
- "MAINTAINABILITY": "Maintainability",
- "TIME_ZONE_RELATED_PORTABILITY": "Portability: Time zone related portability",
- "READABILITY": "Maintainability: Readability",
- "SECURITY_FEATURES": "Security: Security features",
- "ARCHITECTURE_RELIABILITY": "Reliability: Architecture related reliability",
- "OS_RELATED_PORTABILITY": "Portability: OS related portability",
- "EXCEPTION_HANDLING": "Reliability: Exception handling",
- "LOGIC_CHANGEABILITY": "Changeability: Logic related changeability",
- "SOFTWARE_RELATED_PORTABILITY": "Portability: Software related portability",
- "INPUT_VALIDATION_AND_REPRESENTATION": "Security: Input validation and representation",
- "LANGUAGE_RELATED_PORTABILITY": "Portability: Language related portability",
- "ERRORS": "Security: Errors",
- "SECURITY": "Security",
- "RELIABILITY": "Reliability",
- "PORTABILITY": "Portability",
- "HARDWARE_RELATED_PORTABILITY": "Portability: Hardware related portability",
- "SYNCHRONIZATION_RELIABILITY": "Reliability: Synchronization related reliability",
- "TRANSPORTABILITY": "Reusability: Transportability",
- "COMPILER_RELATED_PORTABILITY": "Portability: Compiler related portability",
- "RESOURCE_RELIABILITY": "Reliability: Resource",
- "CPU_EFFICIENCY": "Efficiency: Processor use",
- "EFFICIENCY": "Efficiency",
- "CHANGEABILITY": "Changeability",
- "DATA_CHANGEABILITY": "Changeability: Data related changeability",
- "API_ABUSE": "Security: API abuse",
- "ARCHITECTURE_CHANGEABILITY": "Changeability: Architecture related changeability",
- "UNIT_TESTS": "Reliability: Unit tests",
- "INSTRUCTION_RELIABILITY": "Reliability: Instruction related reliability",
- "REUSABILITY": "Reusability",
- "MODULARITY": "Reusability: Modularity",
- "UNIT_TESTABILITY": "Testability: Unit level testability",
- "TESTABILITY": "Testability",
- "INTEGRATION_TESTABILITY": "Testability: Integration level testability",
- "NETWORK_USE": "Efficiency: Network use",
- "MEMORY_EFFICIENCY": "Efficiency: Memory use",
- "DATA_RELIABILITY": "Reliability: Data related reliability",
- "FAULT_TOLERANCE": "Reliability: Fault tolerance",
- "LOGIC_RELIABILITY": "Reliability: Logic related reliability"
- }
+ "characteristics": [
+ {
+ "key": "UNDERSTANDABILITY",
+ "name": "Understandability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "MAINTAINABILITY",
+ "name": "Maintainability"
+ },
+ {
+ "key": "TIME_ZONE_RELATED_PORTABILITY",
+ "name": "Time zone related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "READABILITY",
+ "name": "Readability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "SECURITY_FEATURES",
+ "name": "Security features",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_RELIABILITY",
+ "name": "Architecture related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "OS_RELATED_PORTABILITY",
+ "name": "OS related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "EXCEPTION_HANDLING",
+ "name": "Exception handling",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_CHANGEABILITY",
+ "name": "Logic related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "SOFTWARE_RELATED_PORTABILITY",
+ "name": "Software related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "INPUT_VALIDATION_AND_REPRESENTATION",
+ "name": "Input validation and representation",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "LANGUAGE_RELATED_PORTABILITY",
+ "name": "Language related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "ERRORS",
+ "name": "Errors",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "SECURITY",
+ "name": "Security"
+ },
+ {
+ "key": "RELIABILITY",
+ "name": "Reliability"
+ },
+ {
+ "key": "PORTABILITY",
+ "name": "Portability"
+ },
+ {
+ "key": "HARDWARE_RELATED_PORTABILITY",
+ "name": "Hardware related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "SYNCHRONIZATION_RELIABILITY",
+ "name": "Synchronization related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "TRANSPORTABILITY",
+ "name": "Transportability",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "COMPILER_RELATED_PORTABILITY",
+ "name": "Compiler related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "RESOURCE_RELIABILITY",
+ "name": "Resource",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "CPU_EFFICIENCY",
+ "name": "Processor use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "EFFICIENCY",
+ "name": "Efficiency"
+ },
+ {
+ "key": "CHANGEABILITY",
+ "name": "Changeability"
+ },
+ {
+ "key": "DATA_CHANGEABILITY",
+ "name": "Data related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "API_ABUSE",
+ "name": "API abuse",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_CHANGEABILITY",
+ "name": "Architecture related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "UNIT_TESTS",
+ "name": "Unit tests",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "INSTRUCTION_RELIABILITY",
+ "name": "Instruction related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "REUSABILITY",
+ "name": "Reusability"
+ },
+ {
+ "key": "MODULARITY",
+ "name": "Modularity",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "UNIT_TESTABILITY",
+ "name": "Unit level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "TESTABILITY",
+ "name": "Testability"
+ },
+ {
+ "key": "INTEGRATION_TESTABILITY",
+ "name": "Integration level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "NETWORK_USE",
+ "name": "Network use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "MEMORY_EFFICIENCY",
+ "name": "Memory use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "DATA_RELIABILITY",
+ "name": "Data related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "FAULT_TOLERANCE",
+ "name": "Fault tolerance",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_RELIABILITY",
+ "name": "Logic related reliability",
+ "parent": "RELIABILITY"
+ }
+ ]
}
diff --git a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-quality-profile-facet/app.json b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-quality-profile-facet/app.json
index 4f3319c8707..0eb43bc39f7 100644
--- a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-quality-profile-facet/app.json
+++ b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-quality-profile-facet/app.json
@@ -124,45 +124,193 @@
"DEPRECATED": "Deprecated",
"READY": "Ready"
},
- "characteristics": {
- "UNDERSTANDABILITY": "Maintainability: Understandability",
- "MAINTAINABILITY": "Maintainability",
- "TIME_ZONE_RELATED_PORTABILITY": "Portability: Time zone related portability",
- "READABILITY": "Maintainability: Readability",
- "SECURITY_FEATURES": "Security: Security features",
- "ARCHITECTURE_RELIABILITY": "Reliability: Architecture related reliability",
- "OS_RELATED_PORTABILITY": "Portability: OS related portability",
- "EXCEPTION_HANDLING": "Reliability: Exception handling",
- "LOGIC_CHANGEABILITY": "Changeability: Logic related changeability",
- "SOFTWARE_RELATED_PORTABILITY": "Portability: Software related portability",
- "INPUT_VALIDATION_AND_REPRESENTATION": "Security: Input validation and representation",
- "LANGUAGE_RELATED_PORTABILITY": "Portability: Language related portability",
- "ERRORS": "Security: Errors",
- "SECURITY": "Security",
- "RELIABILITY": "Reliability",
- "PORTABILITY": "Portability",
- "HARDWARE_RELATED_PORTABILITY": "Portability: Hardware related portability",
- "SYNCHRONIZATION_RELIABILITY": "Reliability: Synchronization related reliability",
- "TRANSPORTABILITY": "Reusability: Transportability",
- "COMPILER_RELATED_PORTABILITY": "Portability: Compiler related portability",
- "RESOURCE_RELIABILITY": "Reliability: Resource",
- "CPU_EFFICIENCY": "Efficiency: Processor use",
- "EFFICIENCY": "Efficiency",
- "CHANGEABILITY": "Changeability",
- "DATA_CHANGEABILITY": "Changeability: Data related changeability",
- "API_ABUSE": "Security: API abuse",
- "ARCHITECTURE_CHANGEABILITY": "Changeability: Architecture related changeability",
- "UNIT_TESTS": "Reliability: Unit tests",
- "INSTRUCTION_RELIABILITY": "Reliability: Instruction related reliability",
- "REUSABILITY": "Reusability",
- "MODULARITY": "Reusability: Modularity",
- "UNIT_TESTABILITY": "Testability: Unit level testability",
- "TESTABILITY": "Testability",
- "INTEGRATION_TESTABILITY": "Testability: Integration level testability",
- "NETWORK_USE": "Efficiency: Network use",
- "MEMORY_EFFICIENCY": "Efficiency: Memory use",
- "DATA_RELIABILITY": "Reliability: Data related reliability",
- "FAULT_TOLERANCE": "Reliability: Fault tolerance",
- "LOGIC_RELIABILITY": "Reliability: Logic related reliability"
- }
+ "characteristics": [
+ {
+ "key": "UNDERSTANDABILITY",
+ "name": "Understandability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "MAINTAINABILITY",
+ "name": "Maintainability"
+ },
+ {
+ "key": "TIME_ZONE_RELATED_PORTABILITY",
+ "name": "Time zone related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "READABILITY",
+ "name": "Readability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "SECURITY_FEATURES",
+ "name": "Security features",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_RELIABILITY",
+ "name": "Architecture related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "OS_RELATED_PORTABILITY",
+ "name": "OS related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "EXCEPTION_HANDLING",
+ "name": "Exception handling",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_CHANGEABILITY",
+ "name": "Logic related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "SOFTWARE_RELATED_PORTABILITY",
+ "name": "Software related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "INPUT_VALIDATION_AND_REPRESENTATION",
+ "name": "Input validation and representation",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "LANGUAGE_RELATED_PORTABILITY",
+ "name": "Language related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "ERRORS",
+ "name": "Errors",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "SECURITY",
+ "name": "Security"
+ },
+ {
+ "key": "RELIABILITY",
+ "name": "Reliability"
+ },
+ {
+ "key": "PORTABILITY",
+ "name": "Portability"
+ },
+ {
+ "key": "HARDWARE_RELATED_PORTABILITY",
+ "name": "Hardware related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "SYNCHRONIZATION_RELIABILITY",
+ "name": "Synchronization related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "TRANSPORTABILITY",
+ "name": "Transportability",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "COMPILER_RELATED_PORTABILITY",
+ "name": "Compiler related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "RESOURCE_RELIABILITY",
+ "name": "Resource",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "CPU_EFFICIENCY",
+ "name": "Processor use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "EFFICIENCY",
+ "name": "Efficiency"
+ },
+ {
+ "key": "CHANGEABILITY",
+ "name": "Changeability"
+ },
+ {
+ "key": "DATA_CHANGEABILITY",
+ "name": "Data related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "API_ABUSE",
+ "name": "API abuse",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_CHANGEABILITY",
+ "name": "Architecture related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "UNIT_TESTS",
+ "name": "Unit tests",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "INSTRUCTION_RELIABILITY",
+ "name": "Instruction related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "REUSABILITY",
+ "name": "Reusability"
+ },
+ {
+ "key": "MODULARITY",
+ "name": "Modularity",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "UNIT_TESTABILITY",
+ "name": "Unit level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "TESTABILITY",
+ "name": "Testability"
+ },
+ {
+ "key": "INTEGRATION_TESTABILITY",
+ "name": "Integration level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "NETWORK_USE",
+ "name": "Network use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "MEMORY_EFFICIENCY",
+ "name": "Memory use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "DATA_RELIABILITY",
+ "name": "Data related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "FAULT_TOLERANCE",
+ "name": "Fault tolerance",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_RELIABILITY",
+ "name": "Logic related reliability",
+ "parent": "RELIABILITY"
+ }
+ ]
}
diff --git a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-query-facet/app.json b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-query-facet/app.json
index 4f3319c8707..0eb43bc39f7 100644
--- a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-query-facet/app.json
+++ b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-query-facet/app.json
@@ -124,45 +124,193 @@
"DEPRECATED": "Deprecated",
"READY": "Ready"
},
- "characteristics": {
- "UNDERSTANDABILITY": "Maintainability: Understandability",
- "MAINTAINABILITY": "Maintainability",
- "TIME_ZONE_RELATED_PORTABILITY": "Portability: Time zone related portability",
- "READABILITY": "Maintainability: Readability",
- "SECURITY_FEATURES": "Security: Security features",
- "ARCHITECTURE_RELIABILITY": "Reliability: Architecture related reliability",
- "OS_RELATED_PORTABILITY": "Portability: OS related portability",
- "EXCEPTION_HANDLING": "Reliability: Exception handling",
- "LOGIC_CHANGEABILITY": "Changeability: Logic related changeability",
- "SOFTWARE_RELATED_PORTABILITY": "Portability: Software related portability",
- "INPUT_VALIDATION_AND_REPRESENTATION": "Security: Input validation and representation",
- "LANGUAGE_RELATED_PORTABILITY": "Portability: Language related portability",
- "ERRORS": "Security: Errors",
- "SECURITY": "Security",
- "RELIABILITY": "Reliability",
- "PORTABILITY": "Portability",
- "HARDWARE_RELATED_PORTABILITY": "Portability: Hardware related portability",
- "SYNCHRONIZATION_RELIABILITY": "Reliability: Synchronization related reliability",
- "TRANSPORTABILITY": "Reusability: Transportability",
- "COMPILER_RELATED_PORTABILITY": "Portability: Compiler related portability",
- "RESOURCE_RELIABILITY": "Reliability: Resource",
- "CPU_EFFICIENCY": "Efficiency: Processor use",
- "EFFICIENCY": "Efficiency",
- "CHANGEABILITY": "Changeability",
- "DATA_CHANGEABILITY": "Changeability: Data related changeability",
- "API_ABUSE": "Security: API abuse",
- "ARCHITECTURE_CHANGEABILITY": "Changeability: Architecture related changeability",
- "UNIT_TESTS": "Reliability: Unit tests",
- "INSTRUCTION_RELIABILITY": "Reliability: Instruction related reliability",
- "REUSABILITY": "Reusability",
- "MODULARITY": "Reusability: Modularity",
- "UNIT_TESTABILITY": "Testability: Unit level testability",
- "TESTABILITY": "Testability",
- "INTEGRATION_TESTABILITY": "Testability: Integration level testability",
- "NETWORK_USE": "Efficiency: Network use",
- "MEMORY_EFFICIENCY": "Efficiency: Memory use",
- "DATA_RELIABILITY": "Reliability: Data related reliability",
- "FAULT_TOLERANCE": "Reliability: Fault tolerance",
- "LOGIC_RELIABILITY": "Reliability: Logic related reliability"
- }
+ "characteristics": [
+ {
+ "key": "UNDERSTANDABILITY",
+ "name": "Understandability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "MAINTAINABILITY",
+ "name": "Maintainability"
+ },
+ {
+ "key": "TIME_ZONE_RELATED_PORTABILITY",
+ "name": "Time zone related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "READABILITY",
+ "name": "Readability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "SECURITY_FEATURES",
+ "name": "Security features",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_RELIABILITY",
+ "name": "Architecture related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "OS_RELATED_PORTABILITY",
+ "name": "OS related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "EXCEPTION_HANDLING",
+ "name": "Exception handling",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_CHANGEABILITY",
+ "name": "Logic related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "SOFTWARE_RELATED_PORTABILITY",
+ "name": "Software related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "INPUT_VALIDATION_AND_REPRESENTATION",
+ "name": "Input validation and representation",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "LANGUAGE_RELATED_PORTABILITY",
+ "name": "Language related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "ERRORS",
+ "name": "Errors",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "SECURITY",
+ "name": "Security"
+ },
+ {
+ "key": "RELIABILITY",
+ "name": "Reliability"
+ },
+ {
+ "key": "PORTABILITY",
+ "name": "Portability"
+ },
+ {
+ "key": "HARDWARE_RELATED_PORTABILITY",
+ "name": "Hardware related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "SYNCHRONIZATION_RELIABILITY",
+ "name": "Synchronization related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "TRANSPORTABILITY",
+ "name": "Transportability",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "COMPILER_RELATED_PORTABILITY",
+ "name": "Compiler related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "RESOURCE_RELIABILITY",
+ "name": "Resource",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "CPU_EFFICIENCY",
+ "name": "Processor use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "EFFICIENCY",
+ "name": "Efficiency"
+ },
+ {
+ "key": "CHANGEABILITY",
+ "name": "Changeability"
+ },
+ {
+ "key": "DATA_CHANGEABILITY",
+ "name": "Data related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "API_ABUSE",
+ "name": "API abuse",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_CHANGEABILITY",
+ "name": "Architecture related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "UNIT_TESTS",
+ "name": "Unit tests",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "INSTRUCTION_RELIABILITY",
+ "name": "Instruction related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "REUSABILITY",
+ "name": "Reusability"
+ },
+ {
+ "key": "MODULARITY",
+ "name": "Modularity",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "UNIT_TESTABILITY",
+ "name": "Unit level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "TESTABILITY",
+ "name": "Testability"
+ },
+ {
+ "key": "INTEGRATION_TESTABILITY",
+ "name": "Integration level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "NETWORK_USE",
+ "name": "Network use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "MEMORY_EFFICIENCY",
+ "name": "Memory use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "DATA_RELIABILITY",
+ "name": "Data related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "FAULT_TOLERANCE",
+ "name": "Fault tolerance",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_RELIABILITY",
+ "name": "Logic related reliability",
+ "parent": "RELIABILITY"
+ }
+ ]
}
diff --git a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-rule-permalink/app.json b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-rule-permalink/app.json
index 4f3319c8707..0eb43bc39f7 100644
--- a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-rule-permalink/app.json
+++ b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-rule-permalink/app.json
@@ -124,45 +124,193 @@
"DEPRECATED": "Deprecated",
"READY": "Ready"
},
- "characteristics": {
- "UNDERSTANDABILITY": "Maintainability: Understandability",
- "MAINTAINABILITY": "Maintainability",
- "TIME_ZONE_RELATED_PORTABILITY": "Portability: Time zone related portability",
- "READABILITY": "Maintainability: Readability",
- "SECURITY_FEATURES": "Security: Security features",
- "ARCHITECTURE_RELIABILITY": "Reliability: Architecture related reliability",
- "OS_RELATED_PORTABILITY": "Portability: OS related portability",
- "EXCEPTION_HANDLING": "Reliability: Exception handling",
- "LOGIC_CHANGEABILITY": "Changeability: Logic related changeability",
- "SOFTWARE_RELATED_PORTABILITY": "Portability: Software related portability",
- "INPUT_VALIDATION_AND_REPRESENTATION": "Security: Input validation and representation",
- "LANGUAGE_RELATED_PORTABILITY": "Portability: Language related portability",
- "ERRORS": "Security: Errors",
- "SECURITY": "Security",
- "RELIABILITY": "Reliability",
- "PORTABILITY": "Portability",
- "HARDWARE_RELATED_PORTABILITY": "Portability: Hardware related portability",
- "SYNCHRONIZATION_RELIABILITY": "Reliability: Synchronization related reliability",
- "TRANSPORTABILITY": "Reusability: Transportability",
- "COMPILER_RELATED_PORTABILITY": "Portability: Compiler related portability",
- "RESOURCE_RELIABILITY": "Reliability: Resource",
- "CPU_EFFICIENCY": "Efficiency: Processor use",
- "EFFICIENCY": "Efficiency",
- "CHANGEABILITY": "Changeability",
- "DATA_CHANGEABILITY": "Changeability: Data related changeability",
- "API_ABUSE": "Security: API abuse",
- "ARCHITECTURE_CHANGEABILITY": "Changeability: Architecture related changeability",
- "UNIT_TESTS": "Reliability: Unit tests",
- "INSTRUCTION_RELIABILITY": "Reliability: Instruction related reliability",
- "REUSABILITY": "Reusability",
- "MODULARITY": "Reusability: Modularity",
- "UNIT_TESTABILITY": "Testability: Unit level testability",
- "TESTABILITY": "Testability",
- "INTEGRATION_TESTABILITY": "Testability: Integration level testability",
- "NETWORK_USE": "Efficiency: Network use",
- "MEMORY_EFFICIENCY": "Efficiency: Memory use",
- "DATA_RELIABILITY": "Reliability: Data related reliability",
- "FAULT_TOLERANCE": "Reliability: Fault tolerance",
- "LOGIC_RELIABILITY": "Reliability: Logic related reliability"
- }
+ "characteristics": [
+ {
+ "key": "UNDERSTANDABILITY",
+ "name": "Understandability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "MAINTAINABILITY",
+ "name": "Maintainability"
+ },
+ {
+ "key": "TIME_ZONE_RELATED_PORTABILITY",
+ "name": "Time zone related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "READABILITY",
+ "name": "Readability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "SECURITY_FEATURES",
+ "name": "Security features",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_RELIABILITY",
+ "name": "Architecture related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "OS_RELATED_PORTABILITY",
+ "name": "OS related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "EXCEPTION_HANDLING",
+ "name": "Exception handling",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_CHANGEABILITY",
+ "name": "Logic related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "SOFTWARE_RELATED_PORTABILITY",
+ "name": "Software related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "INPUT_VALIDATION_AND_REPRESENTATION",
+ "name": "Input validation and representation",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "LANGUAGE_RELATED_PORTABILITY",
+ "name": "Language related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "ERRORS",
+ "name": "Errors",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "SECURITY",
+ "name": "Security"
+ },
+ {
+ "key": "RELIABILITY",
+ "name": "Reliability"
+ },
+ {
+ "key": "PORTABILITY",
+ "name": "Portability"
+ },
+ {
+ "key": "HARDWARE_RELATED_PORTABILITY",
+ "name": "Hardware related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "SYNCHRONIZATION_RELIABILITY",
+ "name": "Synchronization related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "TRANSPORTABILITY",
+ "name": "Transportability",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "COMPILER_RELATED_PORTABILITY",
+ "name": "Compiler related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "RESOURCE_RELIABILITY",
+ "name": "Resource",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "CPU_EFFICIENCY",
+ "name": "Processor use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "EFFICIENCY",
+ "name": "Efficiency"
+ },
+ {
+ "key": "CHANGEABILITY",
+ "name": "Changeability"
+ },
+ {
+ "key": "DATA_CHANGEABILITY",
+ "name": "Data related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "API_ABUSE",
+ "name": "API abuse",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_CHANGEABILITY",
+ "name": "Architecture related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "UNIT_TESTS",
+ "name": "Unit tests",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "INSTRUCTION_RELIABILITY",
+ "name": "Instruction related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "REUSABILITY",
+ "name": "Reusability"
+ },
+ {
+ "key": "MODULARITY",
+ "name": "Modularity",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "UNIT_TESTABILITY",
+ "name": "Unit level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "TESTABILITY",
+ "name": "Testability"
+ },
+ {
+ "key": "INTEGRATION_TESTABILITY",
+ "name": "Integration level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "NETWORK_USE",
+ "name": "Network use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "MEMORY_EFFICIENCY",
+ "name": "Memory use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "DATA_RELIABILITY",
+ "name": "Data related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "FAULT_TOLERANCE",
+ "name": "Fault tolerance",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_RELIABILITY",
+ "name": "Logic related reliability",
+ "parent": "RELIABILITY"
+ }
+ ]
}
diff --git a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-activate-profile/app.json b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-activate-profile/app.json
index f66b07ba5a1..50148bb1b6e 100644
--- a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-activate-profile/app.json
+++ b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-activate-profile/app.json
@@ -124,45 +124,193 @@
"DEPRECATED": "Deprecated",
"READY": "Ready"
},
- "characteristics": {
- "UNDERSTANDABILITY": "Maintainability: Understandability",
- "MAINTAINABILITY": "Maintainability",
- "TIME_ZONE_RELATED_PORTABILITY": "Portability: Time zone related portability",
- "READABILITY": "Maintainability: Readability",
- "SECURITY_FEATURES": "Security: Security features",
- "ARCHITECTURE_RELIABILITY": "Reliability: Architecture related reliability",
- "OS_RELATED_PORTABILITY": "Portability: OS related portability",
- "EXCEPTION_HANDLING": "Reliability: Exception handling",
- "LOGIC_CHANGEABILITY": "Changeability: Logic related changeability",
- "SOFTWARE_RELATED_PORTABILITY": "Portability: Software related portability",
- "INPUT_VALIDATION_AND_REPRESENTATION": "Security: Input validation and representation",
- "LANGUAGE_RELATED_PORTABILITY": "Portability: Language related portability",
- "ERRORS": "Security: Errors",
- "SECURITY": "Security",
- "RELIABILITY": "Reliability",
- "PORTABILITY": "Portability",
- "HARDWARE_RELATED_PORTABILITY": "Portability: Hardware related portability",
- "SYNCHRONIZATION_RELIABILITY": "Reliability: Synchronization related reliability",
- "TRANSPORTABILITY": "Reusability: Transportability",
- "COMPILER_RELATED_PORTABILITY": "Portability: Compiler related portability",
- "RESOURCE_RELIABILITY": "Reliability: Resource",
- "CPU_EFFICIENCY": "Efficiency: Processor use",
- "EFFICIENCY": "Efficiency",
- "CHANGEABILITY": "Changeability",
- "DATA_CHANGEABILITY": "Changeability: Data related changeability",
- "API_ABUSE": "Security: API abuse",
- "ARCHITECTURE_CHANGEABILITY": "Changeability: Architecture related changeability",
- "UNIT_TESTS": "Reliability: Unit tests",
- "INSTRUCTION_RELIABILITY": "Reliability: Instruction related reliability",
- "REUSABILITY": "Reusability",
- "MODULARITY": "Reusability: Modularity",
- "UNIT_TESTABILITY": "Testability: Unit level testability",
- "TESTABILITY": "Testability",
- "INTEGRATION_TESTABILITY": "Testability: Integration level testability",
- "NETWORK_USE": "Efficiency: Network use",
- "MEMORY_EFFICIENCY": "Efficiency: Memory use",
- "DATA_RELIABILITY": "Reliability: Data related reliability",
- "FAULT_TOLERANCE": "Reliability: Fault tolerance",
- "LOGIC_RELIABILITY": "Reliability: Logic related reliability"
- }
+ "characteristics": [
+ {
+ "key": "UNDERSTANDABILITY",
+ "name": "Understandability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "MAINTAINABILITY",
+ "name": "Maintainability"
+ },
+ {
+ "key": "TIME_ZONE_RELATED_PORTABILITY",
+ "name": "Time zone related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "READABILITY",
+ "name": "Readability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "SECURITY_FEATURES",
+ "name": "Security features",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_RELIABILITY",
+ "name": "Architecture related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "OS_RELATED_PORTABILITY",
+ "name": "OS related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "EXCEPTION_HANDLING",
+ "name": "Exception handling",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_CHANGEABILITY",
+ "name": "Logic related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "SOFTWARE_RELATED_PORTABILITY",
+ "name": "Software related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "INPUT_VALIDATION_AND_REPRESENTATION",
+ "name": "Input validation and representation",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "LANGUAGE_RELATED_PORTABILITY",
+ "name": "Language related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "ERRORS",
+ "name": "Errors",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "SECURITY",
+ "name": "Security"
+ },
+ {
+ "key": "RELIABILITY",
+ "name": "Reliability"
+ },
+ {
+ "key": "PORTABILITY",
+ "name": "Portability"
+ },
+ {
+ "key": "HARDWARE_RELATED_PORTABILITY",
+ "name": "Hardware related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "SYNCHRONIZATION_RELIABILITY",
+ "name": "Synchronization related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "TRANSPORTABILITY",
+ "name": "Transportability",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "COMPILER_RELATED_PORTABILITY",
+ "name": "Compiler related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "RESOURCE_RELIABILITY",
+ "name": "Resource",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "CPU_EFFICIENCY",
+ "name": "Processor use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "EFFICIENCY",
+ "name": "Efficiency"
+ },
+ {
+ "key": "CHANGEABILITY",
+ "name": "Changeability"
+ },
+ {
+ "key": "DATA_CHANGEABILITY",
+ "name": "Data related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "API_ABUSE",
+ "name": "API abuse",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_CHANGEABILITY",
+ "name": "Architecture related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "UNIT_TESTS",
+ "name": "Unit tests",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "INSTRUCTION_RELIABILITY",
+ "name": "Instruction related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "REUSABILITY",
+ "name": "Reusability"
+ },
+ {
+ "key": "MODULARITY",
+ "name": "Modularity",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "UNIT_TESTABILITY",
+ "name": "Unit level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "TESTABILITY",
+ "name": "Testability"
+ },
+ {
+ "key": "INTEGRATION_TESTABILITY",
+ "name": "Integration level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "NETWORK_USE",
+ "name": "Network use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "MEMORY_EFFICIENCY",
+ "name": "Memory use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "DATA_RELIABILITY",
+ "name": "Data related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "FAULT_TOLERANCE",
+ "name": "Fault tolerance",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_RELIABILITY",
+ "name": "Logic related reliability",
+ "parent": "RELIABILITY"
+ }
+ ]
}
diff --git a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-create-custom-rules/app.json b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-create-custom-rules/app.json
index f66b07ba5a1..50148bb1b6e 100644
--- a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-create-custom-rules/app.json
+++ b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-create-custom-rules/app.json
@@ -124,45 +124,193 @@
"DEPRECATED": "Deprecated",
"READY": "Ready"
},
- "characteristics": {
- "UNDERSTANDABILITY": "Maintainability: Understandability",
- "MAINTAINABILITY": "Maintainability",
- "TIME_ZONE_RELATED_PORTABILITY": "Portability: Time zone related portability",
- "READABILITY": "Maintainability: Readability",
- "SECURITY_FEATURES": "Security: Security features",
- "ARCHITECTURE_RELIABILITY": "Reliability: Architecture related reliability",
- "OS_RELATED_PORTABILITY": "Portability: OS related portability",
- "EXCEPTION_HANDLING": "Reliability: Exception handling",
- "LOGIC_CHANGEABILITY": "Changeability: Logic related changeability",
- "SOFTWARE_RELATED_PORTABILITY": "Portability: Software related portability",
- "INPUT_VALIDATION_AND_REPRESENTATION": "Security: Input validation and representation",
- "LANGUAGE_RELATED_PORTABILITY": "Portability: Language related portability",
- "ERRORS": "Security: Errors",
- "SECURITY": "Security",
- "RELIABILITY": "Reliability",
- "PORTABILITY": "Portability",
- "HARDWARE_RELATED_PORTABILITY": "Portability: Hardware related portability",
- "SYNCHRONIZATION_RELIABILITY": "Reliability: Synchronization related reliability",
- "TRANSPORTABILITY": "Reusability: Transportability",
- "COMPILER_RELATED_PORTABILITY": "Portability: Compiler related portability",
- "RESOURCE_RELIABILITY": "Reliability: Resource",
- "CPU_EFFICIENCY": "Efficiency: Processor use",
- "EFFICIENCY": "Efficiency",
- "CHANGEABILITY": "Changeability",
- "DATA_CHANGEABILITY": "Changeability: Data related changeability",
- "API_ABUSE": "Security: API abuse",
- "ARCHITECTURE_CHANGEABILITY": "Changeability: Architecture related changeability",
- "UNIT_TESTS": "Reliability: Unit tests",
- "INSTRUCTION_RELIABILITY": "Reliability: Instruction related reliability",
- "REUSABILITY": "Reusability",
- "MODULARITY": "Reusability: Modularity",
- "UNIT_TESTABILITY": "Testability: Unit level testability",
- "TESTABILITY": "Testability",
- "INTEGRATION_TESTABILITY": "Testability: Integration level testability",
- "NETWORK_USE": "Efficiency: Network use",
- "MEMORY_EFFICIENCY": "Efficiency: Memory use",
- "DATA_RELIABILITY": "Reliability: Data related reliability",
- "FAULT_TOLERANCE": "Reliability: Fault tolerance",
- "LOGIC_RELIABILITY": "Reliability: Logic related reliability"
- }
+ "characteristics": [
+ {
+ "key": "UNDERSTANDABILITY",
+ "name": "Understandability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "MAINTAINABILITY",
+ "name": "Maintainability"
+ },
+ {
+ "key": "TIME_ZONE_RELATED_PORTABILITY",
+ "name": "Time zone related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "READABILITY",
+ "name": "Readability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "SECURITY_FEATURES",
+ "name": "Security features",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_RELIABILITY",
+ "name": "Architecture related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "OS_RELATED_PORTABILITY",
+ "name": "OS related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "EXCEPTION_HANDLING",
+ "name": "Exception handling",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_CHANGEABILITY",
+ "name": "Logic related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "SOFTWARE_RELATED_PORTABILITY",
+ "name": "Software related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "INPUT_VALIDATION_AND_REPRESENTATION",
+ "name": "Input validation and representation",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "LANGUAGE_RELATED_PORTABILITY",
+ "name": "Language related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "ERRORS",
+ "name": "Errors",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "SECURITY",
+ "name": "Security"
+ },
+ {
+ "key": "RELIABILITY",
+ "name": "Reliability"
+ },
+ {
+ "key": "PORTABILITY",
+ "name": "Portability"
+ },
+ {
+ "key": "HARDWARE_RELATED_PORTABILITY",
+ "name": "Hardware related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "SYNCHRONIZATION_RELIABILITY",
+ "name": "Synchronization related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "TRANSPORTABILITY",
+ "name": "Transportability",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "COMPILER_RELATED_PORTABILITY",
+ "name": "Compiler related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "RESOURCE_RELIABILITY",
+ "name": "Resource",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "CPU_EFFICIENCY",
+ "name": "Processor use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "EFFICIENCY",
+ "name": "Efficiency"
+ },
+ {
+ "key": "CHANGEABILITY",
+ "name": "Changeability"
+ },
+ {
+ "key": "DATA_CHANGEABILITY",
+ "name": "Data related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "API_ABUSE",
+ "name": "API abuse",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_CHANGEABILITY",
+ "name": "Architecture related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "UNIT_TESTS",
+ "name": "Unit tests",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "INSTRUCTION_RELIABILITY",
+ "name": "Instruction related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "REUSABILITY",
+ "name": "Reusability"
+ },
+ {
+ "key": "MODULARITY",
+ "name": "Modularity",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "UNIT_TESTABILITY",
+ "name": "Unit level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "TESTABILITY",
+ "name": "Testability"
+ },
+ {
+ "key": "INTEGRATION_TESTABILITY",
+ "name": "Integration level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "NETWORK_USE",
+ "name": "Network use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "MEMORY_EFFICIENCY",
+ "name": "Memory use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "DATA_RELIABILITY",
+ "name": "Data related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "FAULT_TOLERANCE",
+ "name": "Fault tolerance",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_RELIABILITY",
+ "name": "Logic related reliability",
+ "parent": "RELIABILITY"
+ }
+ ]
}
diff --git a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-create-manual-rules/app.json b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-create-manual-rules/app.json
index f66b07ba5a1..50148bb1b6e 100644
--- a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-create-manual-rules/app.json
+++ b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-create-manual-rules/app.json
@@ -124,45 +124,193 @@
"DEPRECATED": "Deprecated",
"READY": "Ready"
},
- "characteristics": {
- "UNDERSTANDABILITY": "Maintainability: Understandability",
- "MAINTAINABILITY": "Maintainability",
- "TIME_ZONE_RELATED_PORTABILITY": "Portability: Time zone related portability",
- "READABILITY": "Maintainability: Readability",
- "SECURITY_FEATURES": "Security: Security features",
- "ARCHITECTURE_RELIABILITY": "Reliability: Architecture related reliability",
- "OS_RELATED_PORTABILITY": "Portability: OS related portability",
- "EXCEPTION_HANDLING": "Reliability: Exception handling",
- "LOGIC_CHANGEABILITY": "Changeability: Logic related changeability",
- "SOFTWARE_RELATED_PORTABILITY": "Portability: Software related portability",
- "INPUT_VALIDATION_AND_REPRESENTATION": "Security: Input validation and representation",
- "LANGUAGE_RELATED_PORTABILITY": "Portability: Language related portability",
- "ERRORS": "Security: Errors",
- "SECURITY": "Security",
- "RELIABILITY": "Reliability",
- "PORTABILITY": "Portability",
- "HARDWARE_RELATED_PORTABILITY": "Portability: Hardware related portability",
- "SYNCHRONIZATION_RELIABILITY": "Reliability: Synchronization related reliability",
- "TRANSPORTABILITY": "Reusability: Transportability",
- "COMPILER_RELATED_PORTABILITY": "Portability: Compiler related portability",
- "RESOURCE_RELIABILITY": "Reliability: Resource",
- "CPU_EFFICIENCY": "Efficiency: Processor use",
- "EFFICIENCY": "Efficiency",
- "CHANGEABILITY": "Changeability",
- "DATA_CHANGEABILITY": "Changeability: Data related changeability",
- "API_ABUSE": "Security: API abuse",
- "ARCHITECTURE_CHANGEABILITY": "Changeability: Architecture related changeability",
- "UNIT_TESTS": "Reliability: Unit tests",
- "INSTRUCTION_RELIABILITY": "Reliability: Instruction related reliability",
- "REUSABILITY": "Reusability",
- "MODULARITY": "Reusability: Modularity",
- "UNIT_TESTABILITY": "Testability: Unit level testability",
- "TESTABILITY": "Testability",
- "INTEGRATION_TESTABILITY": "Testability: Integration level testability",
- "NETWORK_USE": "Efficiency: Network use",
- "MEMORY_EFFICIENCY": "Efficiency: Memory use",
- "DATA_RELIABILITY": "Reliability: Data related reliability",
- "FAULT_TOLERANCE": "Reliability: Fault tolerance",
- "LOGIC_RELIABILITY": "Reliability: Logic related reliability"
- }
+ "characteristics": [
+ {
+ "key": "UNDERSTANDABILITY",
+ "name": "Understandability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "MAINTAINABILITY",
+ "name": "Maintainability"
+ },
+ {
+ "key": "TIME_ZONE_RELATED_PORTABILITY",
+ "name": "Time zone related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "READABILITY",
+ "name": "Readability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "SECURITY_FEATURES",
+ "name": "Security features",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_RELIABILITY",
+ "name": "Architecture related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "OS_RELATED_PORTABILITY",
+ "name": "OS related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "EXCEPTION_HANDLING",
+ "name": "Exception handling",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_CHANGEABILITY",
+ "name": "Logic related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "SOFTWARE_RELATED_PORTABILITY",
+ "name": "Software related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "INPUT_VALIDATION_AND_REPRESENTATION",
+ "name": "Input validation and representation",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "LANGUAGE_RELATED_PORTABILITY",
+ "name": "Language related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "ERRORS",
+ "name": "Errors",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "SECURITY",
+ "name": "Security"
+ },
+ {
+ "key": "RELIABILITY",
+ "name": "Reliability"
+ },
+ {
+ "key": "PORTABILITY",
+ "name": "Portability"
+ },
+ {
+ "key": "HARDWARE_RELATED_PORTABILITY",
+ "name": "Hardware related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "SYNCHRONIZATION_RELIABILITY",
+ "name": "Synchronization related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "TRANSPORTABILITY",
+ "name": "Transportability",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "COMPILER_RELATED_PORTABILITY",
+ "name": "Compiler related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "RESOURCE_RELIABILITY",
+ "name": "Resource",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "CPU_EFFICIENCY",
+ "name": "Processor use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "EFFICIENCY",
+ "name": "Efficiency"
+ },
+ {
+ "key": "CHANGEABILITY",
+ "name": "Changeability"
+ },
+ {
+ "key": "DATA_CHANGEABILITY",
+ "name": "Data related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "API_ABUSE",
+ "name": "API abuse",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_CHANGEABILITY",
+ "name": "Architecture related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "UNIT_TESTS",
+ "name": "Unit tests",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "INSTRUCTION_RELIABILITY",
+ "name": "Instruction related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "REUSABILITY",
+ "name": "Reusability"
+ },
+ {
+ "key": "MODULARITY",
+ "name": "Modularity",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "UNIT_TESTABILITY",
+ "name": "Unit level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "TESTABILITY",
+ "name": "Testability"
+ },
+ {
+ "key": "INTEGRATION_TESTABILITY",
+ "name": "Integration level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "NETWORK_USE",
+ "name": "Network use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "MEMORY_EFFICIENCY",
+ "name": "Memory use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "DATA_RELIABILITY",
+ "name": "Data related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "FAULT_TOLERANCE",
+ "name": "Fault tolerance",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_RELIABILITY",
+ "name": "Logic related reliability",
+ "parent": "RELIABILITY"
+ }
+ ]
}
diff --git a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-delete-custom-rules/app.json b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-delete-custom-rules/app.json
index f66b07ba5a1..50148bb1b6e 100644
--- a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-delete-custom-rules/app.json
+++ b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-delete-custom-rules/app.json
@@ -124,45 +124,193 @@
"DEPRECATED": "Deprecated",
"READY": "Ready"
},
- "characteristics": {
- "UNDERSTANDABILITY": "Maintainability: Understandability",
- "MAINTAINABILITY": "Maintainability",
- "TIME_ZONE_RELATED_PORTABILITY": "Portability: Time zone related portability",
- "READABILITY": "Maintainability: Readability",
- "SECURITY_FEATURES": "Security: Security features",
- "ARCHITECTURE_RELIABILITY": "Reliability: Architecture related reliability",
- "OS_RELATED_PORTABILITY": "Portability: OS related portability",
- "EXCEPTION_HANDLING": "Reliability: Exception handling",
- "LOGIC_CHANGEABILITY": "Changeability: Logic related changeability",
- "SOFTWARE_RELATED_PORTABILITY": "Portability: Software related portability",
- "INPUT_VALIDATION_AND_REPRESENTATION": "Security: Input validation and representation",
- "LANGUAGE_RELATED_PORTABILITY": "Portability: Language related portability",
- "ERRORS": "Security: Errors",
- "SECURITY": "Security",
- "RELIABILITY": "Reliability",
- "PORTABILITY": "Portability",
- "HARDWARE_RELATED_PORTABILITY": "Portability: Hardware related portability",
- "SYNCHRONIZATION_RELIABILITY": "Reliability: Synchronization related reliability",
- "TRANSPORTABILITY": "Reusability: Transportability",
- "COMPILER_RELATED_PORTABILITY": "Portability: Compiler related portability",
- "RESOURCE_RELIABILITY": "Reliability: Resource",
- "CPU_EFFICIENCY": "Efficiency: Processor use",
- "EFFICIENCY": "Efficiency",
- "CHANGEABILITY": "Changeability",
- "DATA_CHANGEABILITY": "Changeability: Data related changeability",
- "API_ABUSE": "Security: API abuse",
- "ARCHITECTURE_CHANGEABILITY": "Changeability: Architecture related changeability",
- "UNIT_TESTS": "Reliability: Unit tests",
- "INSTRUCTION_RELIABILITY": "Reliability: Instruction related reliability",
- "REUSABILITY": "Reusability",
- "MODULARITY": "Reusability: Modularity",
- "UNIT_TESTABILITY": "Testability: Unit level testability",
- "TESTABILITY": "Testability",
- "INTEGRATION_TESTABILITY": "Testability: Integration level testability",
- "NETWORK_USE": "Efficiency: Network use",
- "MEMORY_EFFICIENCY": "Efficiency: Memory use",
- "DATA_RELIABILITY": "Reliability: Data related reliability",
- "FAULT_TOLERANCE": "Reliability: Fault tolerance",
- "LOGIC_RELIABILITY": "Reliability: Logic related reliability"
- }
+ "characteristics": [
+ {
+ "key": "UNDERSTANDABILITY",
+ "name": "Understandability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "MAINTAINABILITY",
+ "name": "Maintainability"
+ },
+ {
+ "key": "TIME_ZONE_RELATED_PORTABILITY",
+ "name": "Time zone related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "READABILITY",
+ "name": "Readability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "SECURITY_FEATURES",
+ "name": "Security features",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_RELIABILITY",
+ "name": "Architecture related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "OS_RELATED_PORTABILITY",
+ "name": "OS related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "EXCEPTION_HANDLING",
+ "name": "Exception handling",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_CHANGEABILITY",
+ "name": "Logic related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "SOFTWARE_RELATED_PORTABILITY",
+ "name": "Software related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "INPUT_VALIDATION_AND_REPRESENTATION",
+ "name": "Input validation and representation",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "LANGUAGE_RELATED_PORTABILITY",
+ "name": "Language related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "ERRORS",
+ "name": "Errors",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "SECURITY",
+ "name": "Security"
+ },
+ {
+ "key": "RELIABILITY",
+ "name": "Reliability"
+ },
+ {
+ "key": "PORTABILITY",
+ "name": "Portability"
+ },
+ {
+ "key": "HARDWARE_RELATED_PORTABILITY",
+ "name": "Hardware related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "SYNCHRONIZATION_RELIABILITY",
+ "name": "Synchronization related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "TRANSPORTABILITY",
+ "name": "Transportability",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "COMPILER_RELATED_PORTABILITY",
+ "name": "Compiler related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "RESOURCE_RELIABILITY",
+ "name": "Resource",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "CPU_EFFICIENCY",
+ "name": "Processor use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "EFFICIENCY",
+ "name": "Efficiency"
+ },
+ {
+ "key": "CHANGEABILITY",
+ "name": "Changeability"
+ },
+ {
+ "key": "DATA_CHANGEABILITY",
+ "name": "Data related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "API_ABUSE",
+ "name": "API abuse",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_CHANGEABILITY",
+ "name": "Architecture related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "UNIT_TESTS",
+ "name": "Unit tests",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "INSTRUCTION_RELIABILITY",
+ "name": "Instruction related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "REUSABILITY",
+ "name": "Reusability"
+ },
+ {
+ "key": "MODULARITY",
+ "name": "Modularity",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "UNIT_TESTABILITY",
+ "name": "Unit level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "TESTABILITY",
+ "name": "Testability"
+ },
+ {
+ "key": "INTEGRATION_TESTABILITY",
+ "name": "Integration level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "NETWORK_USE",
+ "name": "Network use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "MEMORY_EFFICIENCY",
+ "name": "Memory use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "DATA_RELIABILITY",
+ "name": "Data related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "FAULT_TOLERANCE",
+ "name": "Fault tolerance",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_RELIABILITY",
+ "name": "Logic related reliability",
+ "parent": "RELIABILITY"
+ }
+ ]
}
diff --git a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-delete-manual-rules/app.json b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-delete-manual-rules/app.json
index f66b07ba5a1..50148bb1b6e 100644
--- a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-delete-manual-rules/app.json
+++ b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-delete-manual-rules/app.json
@@ -124,45 +124,193 @@
"DEPRECATED": "Deprecated",
"READY": "Ready"
},
- "characteristics": {
- "UNDERSTANDABILITY": "Maintainability: Understandability",
- "MAINTAINABILITY": "Maintainability",
- "TIME_ZONE_RELATED_PORTABILITY": "Portability: Time zone related portability",
- "READABILITY": "Maintainability: Readability",
- "SECURITY_FEATURES": "Security: Security features",
- "ARCHITECTURE_RELIABILITY": "Reliability: Architecture related reliability",
- "OS_RELATED_PORTABILITY": "Portability: OS related portability",
- "EXCEPTION_HANDLING": "Reliability: Exception handling",
- "LOGIC_CHANGEABILITY": "Changeability: Logic related changeability",
- "SOFTWARE_RELATED_PORTABILITY": "Portability: Software related portability",
- "INPUT_VALIDATION_AND_REPRESENTATION": "Security: Input validation and representation",
- "LANGUAGE_RELATED_PORTABILITY": "Portability: Language related portability",
- "ERRORS": "Security: Errors",
- "SECURITY": "Security",
- "RELIABILITY": "Reliability",
- "PORTABILITY": "Portability",
- "HARDWARE_RELATED_PORTABILITY": "Portability: Hardware related portability",
- "SYNCHRONIZATION_RELIABILITY": "Reliability: Synchronization related reliability",
- "TRANSPORTABILITY": "Reusability: Transportability",
- "COMPILER_RELATED_PORTABILITY": "Portability: Compiler related portability",
- "RESOURCE_RELIABILITY": "Reliability: Resource",
- "CPU_EFFICIENCY": "Efficiency: Processor use",
- "EFFICIENCY": "Efficiency",
- "CHANGEABILITY": "Changeability",
- "DATA_CHANGEABILITY": "Changeability: Data related changeability",
- "API_ABUSE": "Security: API abuse",
- "ARCHITECTURE_CHANGEABILITY": "Changeability: Architecture related changeability",
- "UNIT_TESTS": "Reliability: Unit tests",
- "INSTRUCTION_RELIABILITY": "Reliability: Instruction related reliability",
- "REUSABILITY": "Reusability",
- "MODULARITY": "Reusability: Modularity",
- "UNIT_TESTABILITY": "Testability: Unit level testability",
- "TESTABILITY": "Testability",
- "INTEGRATION_TESTABILITY": "Testability: Integration level testability",
- "NETWORK_USE": "Efficiency: Network use",
- "MEMORY_EFFICIENCY": "Efficiency: Memory use",
- "DATA_RELIABILITY": "Reliability: Data related reliability",
- "FAULT_TOLERANCE": "Reliability: Fault tolerance",
- "LOGIC_RELIABILITY": "Reliability: Logic related reliability"
- }
+ "characteristics": [
+ {
+ "key": "UNDERSTANDABILITY",
+ "name": "Understandability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "MAINTAINABILITY",
+ "name": "Maintainability"
+ },
+ {
+ "key": "TIME_ZONE_RELATED_PORTABILITY",
+ "name": "Time zone related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "READABILITY",
+ "name": "Readability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "SECURITY_FEATURES",
+ "name": "Security features",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_RELIABILITY",
+ "name": "Architecture related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "OS_RELATED_PORTABILITY",
+ "name": "OS related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "EXCEPTION_HANDLING",
+ "name": "Exception handling",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_CHANGEABILITY",
+ "name": "Logic related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "SOFTWARE_RELATED_PORTABILITY",
+ "name": "Software related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "INPUT_VALIDATION_AND_REPRESENTATION",
+ "name": "Input validation and representation",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "LANGUAGE_RELATED_PORTABILITY",
+ "name": "Language related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "ERRORS",
+ "name": "Errors",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "SECURITY",
+ "name": "Security"
+ },
+ {
+ "key": "RELIABILITY",
+ "name": "Reliability"
+ },
+ {
+ "key": "PORTABILITY",
+ "name": "Portability"
+ },
+ {
+ "key": "HARDWARE_RELATED_PORTABILITY",
+ "name": "Hardware related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "SYNCHRONIZATION_RELIABILITY",
+ "name": "Synchronization related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "TRANSPORTABILITY",
+ "name": "Transportability",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "COMPILER_RELATED_PORTABILITY",
+ "name": "Compiler related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "RESOURCE_RELIABILITY",
+ "name": "Resource",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "CPU_EFFICIENCY",
+ "name": "Processor use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "EFFICIENCY",
+ "name": "Efficiency"
+ },
+ {
+ "key": "CHANGEABILITY",
+ "name": "Changeability"
+ },
+ {
+ "key": "DATA_CHANGEABILITY",
+ "name": "Data related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "API_ABUSE",
+ "name": "API abuse",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_CHANGEABILITY",
+ "name": "Architecture related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "UNIT_TESTS",
+ "name": "Unit tests",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "INSTRUCTION_RELIABILITY",
+ "name": "Instruction related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "REUSABILITY",
+ "name": "Reusability"
+ },
+ {
+ "key": "MODULARITY",
+ "name": "Modularity",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "UNIT_TESTABILITY",
+ "name": "Unit level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "TESTABILITY",
+ "name": "Testability"
+ },
+ {
+ "key": "INTEGRATION_TESTABILITY",
+ "name": "Integration level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "NETWORK_USE",
+ "name": "Network use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "MEMORY_EFFICIENCY",
+ "name": "Memory use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "DATA_RELIABILITY",
+ "name": "Data related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "FAULT_TOLERANCE",
+ "name": "Fault tolerance",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_RELIABILITY",
+ "name": "Logic related reliability",
+ "parent": "RELIABILITY"
+ }
+ ]
}
diff --git a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-custom-rules/app.json b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-custom-rules/app.json
index 4f3319c8707..0eb43bc39f7 100644
--- a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-custom-rules/app.json
+++ b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-custom-rules/app.json
@@ -124,45 +124,193 @@
"DEPRECATED": "Deprecated",
"READY": "Ready"
},
- "characteristics": {
- "UNDERSTANDABILITY": "Maintainability: Understandability",
- "MAINTAINABILITY": "Maintainability",
- "TIME_ZONE_RELATED_PORTABILITY": "Portability: Time zone related portability",
- "READABILITY": "Maintainability: Readability",
- "SECURITY_FEATURES": "Security: Security features",
- "ARCHITECTURE_RELIABILITY": "Reliability: Architecture related reliability",
- "OS_RELATED_PORTABILITY": "Portability: OS related portability",
- "EXCEPTION_HANDLING": "Reliability: Exception handling",
- "LOGIC_CHANGEABILITY": "Changeability: Logic related changeability",
- "SOFTWARE_RELATED_PORTABILITY": "Portability: Software related portability",
- "INPUT_VALIDATION_AND_REPRESENTATION": "Security: Input validation and representation",
- "LANGUAGE_RELATED_PORTABILITY": "Portability: Language related portability",
- "ERRORS": "Security: Errors",
- "SECURITY": "Security",
- "RELIABILITY": "Reliability",
- "PORTABILITY": "Portability",
- "HARDWARE_RELATED_PORTABILITY": "Portability: Hardware related portability",
- "SYNCHRONIZATION_RELIABILITY": "Reliability: Synchronization related reliability",
- "TRANSPORTABILITY": "Reusability: Transportability",
- "COMPILER_RELATED_PORTABILITY": "Portability: Compiler related portability",
- "RESOURCE_RELIABILITY": "Reliability: Resource",
- "CPU_EFFICIENCY": "Efficiency: Processor use",
- "EFFICIENCY": "Efficiency",
- "CHANGEABILITY": "Changeability",
- "DATA_CHANGEABILITY": "Changeability: Data related changeability",
- "API_ABUSE": "Security: API abuse",
- "ARCHITECTURE_CHANGEABILITY": "Changeability: Architecture related changeability",
- "UNIT_TESTS": "Reliability: Unit tests",
- "INSTRUCTION_RELIABILITY": "Reliability: Instruction related reliability",
- "REUSABILITY": "Reusability",
- "MODULARITY": "Reusability: Modularity",
- "UNIT_TESTABILITY": "Testability: Unit level testability",
- "TESTABILITY": "Testability",
- "INTEGRATION_TESTABILITY": "Testability: Integration level testability",
- "NETWORK_USE": "Efficiency: Network use",
- "MEMORY_EFFICIENCY": "Efficiency: Memory use",
- "DATA_RELIABILITY": "Reliability: Data related reliability",
- "FAULT_TOLERANCE": "Reliability: Fault tolerance",
- "LOGIC_RELIABILITY": "Reliability: Logic related reliability"
- }
+ "characteristics": [
+ {
+ "key": "UNDERSTANDABILITY",
+ "name": "Understandability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "MAINTAINABILITY",
+ "name": "Maintainability"
+ },
+ {
+ "key": "TIME_ZONE_RELATED_PORTABILITY",
+ "name": "Time zone related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "READABILITY",
+ "name": "Readability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "SECURITY_FEATURES",
+ "name": "Security features",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_RELIABILITY",
+ "name": "Architecture related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "OS_RELATED_PORTABILITY",
+ "name": "OS related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "EXCEPTION_HANDLING",
+ "name": "Exception handling",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_CHANGEABILITY",
+ "name": "Logic related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "SOFTWARE_RELATED_PORTABILITY",
+ "name": "Software related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "INPUT_VALIDATION_AND_REPRESENTATION",
+ "name": "Input validation and representation",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "LANGUAGE_RELATED_PORTABILITY",
+ "name": "Language related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "ERRORS",
+ "name": "Errors",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "SECURITY",
+ "name": "Security"
+ },
+ {
+ "key": "RELIABILITY",
+ "name": "Reliability"
+ },
+ {
+ "key": "PORTABILITY",
+ "name": "Portability"
+ },
+ {
+ "key": "HARDWARE_RELATED_PORTABILITY",
+ "name": "Hardware related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "SYNCHRONIZATION_RELIABILITY",
+ "name": "Synchronization related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "TRANSPORTABILITY",
+ "name": "Transportability",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "COMPILER_RELATED_PORTABILITY",
+ "name": "Compiler related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "RESOURCE_RELIABILITY",
+ "name": "Resource",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "CPU_EFFICIENCY",
+ "name": "Processor use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "EFFICIENCY",
+ "name": "Efficiency"
+ },
+ {
+ "key": "CHANGEABILITY",
+ "name": "Changeability"
+ },
+ {
+ "key": "DATA_CHANGEABILITY",
+ "name": "Data related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "API_ABUSE",
+ "name": "API abuse",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_CHANGEABILITY",
+ "name": "Architecture related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "UNIT_TESTS",
+ "name": "Unit tests",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "INSTRUCTION_RELIABILITY",
+ "name": "Instruction related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "REUSABILITY",
+ "name": "Reusability"
+ },
+ {
+ "key": "MODULARITY",
+ "name": "Modularity",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "UNIT_TESTABILITY",
+ "name": "Unit level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "TESTABILITY",
+ "name": "Testability"
+ },
+ {
+ "key": "INTEGRATION_TESTABILITY",
+ "name": "Integration level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "NETWORK_USE",
+ "name": "Network use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "MEMORY_EFFICIENCY",
+ "name": "Memory use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "DATA_RELIABILITY",
+ "name": "Data related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "FAULT_TOLERANCE",
+ "name": "Fault tolerance",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_RELIABILITY",
+ "name": "Logic related reliability",
+ "parent": "RELIABILITY"
+ }
+ ]
}
diff --git a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-deprecated-label/app.json b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-deprecated-label/app.json
index 4f3319c8707..0eb43bc39f7 100644
--- a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-deprecated-label/app.json
+++ b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-deprecated-label/app.json
@@ -124,45 +124,193 @@
"DEPRECATED": "Deprecated",
"READY": "Ready"
},
- "characteristics": {
- "UNDERSTANDABILITY": "Maintainability: Understandability",
- "MAINTAINABILITY": "Maintainability",
- "TIME_ZONE_RELATED_PORTABILITY": "Portability: Time zone related portability",
- "READABILITY": "Maintainability: Readability",
- "SECURITY_FEATURES": "Security: Security features",
- "ARCHITECTURE_RELIABILITY": "Reliability: Architecture related reliability",
- "OS_RELATED_PORTABILITY": "Portability: OS related portability",
- "EXCEPTION_HANDLING": "Reliability: Exception handling",
- "LOGIC_CHANGEABILITY": "Changeability: Logic related changeability",
- "SOFTWARE_RELATED_PORTABILITY": "Portability: Software related portability",
- "INPUT_VALIDATION_AND_REPRESENTATION": "Security: Input validation and representation",
- "LANGUAGE_RELATED_PORTABILITY": "Portability: Language related portability",
- "ERRORS": "Security: Errors",
- "SECURITY": "Security",
- "RELIABILITY": "Reliability",
- "PORTABILITY": "Portability",
- "HARDWARE_RELATED_PORTABILITY": "Portability: Hardware related portability",
- "SYNCHRONIZATION_RELIABILITY": "Reliability: Synchronization related reliability",
- "TRANSPORTABILITY": "Reusability: Transportability",
- "COMPILER_RELATED_PORTABILITY": "Portability: Compiler related portability",
- "RESOURCE_RELIABILITY": "Reliability: Resource",
- "CPU_EFFICIENCY": "Efficiency: Processor use",
- "EFFICIENCY": "Efficiency",
- "CHANGEABILITY": "Changeability",
- "DATA_CHANGEABILITY": "Changeability: Data related changeability",
- "API_ABUSE": "Security: API abuse",
- "ARCHITECTURE_CHANGEABILITY": "Changeability: Architecture related changeability",
- "UNIT_TESTS": "Reliability: Unit tests",
- "INSTRUCTION_RELIABILITY": "Reliability: Instruction related reliability",
- "REUSABILITY": "Reusability",
- "MODULARITY": "Reusability: Modularity",
- "UNIT_TESTABILITY": "Testability: Unit level testability",
- "TESTABILITY": "Testability",
- "INTEGRATION_TESTABILITY": "Testability: Integration level testability",
- "NETWORK_USE": "Efficiency: Network use",
- "MEMORY_EFFICIENCY": "Efficiency: Memory use",
- "DATA_RELIABILITY": "Reliability: Data related reliability",
- "FAULT_TOLERANCE": "Reliability: Fault tolerance",
- "LOGIC_RELIABILITY": "Reliability: Logic related reliability"
- }
+ "characteristics": [
+ {
+ "key": "UNDERSTANDABILITY",
+ "name": "Understandability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "MAINTAINABILITY",
+ "name": "Maintainability"
+ },
+ {
+ "key": "TIME_ZONE_RELATED_PORTABILITY",
+ "name": "Time zone related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "READABILITY",
+ "name": "Readability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "SECURITY_FEATURES",
+ "name": "Security features",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_RELIABILITY",
+ "name": "Architecture related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "OS_RELATED_PORTABILITY",
+ "name": "OS related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "EXCEPTION_HANDLING",
+ "name": "Exception handling",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_CHANGEABILITY",
+ "name": "Logic related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "SOFTWARE_RELATED_PORTABILITY",
+ "name": "Software related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "INPUT_VALIDATION_AND_REPRESENTATION",
+ "name": "Input validation and representation",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "LANGUAGE_RELATED_PORTABILITY",
+ "name": "Language related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "ERRORS",
+ "name": "Errors",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "SECURITY",
+ "name": "Security"
+ },
+ {
+ "key": "RELIABILITY",
+ "name": "Reliability"
+ },
+ {
+ "key": "PORTABILITY",
+ "name": "Portability"
+ },
+ {
+ "key": "HARDWARE_RELATED_PORTABILITY",
+ "name": "Hardware related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "SYNCHRONIZATION_RELIABILITY",
+ "name": "Synchronization related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "TRANSPORTABILITY",
+ "name": "Transportability",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "COMPILER_RELATED_PORTABILITY",
+ "name": "Compiler related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "RESOURCE_RELIABILITY",
+ "name": "Resource",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "CPU_EFFICIENCY",
+ "name": "Processor use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "EFFICIENCY",
+ "name": "Efficiency"
+ },
+ {
+ "key": "CHANGEABILITY",
+ "name": "Changeability"
+ },
+ {
+ "key": "DATA_CHANGEABILITY",
+ "name": "Data related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "API_ABUSE",
+ "name": "API abuse",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_CHANGEABILITY",
+ "name": "Architecture related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "UNIT_TESTS",
+ "name": "Unit tests",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "INSTRUCTION_RELIABILITY",
+ "name": "Instruction related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "REUSABILITY",
+ "name": "Reusability"
+ },
+ {
+ "key": "MODULARITY",
+ "name": "Modularity",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "UNIT_TESTABILITY",
+ "name": "Unit level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "TESTABILITY",
+ "name": "Testability"
+ },
+ {
+ "key": "INTEGRATION_TESTABILITY",
+ "name": "Integration level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "NETWORK_USE",
+ "name": "Network use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "MEMORY_EFFICIENCY",
+ "name": "Memory use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "DATA_RELIABILITY",
+ "name": "Data related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "FAULT_TOLERANCE",
+ "name": "Fault tolerance",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_RELIABILITY",
+ "name": "Logic related reliability",
+ "parent": "RELIABILITY"
+ }
+ ]
}
diff --git a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-details/app.json b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-details/app.json
index 4f3319c8707..0eb43bc39f7 100644
--- a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-details/app.json
+++ b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-details/app.json
@@ -124,45 +124,193 @@
"DEPRECATED": "Deprecated",
"READY": "Ready"
},
- "characteristics": {
- "UNDERSTANDABILITY": "Maintainability: Understandability",
- "MAINTAINABILITY": "Maintainability",
- "TIME_ZONE_RELATED_PORTABILITY": "Portability: Time zone related portability",
- "READABILITY": "Maintainability: Readability",
- "SECURITY_FEATURES": "Security: Security features",
- "ARCHITECTURE_RELIABILITY": "Reliability: Architecture related reliability",
- "OS_RELATED_PORTABILITY": "Portability: OS related portability",
- "EXCEPTION_HANDLING": "Reliability: Exception handling",
- "LOGIC_CHANGEABILITY": "Changeability: Logic related changeability",
- "SOFTWARE_RELATED_PORTABILITY": "Portability: Software related portability",
- "INPUT_VALIDATION_AND_REPRESENTATION": "Security: Input validation and representation",
- "LANGUAGE_RELATED_PORTABILITY": "Portability: Language related portability",
- "ERRORS": "Security: Errors",
- "SECURITY": "Security",
- "RELIABILITY": "Reliability",
- "PORTABILITY": "Portability",
- "HARDWARE_RELATED_PORTABILITY": "Portability: Hardware related portability",
- "SYNCHRONIZATION_RELIABILITY": "Reliability: Synchronization related reliability",
- "TRANSPORTABILITY": "Reusability: Transportability",
- "COMPILER_RELATED_PORTABILITY": "Portability: Compiler related portability",
- "RESOURCE_RELIABILITY": "Reliability: Resource",
- "CPU_EFFICIENCY": "Efficiency: Processor use",
- "EFFICIENCY": "Efficiency",
- "CHANGEABILITY": "Changeability",
- "DATA_CHANGEABILITY": "Changeability: Data related changeability",
- "API_ABUSE": "Security: API abuse",
- "ARCHITECTURE_CHANGEABILITY": "Changeability: Architecture related changeability",
- "UNIT_TESTS": "Reliability: Unit tests",
- "INSTRUCTION_RELIABILITY": "Reliability: Instruction related reliability",
- "REUSABILITY": "Reusability",
- "MODULARITY": "Reusability: Modularity",
- "UNIT_TESTABILITY": "Testability: Unit level testability",
- "TESTABILITY": "Testability",
- "INTEGRATION_TESTABILITY": "Testability: Integration level testability",
- "NETWORK_USE": "Efficiency: Network use",
- "MEMORY_EFFICIENCY": "Efficiency: Memory use",
- "DATA_RELIABILITY": "Reliability: Data related reliability",
- "FAULT_TOLERANCE": "Reliability: Fault tolerance",
- "LOGIC_RELIABILITY": "Reliability: Logic related reliability"
- }
+ "characteristics": [
+ {
+ "key": "UNDERSTANDABILITY",
+ "name": "Understandability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "MAINTAINABILITY",
+ "name": "Maintainability"
+ },
+ {
+ "key": "TIME_ZONE_RELATED_PORTABILITY",
+ "name": "Time zone related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "READABILITY",
+ "name": "Readability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "SECURITY_FEATURES",
+ "name": "Security features",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_RELIABILITY",
+ "name": "Architecture related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "OS_RELATED_PORTABILITY",
+ "name": "OS related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "EXCEPTION_HANDLING",
+ "name": "Exception handling",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_CHANGEABILITY",
+ "name": "Logic related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "SOFTWARE_RELATED_PORTABILITY",
+ "name": "Software related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "INPUT_VALIDATION_AND_REPRESENTATION",
+ "name": "Input validation and representation",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "LANGUAGE_RELATED_PORTABILITY",
+ "name": "Language related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "ERRORS",
+ "name": "Errors",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "SECURITY",
+ "name": "Security"
+ },
+ {
+ "key": "RELIABILITY",
+ "name": "Reliability"
+ },
+ {
+ "key": "PORTABILITY",
+ "name": "Portability"
+ },
+ {
+ "key": "HARDWARE_RELATED_PORTABILITY",
+ "name": "Hardware related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "SYNCHRONIZATION_RELIABILITY",
+ "name": "Synchronization related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "TRANSPORTABILITY",
+ "name": "Transportability",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "COMPILER_RELATED_PORTABILITY",
+ "name": "Compiler related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "RESOURCE_RELIABILITY",
+ "name": "Resource",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "CPU_EFFICIENCY",
+ "name": "Processor use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "EFFICIENCY",
+ "name": "Efficiency"
+ },
+ {
+ "key": "CHANGEABILITY",
+ "name": "Changeability"
+ },
+ {
+ "key": "DATA_CHANGEABILITY",
+ "name": "Data related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "API_ABUSE",
+ "name": "API abuse",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_CHANGEABILITY",
+ "name": "Architecture related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "UNIT_TESTS",
+ "name": "Unit tests",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "INSTRUCTION_RELIABILITY",
+ "name": "Instruction related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "REUSABILITY",
+ "name": "Reusability"
+ },
+ {
+ "key": "MODULARITY",
+ "name": "Modularity",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "UNIT_TESTABILITY",
+ "name": "Unit level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "TESTABILITY",
+ "name": "Testability"
+ },
+ {
+ "key": "INTEGRATION_TESTABILITY",
+ "name": "Integration level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "NETWORK_USE",
+ "name": "Network use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "MEMORY_EFFICIENCY",
+ "name": "Memory use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "DATA_RELIABILITY",
+ "name": "Data related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "FAULT_TOLERANCE",
+ "name": "Fault tolerance",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_RELIABILITY",
+ "name": "Logic related reliability",
+ "parent": "RELIABILITY"
+ }
+ ]
}
diff --git a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-empty-list/app.json b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-empty-list/app.json
index 4f3319c8707..0eb43bc39f7 100644
--- a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-empty-list/app.json
+++ b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-empty-list/app.json
@@ -124,45 +124,193 @@
"DEPRECATED": "Deprecated",
"READY": "Ready"
},
- "characteristics": {
- "UNDERSTANDABILITY": "Maintainability: Understandability",
- "MAINTAINABILITY": "Maintainability",
- "TIME_ZONE_RELATED_PORTABILITY": "Portability: Time zone related portability",
- "READABILITY": "Maintainability: Readability",
- "SECURITY_FEATURES": "Security: Security features",
- "ARCHITECTURE_RELIABILITY": "Reliability: Architecture related reliability",
- "OS_RELATED_PORTABILITY": "Portability: OS related portability",
- "EXCEPTION_HANDLING": "Reliability: Exception handling",
- "LOGIC_CHANGEABILITY": "Changeability: Logic related changeability",
- "SOFTWARE_RELATED_PORTABILITY": "Portability: Software related portability",
- "INPUT_VALIDATION_AND_REPRESENTATION": "Security: Input validation and representation",
- "LANGUAGE_RELATED_PORTABILITY": "Portability: Language related portability",
- "ERRORS": "Security: Errors",
- "SECURITY": "Security",
- "RELIABILITY": "Reliability",
- "PORTABILITY": "Portability",
- "HARDWARE_RELATED_PORTABILITY": "Portability: Hardware related portability",
- "SYNCHRONIZATION_RELIABILITY": "Reliability: Synchronization related reliability",
- "TRANSPORTABILITY": "Reusability: Transportability",
- "COMPILER_RELATED_PORTABILITY": "Portability: Compiler related portability",
- "RESOURCE_RELIABILITY": "Reliability: Resource",
- "CPU_EFFICIENCY": "Efficiency: Processor use",
- "EFFICIENCY": "Efficiency",
- "CHANGEABILITY": "Changeability",
- "DATA_CHANGEABILITY": "Changeability: Data related changeability",
- "API_ABUSE": "Security: API abuse",
- "ARCHITECTURE_CHANGEABILITY": "Changeability: Architecture related changeability",
- "UNIT_TESTS": "Reliability: Unit tests",
- "INSTRUCTION_RELIABILITY": "Reliability: Instruction related reliability",
- "REUSABILITY": "Reusability",
- "MODULARITY": "Reusability: Modularity",
- "UNIT_TESTABILITY": "Testability: Unit level testability",
- "TESTABILITY": "Testability",
- "INTEGRATION_TESTABILITY": "Testability: Integration level testability",
- "NETWORK_USE": "Efficiency: Network use",
- "MEMORY_EFFICIENCY": "Efficiency: Memory use",
- "DATA_RELIABILITY": "Reliability: Data related reliability",
- "FAULT_TOLERANCE": "Reliability: Fault tolerance",
- "LOGIC_RELIABILITY": "Reliability: Logic related reliability"
- }
+ "characteristics": [
+ {
+ "key": "UNDERSTANDABILITY",
+ "name": "Understandability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "MAINTAINABILITY",
+ "name": "Maintainability"
+ },
+ {
+ "key": "TIME_ZONE_RELATED_PORTABILITY",
+ "name": "Time zone related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "READABILITY",
+ "name": "Readability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "SECURITY_FEATURES",
+ "name": "Security features",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_RELIABILITY",
+ "name": "Architecture related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "OS_RELATED_PORTABILITY",
+ "name": "OS related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "EXCEPTION_HANDLING",
+ "name": "Exception handling",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_CHANGEABILITY",
+ "name": "Logic related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "SOFTWARE_RELATED_PORTABILITY",
+ "name": "Software related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "INPUT_VALIDATION_AND_REPRESENTATION",
+ "name": "Input validation and representation",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "LANGUAGE_RELATED_PORTABILITY",
+ "name": "Language related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "ERRORS",
+ "name": "Errors",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "SECURITY",
+ "name": "Security"
+ },
+ {
+ "key": "RELIABILITY",
+ "name": "Reliability"
+ },
+ {
+ "key": "PORTABILITY",
+ "name": "Portability"
+ },
+ {
+ "key": "HARDWARE_RELATED_PORTABILITY",
+ "name": "Hardware related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "SYNCHRONIZATION_RELIABILITY",
+ "name": "Synchronization related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "TRANSPORTABILITY",
+ "name": "Transportability",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "COMPILER_RELATED_PORTABILITY",
+ "name": "Compiler related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "RESOURCE_RELIABILITY",
+ "name": "Resource",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "CPU_EFFICIENCY",
+ "name": "Processor use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "EFFICIENCY",
+ "name": "Efficiency"
+ },
+ {
+ "key": "CHANGEABILITY",
+ "name": "Changeability"
+ },
+ {
+ "key": "DATA_CHANGEABILITY",
+ "name": "Data related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "API_ABUSE",
+ "name": "API abuse",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_CHANGEABILITY",
+ "name": "Architecture related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "UNIT_TESTS",
+ "name": "Unit tests",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "INSTRUCTION_RELIABILITY",
+ "name": "Instruction related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "REUSABILITY",
+ "name": "Reusability"
+ },
+ {
+ "key": "MODULARITY",
+ "name": "Modularity",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "UNIT_TESTABILITY",
+ "name": "Unit level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "TESTABILITY",
+ "name": "Testability"
+ },
+ {
+ "key": "INTEGRATION_TESTABILITY",
+ "name": "Integration level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "NETWORK_USE",
+ "name": "Network use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "MEMORY_EFFICIENCY",
+ "name": "Memory use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "DATA_RELIABILITY",
+ "name": "Data related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "FAULT_TOLERANCE",
+ "name": "Fault tolerance",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_RELIABILITY",
+ "name": "Logic related reliability",
+ "parent": "RELIABILITY"
+ }
+ ]
}
diff --git a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-rule-issues/app.json b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-rule-issues/app.json
index 4f3319c8707..0eb43bc39f7 100644
--- a/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-rule-issues/app.json
+++ b/server/sonar-web/src/main/js/tests/e2e/tests/coding-rules-page-should-show-rule-issues/app.json
@@ -124,45 +124,193 @@
"DEPRECATED": "Deprecated",
"READY": "Ready"
},
- "characteristics": {
- "UNDERSTANDABILITY": "Maintainability: Understandability",
- "MAINTAINABILITY": "Maintainability",
- "TIME_ZONE_RELATED_PORTABILITY": "Portability: Time zone related portability",
- "READABILITY": "Maintainability: Readability",
- "SECURITY_FEATURES": "Security: Security features",
- "ARCHITECTURE_RELIABILITY": "Reliability: Architecture related reliability",
- "OS_RELATED_PORTABILITY": "Portability: OS related portability",
- "EXCEPTION_HANDLING": "Reliability: Exception handling",
- "LOGIC_CHANGEABILITY": "Changeability: Logic related changeability",
- "SOFTWARE_RELATED_PORTABILITY": "Portability: Software related portability",
- "INPUT_VALIDATION_AND_REPRESENTATION": "Security: Input validation and representation",
- "LANGUAGE_RELATED_PORTABILITY": "Portability: Language related portability",
- "ERRORS": "Security: Errors",
- "SECURITY": "Security",
- "RELIABILITY": "Reliability",
- "PORTABILITY": "Portability",
- "HARDWARE_RELATED_PORTABILITY": "Portability: Hardware related portability",
- "SYNCHRONIZATION_RELIABILITY": "Reliability: Synchronization related reliability",
- "TRANSPORTABILITY": "Reusability: Transportability",
- "COMPILER_RELATED_PORTABILITY": "Portability: Compiler related portability",
- "RESOURCE_RELIABILITY": "Reliability: Resource",
- "CPU_EFFICIENCY": "Efficiency: Processor use",
- "EFFICIENCY": "Efficiency",
- "CHANGEABILITY": "Changeability",
- "DATA_CHANGEABILITY": "Changeability: Data related changeability",
- "API_ABUSE": "Security: API abuse",
- "ARCHITECTURE_CHANGEABILITY": "Changeability: Architecture related changeability",
- "UNIT_TESTS": "Reliability: Unit tests",
- "INSTRUCTION_RELIABILITY": "Reliability: Instruction related reliability",
- "REUSABILITY": "Reusability",
- "MODULARITY": "Reusability: Modularity",
- "UNIT_TESTABILITY": "Testability: Unit level testability",
- "TESTABILITY": "Testability",
- "INTEGRATION_TESTABILITY": "Testability: Integration level testability",
- "NETWORK_USE": "Efficiency: Network use",
- "MEMORY_EFFICIENCY": "Efficiency: Memory use",
- "DATA_RELIABILITY": "Reliability: Data related reliability",
- "FAULT_TOLERANCE": "Reliability: Fault tolerance",
- "LOGIC_RELIABILITY": "Reliability: Logic related reliability"
- }
+ "characteristics": [
+ {
+ "key": "UNDERSTANDABILITY",
+ "name": "Understandability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "MAINTAINABILITY",
+ "name": "Maintainability"
+ },
+ {
+ "key": "TIME_ZONE_RELATED_PORTABILITY",
+ "name": "Time zone related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "READABILITY",
+ "name": "Readability",
+ "parent": "MAINTAINABILITY"
+ },
+ {
+ "key": "SECURITY_FEATURES",
+ "name": "Security features",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_RELIABILITY",
+ "name": "Architecture related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "OS_RELATED_PORTABILITY",
+ "name": "OS related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "EXCEPTION_HANDLING",
+ "name": "Exception handling",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_CHANGEABILITY",
+ "name": "Logic related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "SOFTWARE_RELATED_PORTABILITY",
+ "name": "Software related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "INPUT_VALIDATION_AND_REPRESENTATION",
+ "name": "Input validation and representation",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "LANGUAGE_RELATED_PORTABILITY",
+ "name": "Language related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "ERRORS",
+ "name": "Errors",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "SECURITY",
+ "name": "Security"
+ },
+ {
+ "key": "RELIABILITY",
+ "name": "Reliability"
+ },
+ {
+ "key": "PORTABILITY",
+ "name": "Portability"
+ },
+ {
+ "key": "HARDWARE_RELATED_PORTABILITY",
+ "name": "Hardware related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "SYNCHRONIZATION_RELIABILITY",
+ "name": "Synchronization related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "TRANSPORTABILITY",
+ "name": "Transportability",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "COMPILER_RELATED_PORTABILITY",
+ "name": "Compiler related portability",
+ "parent": "PORTABILITY"
+ },
+ {
+ "key": "RESOURCE_RELIABILITY",
+ "name": "Resource",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "CPU_EFFICIENCY",
+ "name": "Processor use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "EFFICIENCY",
+ "name": "Efficiency"
+ },
+ {
+ "key": "CHANGEABILITY",
+ "name": "Changeability"
+ },
+ {
+ "key": "DATA_CHANGEABILITY",
+ "name": "Data related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "API_ABUSE",
+ "name": "API abuse",
+ "parent": "SECURITY"
+ },
+ {
+ "key": "ARCHITECTURE_CHANGEABILITY",
+ "name": "Architecture related changeability",
+ "parent": "CHANGEABILITY"
+ },
+ {
+ "key": "UNIT_TESTS",
+ "name": "Unit tests",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "INSTRUCTION_RELIABILITY",
+ "name": "Instruction related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "REUSABILITY",
+ "name": "Reusability"
+ },
+ {
+ "key": "MODULARITY",
+ "name": "Modularity",
+ "parent": "REUSABILITY"
+ },
+ {
+ "key": "UNIT_TESTABILITY",
+ "name": "Unit level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "TESTABILITY",
+ "name": "Testability"
+ },
+ {
+ "key": "INTEGRATION_TESTABILITY",
+ "name": "Integration level testability",
+ "parent": "TESTABILITY"
+ },
+ {
+ "key": "NETWORK_USE",
+ "name": "Network use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "MEMORY_EFFICIENCY",
+ "name": "Memory use",
+ "parent": "EFFICIENCY"
+ },
+ {
+ "key": "DATA_RELIABILITY",
+ "name": "Data related reliability",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "FAULT_TOLERANCE",
+ "name": "Fault tolerance",
+ "parent": "RELIABILITY"
+ },
+ {
+ "key": "LOGIC_RELIABILITY",
+ "name": "Logic related reliability",
+ "parent": "RELIABILITY"
+ }
+ ]
}