Commit aa03c3dd authored by catch's avatar catch

Issue #2167623 by danilenko_dn, sidharthap, Nitesh Sethia, krishnan.n, aitiba,...

Issue #2167623 by danilenko_dn, sidharthap, Nitesh Sethia, krishnan.n, aitiba, alexpott, ashwinikumar, Barrett, damiankloip, deepakaryan1988, foxtrotcharlie, ianthomas_uk, neetu morwani, nonsie, piyuesh23, Sharique, sivaji, sushantpaste, swentel, vijaycs85, YesCT: Add test for all default configuration to ensure schema exists and is correct.
parent 81e3e038
...@@ -574,8 +574,8 @@ protected function castValue($key, $value) { ...@@ -574,8 +574,8 @@ protected function castValue($key, $value) {
} }
} }
catch (SchemaIncompleteException $e) { catch (SchemaIncompleteException $e) {
// @todo throw an exception due to an incomplete schema. Only possible // @todo throw an exception due to an incomplete schema.
// once https://drupal.org/node/1910624 is complete. // Fix as part of https://drupal.org/node/2183983.
} }
} }
else { else {
......
...@@ -78,12 +78,49 @@ filter: ...@@ -78,12 +78,49 @@ filter:
type: mapping type: mapping
label: 'Filter' label: 'Filter'
mapping: mapping:
module: id:
type: string type: string
label: 'Module' label: 'ID'
provider:
type: string
label: 'Provider'
status: status:
type: boolean type: boolean
label: 'Enabled' label: 'Status'
weight:
type: integer
label: 'Weight'
settings:
type: filter_settings.[%parent.id]
# System action configuration base.
action_configuration_default:
type: sequence
label: 'Action configuration'
sequence:
- type: string
theme_settings_default:
type: mapping
mapping:
shortcut_module_link:
type: boolean
label: 'Shortcut module link'
theme_breakpoints_default:
type: sequence
sequence:
- type: string
label: 'Breakpoint value'
views_field_bulk_form:
type: views_field
label: 'Bulk operation'
mapping:
action_title:
type: label
label: 'Action title'
# Array of routes with route_name and route_params keys. # Array of routes with route_name and route_params keys.
route: route:
......
<?php
/**
* @file
* Contains \Drupal\Core\Config\UnsupportedConfigDataTypeException.
*/
namespace Drupal\Core\Config;
/**
* Exception thrown when a config data type is invalid.
*/
class UnsupportedConfigDataTypeException extends ConfigException {
}
...@@ -7,3 +7,34 @@ action.settings: ...@@ -7,3 +7,34 @@ action.settings:
recursion_limit: recursion_limit:
type: integer type: integer
label: 'Recursion limit for actions' label: 'Recursion limit for actions'
action.configuration.action_send_email_action:
type: mapping
label: 'Send e-mail configuration'
mapping:
recipient:
type: string
label: 'Recipient'
subject:
type: label
label: 'Subject'
message:
type: text
label: 'Message'
action.configuration.action_goto_action:
type: mapping
label: 'Redirect to URL configuration'
mapping:
url:
type: string
label: 'URL'
action.configuration.action_message_action:
type: mapping
label: 'Display a message to the user configuration'
mapping:
message:
type: text
label: 'Message'
views.field.bulk_form: views.field.bulk_form:
type: views_field type: views_field_bulk_form
label: 'Bulk form' label: 'Bulk form'
mapping:
action_title:
type: label
label: 'Action title'
...@@ -9,7 +9,7 @@ display: ...@@ -9,7 +9,7 @@ display:
display_plugin: default display_plugin: default
id: default id: default
display_title: Master display_title: Master
position: '' position: null
display_options: display_options:
access: access:
type: perm type: perm
...@@ -22,35 +22,35 @@ display: ...@@ -22,35 +22,35 @@ display:
pager: pager:
type: full type: full
options: options:
items_per_page: '10' items_per_page: 10
style: style:
type: table type: table
options: options:
grouping: { } grouping: { }
row_class: '' row_class: ''
default_row_class: '1' default_row_class: true
row_class_special: '1' row_class_special: true
override: '1' override: true
sticky: '0' sticky: false
summary: '' summary: ''
columns: columns:
title: title title: title
action_bulk_form: action_bulk_form action_bulk_form: action_bulk_form
info: info:
title: title:
sortable: '0' sortable: false
default_sort_order: asc default_sort_order: asc
align: '' align: ''
separator: '' separator: ''
empty_column: '0' empty_column: false
responsive: '' responsive: ''
bulk_form: bulk_form:
align: '' align: ''
separator: '' separator: ''
empty_column: '0' empty_column: false
responsive: '' responsive: ''
default: '-1' default: ''
empty_table: '0' empty_table: false
row: row:
type: fields type: fields
fields: fields:
...@@ -60,17 +60,17 @@ display: ...@@ -60,17 +60,17 @@ display:
field: title field: title
label: '' label: ''
alter: alter:
alter_text: '0' alter_text: false
make_link: '0' make_link: false
absolute: '0' absolute: false
trim: '0' trim: false
word_boundary: '0' word_boundary: false
ellipsis: '0' ellipsis: false
strip_tags: '0' strip_tags: false
html: '0' html: false
hide_empty: '0' hide_empty: false
empty_zero: '0' empty_zero: false
link_to_node: '1' link_to_node: true
plugin_id: node plugin_id: node
provider: node provider: node
action_bulk_form: action_bulk_form:
...@@ -81,57 +81,57 @@ display: ...@@ -81,57 +81,57 @@ display:
group_type: group group_type: group
admin_label: '' admin_label: ''
label: 'Bulk form' label: 'Bulk form'
exclude: '0' exclude: false
alter: alter:
alter_text: '0' alter_text: false
text: '' text: ''
make_link: '0' make_link: false
path: '' path: ''
absolute: '0' absolute: false
external: '0' external: false
replace_spaces: '0' replace_spaces: false
path_case: none path_case: none
trim_whitespace: '0' trim_whitespace: false
alt: '' alt: ''
rel: '' rel: ''
link_class: '' link_class: ''
prefix: '' prefix: ''
suffix: '' suffix: ''
target: '' target: ''
nl2br: '0' nl2br: false
max_length: '' max_length: ''
word_boundary: '1' word_boundary: true
ellipsis: '1' ellipsis: true
more_link: '0' more_link: false
more_link_text: '' more_link_text: ''
more_link_path: '' more_link_path: ''
strip_tags: '0' strip_tags: false
trim: '0' trim: false
preserve_tags: '' preserve_tags: ''
html: '0' html: false
element_type: '' element_type: ''
element_class: '' element_class: ''
element_label_type: '' element_label_type: ''
element_label_class: '' element_label_class: ''
element_label_colon: '1' element_label_colon: true
element_wrapper_type: '' element_wrapper_type: ''
element_wrapper_class: '' element_wrapper_class: ''
element_default_classes: '1' element_default_classes: true
empty: '' empty: ''
hide_empty: '0' hide_empty: false
empty_zero: '0' empty_zero: false
hide_alter_empty: '1' hide_alter_empty: true
plugin_id: action_bulk_form plugin_id: action_bulk_form
provider: action provider: action
filters: filters:
status: status:
value: '1' value: true
table: node_field_data table: node_field_data
field: status field: status
id: status id: status
expose: expose:
operator: '0' operator: ''
group: '1' group: 1
plugin_id: boolean plugin_id: boolean
provider: views provider: views
sorts: sorts:
...@@ -147,10 +147,10 @@ display: ...@@ -147,10 +147,10 @@ display:
display_plugin: page display_plugin: page
id: page_1 id: page_1
display_title: Page display_title: Page
position: '' position: null
display_options: display_options:
path: test_bulk_form path: test_bulk_form
base_field: nid base_field: nid
status: '1' status: true
module: views module: views
langcode: und langcode: und
# Schema for the views plugins of the Aggregator module.
views.argument.aggregator_fid:
type: views.argument.numeric
label: 'Aggregator feed ID'
views.argument.aggregator_iid:
type: views.argument.numeric
label: 'Aggregator item ID'
views.field.aggregator_title_link:
type: views_field
label: 'Title link'
mapping:
display_as_link:
type: boolean
label: 'Display as link'
views.field.aggregator_xss:
type: views.field.xss
label: 'Aggregator XSS'
views.row.aggregator_rss:
type: views_row
label: 'Aggregator item row'
mapping:
item_length:
type: string
label: 'Display type'
...@@ -42,7 +42,7 @@ display: ...@@ -42,7 +42,7 @@ display:
id: 0 id: 0
total_pages: 0 total_pages: 0
expose: expose:
items_per_page: '0' items_per_page: false
items_per_page_label: 'Items per page' items_per_page_label: 'Items per page'
items_per_page_options: '5, 10, 20, 40, 60' items_per_page_options: '5, 10, 20, 40, 60'
items_per_page_options_all: false items_per_page_options_all: false
...@@ -54,7 +54,7 @@ display: ...@@ -54,7 +54,7 @@ display:
next: 'next ›' next: 'next ›'
first: '« first' first: '« first'
last: 'last »' last: 'last »'
quantity: '9' quantity: 9
style: style:
type: default type: default
row: row:
...@@ -69,6 +69,7 @@ display: ...@@ -69,6 +69,7 @@ display:
admin_label: '' admin_label: ''
label: 'Item ID' label: 'Item ID'
exclude: false exclude: false
plugin_id: numeric
alter: alter:
alter_text: false alter_text: false
text: '' text: ''
...@@ -108,11 +109,11 @@ display: ...@@ -108,11 +109,11 @@ display:
hide_empty: false hide_empty: false
empty_zero: false empty_zero: false
hide_alter_empty: true hide_alter_empty: true
set_precision: '0' set_precision: false
precision: '0' precision: 0
decimal: . decimal: .
separator: ',' separator: ','
format_plural: '0' format_plural: false
format_plural_singular: '1' format_plural_singular: '1'
format_plural_plural: '@count' format_plural_plural: '@count'
prefix: '' prefix: ''
......
# Schema for the configuration files of the Aggregator Test module.
aggregator_test.settings:
type: mapping
label: 'Aggregator test settings'
mapping:
items:
type: mapping
label: 'Items'
mapping:
dummy_length:
type: integer
label: 'Dummy length'
...@@ -2,13 +2,24 @@ base_field: iid ...@@ -2,13 +2,24 @@ base_field: iid
base_table: aggregator_item base_table: aggregator_item
core: 8.x core: 8.x
description: '' description: ''
status: '1' status: true
display: display:
feed_1:
display_plugin: feed
id: feed_1
display_title: Feed
position: null
display_options:
path: test-aggregator-items-feed
row:
type: aggregator_rss
options:
item_length: default
default: default:
display_plugin: default display_plugin: default
id: default id: default
display_title: Master display_title: Master
position: '' position: null
display_options: display_options:
access: access:
type: none type: none
...@@ -36,32 +47,32 @@ display: ...@@ -36,32 +47,32 @@ display:
id: title id: title
plugin_id: aggregator_title_link plugin_id: aggregator_title_link
alter: alter:
alter_text: '0' alter_text: false
text: '' text: ''
make_link: '0' make_link: false
path: '' path: ''
absolute: '0' absolute: false
external: '0' external: false
replace_spaces: '0' replace_spaces: false
path_case: none path_case: none
trim_whitespace: '0' trim_whitespace: false
alt: '' alt: ''
rel: '' rel: ''
link_class: '' link_class: ''
prefix: '' prefix: ''
suffix: '' suffix: ''
target: '' target: ''
nl2br: '0' nl2br: false
max_length: '' max_length: ''
word_boundary: '1' word_boundary: true