aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/github.com/onsi/gomega/matchers/match_yaml_matcher.go
diff options
context:
space:
mode:
authorOndrej Fabry <ofabry@cisco.com>2019-08-02 15:07:53 +0200
committerOndrej Fabry <ofabry@cisco.com>2019-08-02 15:07:53 +0200
commitca6003af1a7e1adb7d45879c2d5038bc05c2bb1a (patch)
tree97a3620b0fc5c7a0ee032fe7d12d37b6303cfb01 /vendor/github.com/onsi/gomega/matchers/match_yaml_matcher.go
parent639870b5083a1e66f4584ec7a5f30492fcdb7168 (diff)
Migrate to modules, refactor Makefile and use Travis for CI
- migrate to Go modules and remove vendor - refactor Makefile - add version package and store version - split extras from the rest - use travis for CI Change-Id: I81b35220653b0f7c9a0fcdd4c527d691ec1e96c1 Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
Diffstat (limited to 'vendor/github.com/onsi/gomega/matchers/match_yaml_matcher.go')
-rw-r--r--vendor/github.com/onsi/gomega/matchers/match_yaml_matcher.go74
1 files changed, 0 insertions, 74 deletions
diff --git a/vendor/github.com/onsi/gomega/matchers/match_yaml_matcher.go b/vendor/github.com/onsi/gomega/matchers/match_yaml_matcher.go
deleted file mode 100644
index 69fb51a..0000000
--- a/vendor/github.com/onsi/gomega/matchers/match_yaml_matcher.go
+++ /dev/null
@@ -1,74 +0,0 @@
-package matchers
-
-import (
- "fmt"
- "reflect"
- "strings"
-
- "github.com/onsi/gomega/format"
- "gopkg.in/yaml.v2"
-)
-
-type MatchYAMLMatcher struct {
- YAMLToMatch interface{}
-}
-
-func (matcher *MatchYAMLMatcher) Match(actual interface{}) (success bool, err error) {
- actualString, expectedString, err := matcher.toStrings(actual)
- if err != nil {
- return false, err
- }
-
- var aval interface{}
- var eval interface{}
-
- if err := yaml.Unmarshal([]byte(actualString), &aval); err != nil {
- return false, fmt.Errorf("Actual '%s' should be valid YAML, but it is not.\nUnderlying error:%s", actualString, err)
- }
- if err := yaml.Unmarshal([]byte(expectedString), &eval); err != nil {
- return false, fmt.Errorf("Expected '%s' should be valid YAML, but it is not.\nUnderlying error:%s", expectedString, err)
- }
-
- return reflect.DeepEqual(aval, eval), nil
-}
-
-func (matcher *MatchYAMLMatcher) FailureMessage(actual interface{}) (message string) {
- actualString, expectedString, _ := matcher.toNormalisedStrings(actual)
- return format.Message(actualString, "to match YAML of", expectedString)
-}
-
-func (matcher *MatchYAMLMatcher) NegatedFailureMessage(actual interface{}) (message string) {
- actualString, expectedString, _ := matcher.toNormalisedStrings(actual)
- return format.Message(actualString, "not to match YAML of", expectedString)
-}
-
-func (matcher *MatchYAMLMatcher) toNormalisedStrings(actual interface{}) (actualFormatted, expectedFormatted string, err error) {
- actualString, expectedString, err := matcher.toStrings(actual)
- return normalise(actualString), normalise(expectedString), err
-}
-
-func normalise(input string) string {
- var val interface{}
- err := yaml.Unmarshal([]byte(input), &val)
- if err != nil {
- panic(err) // guarded by Match
- }
- output, err := yaml.Marshal(val)
- if err != nil {
- panic(err) // guarded by Unmarshal
- }
- return strings.TrimSpace(string(output))
-}
-
-func (matcher *MatchYAMLMatcher) toStrings(actual interface{}) (actualFormatted, expectedFormatted string, err error) {
- actualString, ok := toString(actual)
- if !ok {
- return "", "", fmt.Errorf("MatchYAMLMatcher matcher requires a string, stringer, or []byte. Got actual:\n%s", format.Object(actual, 1))
- }
- expectedString, ok := toString(matcher.YAMLToMatch)
- if !ok {
- return "", "", fmt.Errorf("MatchYAMLMatcher matcher requires a string, stringer, or []byte. Got expected:\n%s", format.Object(matcher.YAMLToMatch, 1))
- }
-
- return actualString, expectedString, nil
-}