Code Duplication    Length = 27-27 lines in 2 locations

src/Validator/DecisionTableValidator.php 2 locations

@@ 224-250 (lines=27) @@
221
     * @param $i
222
     * @return void
223
     */
224
    private function validateInputEntries($rule, $i)
225
    {
226
        if (empty($rule->getInputEntries()) === true) {
227
            $this->errors[] = sprintf('rule no. %s: at least one input entry is required', (string) $i);
228
            return;
229
        }
230
231
        $k = 1;
232
        foreach ($rule->getInputEntries() as $inputEntry) {
233
            if (empty($inputEntry->getExpressionLanguage()) === true) {
234
                $this->errors[] = sprintf(
235
                    'rule no. %s, input entry no. %s: expression language is required',
236
                    (string) $i,
237
                    (string) $k
238
                );
239
            } else if (in_array($inputEntry->getExpressionLanguage(), ExpressionLanguage::ALLOWED_EXPRESSION_LANGUAGES) === false) {
240
                $this->errors[] = sprintf(
241
                    'rule no. %s, input entry no. %s: expression language must be one of: %s',
242
                    (string) $i,
243
                    (string) $k,
244
                    implode(', ', ExpressionLanguage::ALLOWED_EXPRESSION_LANGUAGES)
245
                );
246
            }
247
248
            $k++;
249
        }
250
    }
251
252
    /**
253
     * @param Rule $rule
@@ 257-283 (lines=27) @@
254
     * @param $i
255
     * @return void
256
     */
257
    private function validateOutputEntries($rule, $i)
258
    {
259
        if (empty($rule->getOutputEntries()) === true) {
260
            $this->errors[] = sprintf('rule no. %s: at least one output entry is required', (string) $i);
261
            return;
262
        }
263
264
        $k = 1;
265
        foreach ($rule->getOutputEntries() as $outputEntry) {
266
            if (empty($outputEntry->getExpressionLanguage()) === true) {
267
                $this->errors[] = sprintf(
268
                    'rule no. %s, output entry no. %s: expression language is required',
269
                    (string) $i,
270
                    (string) $k
271
                );
272
            } else if (in_array($outputEntry->getExpressionLanguage(), ExpressionLanguage::ALLOWED_EXPRESSION_LANGUAGES) === false) {
273
                $this->errors[] = sprintf(
274
                    'rule no. %s, output entry no. %s: expression language must be one of: %s',
275
                    (string) $i,
276
                    (string) $k,
277
                    implode(', ', ExpressionLanguage::ALLOWED_EXPRESSION_LANGUAGES)
278
                );
279
            }
280
281
            $k++;
282
        }
283
    }
284
}