diff --git a/core/modules/responsive_image/responsive_image.module b/core/modules/responsive_image/responsive_image.module
index 068f3ea..27c83ca 100644
--- a/core/modules/responsive_image/responsive_image.module
+++ b/core/modules/responsive_image/responsive_image.module
@@ -297,7 +297,7 @@ function template_preprocess_responsive_image(&$variables) {
*
* @endcode
*
- * Note: Since The specs do not allow width descriptors and multipliers combined
+ * Note: Since the specs do not allow width descriptors and multipliers combined
* inside one 'srcset' attribute, we either have to use something like
* @code
*
diff --git a/core/modules/responsive_image/src/Tests/ResponsiveImageFieldUITest.php b/core/modules/responsive_image/src/Tests/ResponsiveImageFieldUITest.php
new file mode 100644
index 0000000..57e2bff
--- /dev/null
+++ b/core/modules/responsive_image/src/Tests/ResponsiveImageFieldUITest.php
@@ -0,0 +1,136 @@
+drupalPlaceBlock('system_breadcrumb_block');
+ // Create a test user.
+ $admin_user = $this->drupalCreateUser(array('access content', 'administer content types', 'administer node fields', 'administer node form display', 'administer node display', 'bypass node access'));
+ $this->drupalLogin($admin_user);
+
+ // Create content type, with underscores.
+ $type_name = strtolower($this->randomMachineName(8)) . '_test';
+ $type = $this->drupalCreateContentType(array('name' => $type_name, 'type' => $type_name));
+ $this->type = $type->id();
+ }
+
+ /**
+ * Tests formatter settings.
+ */
+ function testResponsiveImageFormatterUI() {
+ $manage_fields = 'admin/structure/types/manage/' . $this->type;
+ $manage_display = $manage_fields . '/display';
+
+ // Create a field, and a node with some data for the field.
+ $this->fieldUIAddNewField($manage_fields, 'image', 'Image field', 'image');
+ // Display the "Manage display".
+ $this->drupalGet($manage_display);
+
+ // Change the formatter and check that the summary is updated.
+ $edit = array('fields[field_image][type]' => 'responsive_image', 'refresh_rows' => 'field_image');
+ $this->drupalPostAjaxForm(NULL, $edit, array('op' => t('Refresh')));
+ $this->assertText("Select a responsive image mapping.", 'The expected summary is displayed.');
+
+ // Submit the form.
+ $this->drupalPostForm(NULL, array(), t('Save'));
+ $this->assertText("Select a responsive image mapping.", 'The expected summary is displayed.');
+
+ // Create responsive image mappings.
+ $responsive_image_mapping = entity_create('responsive_image_mapping', array(
+ 'id' => 'mapping_one',
+ 'label' => 'Mapping One',
+ 'breakpoint_group' => 'responsive_image_test_module',
+ ));
+ $responsive_image_mapping
+ ->addMappingDefinition('responsive_image_test_module.mobile', '1x', array(
+ 'image_mapping_type' => 'image_style',
+ 'image_mapping' => 'thumbnail',
+ ))
+ ->addMappingDefinition('responsive_image_test_module.narrow', '1x', array(
+ 'image_mapping_type' => 'image_style',
+ 'image_mapping' => 'medium'
+ ))
+ // Test the normal output of mapping to an image style.
+ ->addMappingDefinition('responsive_image_test_module.wide', '1x', array(
+ 'image_mapping_type' => 'image_style',
+ 'image_mapping' => 'large',
+ ))
+ ->save();
+ \Drupal::entityManager()->clearCachedFieldDefinitions();
+ // Refresh the page.
+ $this->drupalGet($manage_display);
+ $this->assertText("Select a responsive image mapping.", 'The expected summary is displayed.');
+
+ // Click on the formatter settings button to open the formatter settings
+ // form.
+ $this->drupalPostAjaxForm(NULL, array(), "field_image_settings_edit");
+
+ // Assert that the correct fields are present.
+ $fieldnames = array(
+ 'fields[field_image][settings_edit_form][settings][responsive_image_mapping]',
+ 'fields[field_image][settings_edit_form][settings][fallback_image_style]',
+ 'fields[field_image][settings_edit_form][settings][image_link]',
+ );
+ foreach ($fieldnames as $fieldname) {
+ $this->assertField($fieldname);
+ }
+ $edit = array(
+ 'fields[field_image][settings_edit_form][settings][responsive_image_mapping]' => 'mapping_one',
+ 'fields[field_image][settings_edit_form][settings][fallback_image_style]' => 'thumbnail',
+ 'fields[field_image][settings_edit_form][settings][image_link]' => 'content',
+ );
+ $this->drupalPostAjaxForm(NULL, $edit, "field_image_plugin_settings_update");
+
+ // Save the form to save the settings.
+ $this->drupalPostForm(NULL, array(), t('Save'));
+ $this->assertText('Responsive image mapping: Mapping One');
+ $this->assertText('Fallback Image style: Thumbnail (100×100)');
+ $this->assertText('Linked to content');
+
+ // Click on the formatter settings button to open the formatter settings
+ // form.
+ $this->drupalPostAjaxForm(NULL, array(), "field_image_settings_edit");
+ $edit = array(
+ 'fields[field_image][settings_edit_form][settings][responsive_image_mapping]' => 'mapping_one',
+ 'fields[field_image][settings_edit_form][settings][fallback_image_style]' => '',
+ 'fields[field_image][settings_edit_form][settings][image_link]' => 'file',
+ );
+ $this->drupalPostAjaxForm(NULL, $edit, "field_image_plugin_settings_update");
+
+ // Save the form to save the third party settings.
+ $this->drupalPostForm(NULL, array(), t('Save'));
+ $this->assertText('Responsive image mapping: Mapping One');
+ $this->assertText('Automatic fallback');
+ $this->assertText('Linked to file');
+ }
+
+}