0965f9dec311a26cb7cd50d620a0673cfa720f52
[yaffs-website] / web / core / modules / system / tests / modules / form_test / src / Form / FormTestNumberForm.php
1 <?php
2
3 namespace Drupal\form_test\Form;
4
5 use Drupal\Core\Form\FormBase;
6 use Drupal\Core\Form\FormStateInterface;
7
8 /**
9  * Builds a form to test #type 'number' and 'range' validation.
10  *
11  * @internal
12  */
13 class FormTestNumberForm extends FormBase {
14
15   /**
16    * {@inheritdoc}
17    */
18   public function getFormId() {
19     return 'form_test_number';
20   }
21
22   /**
23    * {@inheritdoc}
24    */
25   public function buildForm(array $form, FormStateInterface $form_state, $element = 'number') {
26     $base = [
27       '#type' => $element,
28     ];
29
30     $form['integer_no_number'] = $base + [
31       '#title' => 'Integer test, #no_error',
32       '#default_value' => '#no_number',
33     ];
34     $form['integer_no_step'] = $base + [
35       '#title' => 'Integer test without step',
36       '#default_value' => 5,
37     ];
38     $form['integer_no_step_step_error'] = $base + [
39       '#title' => 'Integer test without step, #step_error',
40       '#default_value' => 4.5,
41     ];
42     $form['integer_step'] = $base + [
43       '#title' => 'Integer test with step',
44       '#default_value' => 5,
45       '#step' => 1,
46     ];
47     $form['integer_step_error'] = $base + [
48       '#title' => 'Integer test, with step, #step_error',
49       '#default_value' => 5,
50       '#step' => 2,
51     ];
52     $form['integer_step_min'] = $base + [
53       '#title' => 'Integer test with min value',
54       '#default_value' => 5,
55       '#min' => 0,
56       '#step' => 1,
57     ];
58     $form['integer_step_min_error'] = $base + [
59       '#title' => 'Integer test with min value, #min_error',
60       '#default_value' => 5,
61       '#min' => 6,
62       '#step' => 1,
63     ];
64     $form['integer_step_max'] = $base + [
65       '#title' => 'Integer test with max value',
66       '#default_value' => 5,
67       '#max' => 6,
68       '#step' => 1,
69     ];
70     $form['integer_step_max_error'] = $base + [
71       '#title' => 'Integer test with max value, #max_error',
72       '#default_value' => 5,
73       '#max' => 4,
74       '#step' => 1,
75     ];
76     $form['integer_step_min_border'] = $base + [
77       '#title' => 'Integer test with min border check',
78       '#default_value' => -1,
79       '#min' => -1,
80       '#step' => 1,
81     ];
82     $form['integer_step_max_border'] = $base + [
83       '#title' => 'Integer test with max border check',
84       '#default_value' => 5,
85       '#max' => 5,
86       '#step' => 1,
87     ];
88     $form['integer_step_based_on_min'] = $base + [
89       '#title' => 'Integer test with step based on min check',
90       '#default_value' => 3,
91       '#min' => -1,
92       '#step' => 2,
93     ];
94     $form['integer_step_based_on_min_error'] = $base + [
95       '#title' => 'Integer test with step based on min check, #step_error',
96       '#default_value' => 4,
97       '#min' => -1,
98       '#step' => 2,
99     ];
100     $form['float_small_step'] = $base + [
101       '#title' => 'Float test with a small step',
102       '#default_value' => 4,
103       '#step' => 0.0000000000001,
104     ];
105     $form['float_step_no_error'] = $base + [
106       '#title' => 'Float test',
107       '#default_value' => 1.2,
108       '#step' => 0.3,
109     ];
110     $form['float_step_error'] = $base + [
111       '#title' => 'Float test, #step_error',
112       '#default_value' => 1.3,
113       '#step' => 0.3,
114     ];
115     $form['float_step_hard_no_error'] = $base + [
116       '#title' => 'Float test hard',
117       '#default_value' => 0.9411764729088,
118       '#step' => 0.00392156863712,
119     ];
120     $form['float_step_hard_error'] = $base + [
121       '#title' => 'Float test hard, #step_error',
122       '#default_value' => 0.9411764,
123       '#step' => 0.00392156863,
124     ];
125     $form['float_step_any_no_error'] = $base + [
126       '#title' => 'Arbitrary float',
127       '#default_value' => 0.839562930284,
128       '#step' => 'aNy',
129     ];
130     $form['submit'] = [
131       '#type' => 'submit',
132       '#value' => 'Submit',
133     ];
134     return $form;
135   }
136
137   /**
138    * {@inheritdoc}
139    */
140   public function submitForm(array &$form, FormStateInterface $form_state) {
141   }
142
143 }