Passed
Pull Request — master (#63)
by Filip
02:53
created

failure(Contract,ValidationStatus)   A

Complexity

Conditions 1

Size

Total Lines 2
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 2
c 0
b 0
f 0
dl 0
loc 2
rs 10
1
package com.hltech.vaunt.validator;
2
3
import com.hltech.vaunt.core.domain.model.Contract;
4
import lombok.Data;
5
6
import java.util.ArrayList;
7
import java.util.Arrays;
8
import java.util.List;
9
10
@Data
11
public class ValidationResult {
12
    private final boolean isValid;
13
    private final String description;
14
    private final List<ValidationStatus> errors;
15
16
    static ValidationResult success(Contract expectation) {
17
        return new ValidationResult(
18
                true,
19
                String.format("Matching contract: %s %s, %s",
20
                        expectation.getDestinationType(),
21
                        expectation.getDestinationName(),
22
                        expectation.getBody().getId()),
23
                new ArrayList<>());
24
    }
25
26
    static ValidationResult failure(Contract expectation, ValidationStatus... errors) {
27
        return new ValidationResult(false, String.format("Expectation: %s", expectation), Arrays.asList(errors));
28
    }
29
30
    static ValidationResult failure(
31
            Contract expectation, Contract capability, ValidationStatus... errors) {
32
        return new ValidationResult(
33
                false,
34
                String.format("Expectation: %s, Capability: %s", expectation, capability),
35
                Arrays.asList(errors));
36
    }
37
}
38