From 27b87928596e83752386095dc2175248c03a5031 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petri=20Sandstr=F6m?= <phiit@1673856.no-reply.drupal.org>
Date: Thu, 12 Sep 2013 14:20:16 +0300
Subject: [PATCH 1/2] Applying patch for issue #2086499

---
 .../language_elements_test.routing.yml             |   13 +++++
 .../Form/LanguageConfigurationElement.php          |   57 ++++++++++++++++++++
 .../Form/LanguageConfigurationElementTest.php      |   46 ++++++++++++++++
 3 files changed, 116 insertions(+)
 create mode 100644 core/modules/language/tests/language_elements_test/language_elements_test.routing.yml
 create mode 100644 core/modules/language/tests/language_elements_test/lib/Drupal/language_elements_test/Form/LanguageConfigurationElement.php
 create mode 100644 core/modules/language/tests/language_elements_test/lib/Drupal/language_elements_test/Form/LanguageConfigurationElementTest.php

diff --git a/core/modules/language/tests/language_elements_test/language_elements_test.routing.yml b/core/modules/language/tests/language_elements_test/language_elements_test.routing.yml
new file mode 100644
index 0000000..aa82cbc
--- /dev/null
+++ b/core/modules/language/tests/language_elements_test/language_elements_test.routing.yml
@@ -0,0 +1,13 @@
+language_configuration_element:
+  pattern: '/language-tests/language_configuration_element'
+  defaults:
+    _form: '\Drupal\language_elements_test\Form\LanguageConfigurationElementForm'
+  requirements:
+    _access: 'TRUE'
+
+language_configuration_element_test:
+  pattern: '/language-tests/language_configuration_element_test'
+  defaults:
+    _form: '\Drupal\language_elements_test\Form\LanguageConfigurationElementTestForm'
+  requirements:
+    _access: 'TRUE'
diff --git a/core/modules/language/tests/language_elements_test/lib/Drupal/language_elements_test/Form/LanguageConfigurationElement.php b/core/modules/language/tests/language_elements_test/lib/Drupal/language_elements_test/Form/LanguageConfigurationElement.php
new file mode 100644
index 0000000..5f807b0
--- /dev/null
+++ b/core/modules/language/tests/language_elements_test/lib/Drupal/language_elements_test/Form/LanguageConfigurationElement.php
@@ -0,0 +1,57 @@
+<?php
+/**
+ * @file
+ * Contains \Drupal\language_elements_test\Form\LanguageConfigurationElementForm.
+ */
+
+namespace Drupal\language_elements_test\Form;
+
+use Drupal\Core\Form\FormBase;
+
+/**
+ * A form containing a language configuration element.
+ */
+class LanguageConfigurationElement extends FormBase {
+
+  /**
+     * {@inheritdoc}
+     */
+  public function getFormID() {
+      return 'language_elements_configuration_element';
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function buildForm(array $form, array &$form_state, $pid = NULL) {
+    $conf = language_get_default_configuration('some_custom_type', 'some_bundle');
+
+    $form['lang_configuration'] = array(
+      '#type' => 'language_configuration',
+      '#entity_information' => array(
+        'entity_type' => 'some_custom_type',
+        'bundle' => 'some_bundle',
+      ),
+      '#default_value' => $conf,
+    );
+
+    $form['submit'] = array(
+      '#type' => 'submit',
+      '#value' => 'Save',
+    );
+    $form['#submit'][] = 'language_configuration_element_submit';
+    return $form;
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function validateForm(array &$form, array &$form_state) {
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function submitForm(array &$form, array &$form_state) {
+  }
+}
diff --git a/core/modules/language/tests/language_elements_test/lib/Drupal/language_elements_test/Form/LanguageConfigurationElementTest.php b/core/modules/language/tests/language_elements_test/lib/Drupal/language_elements_test/Form/LanguageConfigurationElementTest.php
new file mode 100644
index 0000000..ebcd08e
--- /dev/null
+++ b/core/modules/language/tests/language_elements_test/lib/Drupal/language_elements_test/Form/LanguageConfigurationElementTest.php
@@ -0,0 +1,46 @@
+<?php
+/**
+ * @file
+ * Contains \Drupal\language_elements_test\Form\LanguageConfigurationElementTestForm.
+ */
+
+namespace Drupal\language_elements_test\Form;
+
+use Drupal\Core\Form\FormBase;
+
+/**
+ * A form containing a language select element.
+ */
+class LanguageConfigurationElementTest extends FormBase {
+
+  /**
+     * {@inheritdoc}
+     */
+  public function getFormID() {
+      return 'language_elements_configuration_element_test';
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function buildForm(array $form, array &$form_state, $pid = NULL) {
+    $form['langcode'] = array(
+      '#title' => t('Language select'),
+      '#type' => 'language_select',
+      '#default_value' => language_get_default_langcode('custom_type', 'some_bundle'),
+    );
+    return $form;
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function validateForm(array &$form, array &$form_state) {
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function submitForm(array &$form, array &$form_state) {
+  }
+}
-- 
1.7.9.6 (Apple Git-31.1)


From d5967db2a4645b2588e8c3299d19f453751db1df Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petri=20Sandstr=F6m?= <phiit@1673856.no-reply.drupal.org>
Date: Thu, 12 Sep 2013 14:29:19 +0300
Subject: [PATCH 2/2] Added new files for Form Controllers. Issue #2086499

---
 .../language_elements_test.module                  |   43 +-------------------
 1 file changed, 2 insertions(+), 41 deletions(-)

diff --git a/core/modules/language/tests/language_elements_test/language_elements_test.module b/core/modules/language/tests/language_elements_test/language_elements_test.module
index 14d8927..6970ab1 100644
--- a/core/modules/language/tests/language_elements_test/language_elements_test.module
+++ b/core/modules/language/tests/language_elements_test/language_elements_test.module
@@ -11,52 +11,13 @@
 function language_elements_test_menu() {
   $items['language-tests/language_configuration_element'] = array(
     'title' => 'Language configuration form element',
+    'route_name' => 'language_configuration_element',
     'type' => MENU_CALLBACK,
-    'access callback' => TRUE,
-    'page callback' => 'drupal_get_form',
-    'page arguments' => array('language_elements_configuration_element'),
   );
   $items['language-tests/language_configuration_element_test'] = array(
     'title' => 'Language configuration form element',
+    'route_name' => 'language_configuration_element_test',
     'type' => MENU_CALLBACK,
-    'access callback' => TRUE,
-    'page callback' => 'drupal_get_form',
-    'page arguments' => array('language_elements_configuration_element_test'),
   );
   return $items;
 }
-
-/**
- * A form containing a language configuration element.
- */
-function language_elements_configuration_element() {
-  $conf = language_get_default_configuration('some_custom_type', 'some_bundle');
-
-  $form['lang_configuration'] = array(
-    '#type' => 'language_configuration',
-    '#entity_information' => array(
-      'entity_type' => 'some_custom_type',
-      'bundle' => 'some_bundle',
-    ),
-    '#default_value' => $conf,
-  );
-
-  $form['submit'] = array(
-    '#type' => 'submit',
-    '#value' => 'Save',
-  );
-  $form['#submit'][] = 'language_configuration_element_submit';
-  return $form;
-}
-
-/**
- * A form containing a language select element.
- */
-function language_elements_configuration_element_test() {
-  $form['langcode'] = array(
-    '#title' => t('Language select'),
-    '#type' => 'language_select',
-    '#default_value' => language_get_default_langcode('custom_type', 'some_bundle'),
-  );
-  return $form;
-}
-- 
1.7.9.6 (Apple Git-31.1)

