Conditions | 2 |
Paths | 2 |
Total Lines | 76 |
Lines | 0 |
Ratio | 0 % |
Changes | 0 |
Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.
For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.
Commonly applied refactorings include:
If many parameters/temporary variables are present:
1 | <?php |
||
67 | public function validInputProvider() { |
||
68 | $amounts = [ |
||
69 | // amounts in various styles and forms |
||
70 | '0' => UnboundedQuantityValue::newFromNumber( 0 ), |
||
71 | '-0' => UnboundedQuantityValue::newFromNumber( 0 ), |
||
72 | '-00.00' => UnboundedQuantityValue::newFromNumber( '+0.00' ), |
||
73 | '+00.00' => UnboundedQuantityValue::newFromNumber( '+0.00' ), |
||
74 | '0001' => UnboundedQuantityValue::newFromNumber( 1 ), |
||
75 | '+01' => UnboundedQuantityValue::newFromNumber( 1 ), |
||
76 | '-1' => UnboundedQuantityValue::newFromNumber( -1 ), |
||
77 | '+42' => UnboundedQuantityValue::newFromNumber( 42 ), |
||
78 | ' - 42' => UnboundedQuantityValue::newFromNumber( -42 ), |
||
79 | '9001' => UnboundedQuantityValue::newFromNumber( 9001 ), |
||
80 | '.5' => UnboundedQuantityValue::newFromNumber( '+0.5' ), |
||
81 | '-.125' => UnboundedQuantityValue::newFromNumber( '-0.125' ), |
||
82 | '3.' => UnboundedQuantityValue::newFromNumber( 3 ), |
||
83 | ' 3 ' => UnboundedQuantityValue::newFromNumber( 3 ), |
||
84 | '2.125' => UnboundedQuantityValue::newFromNumber( '+2.125' ), |
||
85 | '2.1250' => UnboundedQuantityValue::newFromNumber( '+2.1250' ), |
||
86 | |||
87 | '1.4e-2' => UnboundedQuantityValue::newFromNumber( '+0.014' ), |
||
88 | '-1.4e-2' => UnboundedQuantityValue::newFromNumber( '-0.014' ), |
||
89 | '1.4e3' => UnboundedQuantityValue::newFromNumber( '+1400' ), |
||
90 | '1.4e3!m' => QuantityValue::newFromNumber( '+1400', 'm', '+1400', '+1400' ), |
||
91 | '1.4e3m2' => UnboundedQuantityValue::newFromNumber( '+1400', 'm2' ), |
||
92 | '1.4ev' => UnboundedQuantityValue::newFromNumber( '+1.4', 'ev' ), |
||
93 | '1.4e' => UnboundedQuantityValue::newFromNumber( '+1.4', 'e' ), |
||
94 | '12e3e4' => UnboundedQuantityValue::newFromNumber( '+12000', 'e4' ), |
||
95 | // FIXME: Add support for 12x10^3, see DecimalParser. |
||
96 | '0.004e3' => UnboundedQuantityValue::newFromNumber( '+4' ), |
||
97 | '0.004e-3' => UnboundedQuantityValue::newFromNumber( '+0.000004' ), |
||
98 | '4000e3' => UnboundedQuantityValue::newFromNumber( '+4000000' ), |
||
99 | '4000e-3' => UnboundedQuantityValue::newFromNumber( '+4.000' ), |
||
100 | |||
101 | // precision |
||
102 | '0!' => QuantityValue::newFromNumber( 0, '1', 0, 0 ), |
||
103 | '10.003!' => QuantityValue::newFromNumber( '+10.003', '1', '+10.003', '+10.003' ), |
||
104 | '-200!' => QuantityValue::newFromNumber( -200, '1', -200, -200 ), |
||
105 | '0~' => QuantityValue::newFromNumber( 0, '1', 0.5, -0.5 ), |
||
106 | '10.003~' => QuantityValue::newFromNumber( '+10.003', '1', '+10.0035', '+10.0025' ), |
||
107 | '-200~' => QuantityValue::newFromNumber( -200, '1', -199.5, -200.5 ), |
||
108 | |||
109 | // uncertainty |
||
110 | '5.3 +/- 0.2' => QuantityValue::newFromNumber( '+5.3', '1', '+5.5', '+5.1' ), |
||
111 | '5.3+-0.2' => QuantityValue::newFromNumber( '+5.3', '1', '+5.5', '+5.1' ), |
||
112 | '5.3 ±0.2' => QuantityValue::newFromNumber( '+5.3', '1', '+5.5', '+5.1' ), |
||
113 | |||
114 | '5.3 +/- +0.2' => QuantityValue::newFromNumber( '+5.3', '1', '+5.5', '+5.1' ), |
||
115 | '5.3+-+0.2' => QuantityValue::newFromNumber( '+5.3', '1', '+5.5', '+5.1' ), |
||
116 | |||
117 | '5.3e3 +/- 0.2e2' => QuantityValue::newFromNumber( '+5300', '1', '+5320', '+5280' ), |
||
118 | '2e-2+/-1.1e-1' => QuantityValue::newFromNumber( '+0.02', '1', '+0.13', '-0.09' ), |
||
119 | |||
120 | // negative |
||
121 | '5.3 +/- -0.2' => QuantityValue::newFromNumber( '+5.3', '1', '+5.5', '+5.1' ), |
||
122 | '5.3+--0.2' => QuantityValue::newFromNumber( '+5.3', '1', '+5.5', '+5.1' ), |
||
123 | '5.3 ±-0.2' => QuantityValue::newFromNumber( '+5.3', '1', '+5.5', '+5.1' ), |
||
124 | |||
125 | // units |
||
126 | '5.3+-0.2cm' => QuantityValue::newFromNumber( '+5.3', 'cm', '+5.5', '+5.1' ), |
||
127 | '10.003! km' => QuantityValue::newFromNumber( '+10.003', 'km', '+10.003', '+10.003' ), |
||
128 | '-200~ % ' => QuantityValue::newFromNumber( -200, '%', -199.5, -200.5 ), |
||
129 | '100003 m³' => UnboundedQuantityValue::newFromNumber( 100003, 'm³' ), |
||
130 | '3.±-0.2µ' => QuantityValue::newFromNumber( '+3', 'µ', '+3.2', '+2.8' ), |
||
131 | '+00.20 Å' => UnboundedQuantityValue::newFromNumber( '+0.20', 'Å' ), |
||
132 | ]; |
||
133 | |||
134 | $argLists = []; |
||
135 | |||
136 | foreach ( $amounts as $amount => $expected ) { |
||
137 | //NOTE: PHP may "helpfully" have converted $amount to an integer. Yay. |
||
138 | $argLists[$amount] = [ strval( $amount ), $expected ]; |
||
139 | } |
||
140 | |||
141 | return $argLists; |
||
142 | } |
||
143 | |||
288 |
It seems like the type of the argument is not accepted by the function/method which you are calling.
In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.
We suggest to add an explicit type cast like in the following example: