diff --git a/go.mod b/go.mod index 39b658a592..4d3505169c 100644 --- a/go.mod +++ b/go.mod @@ -35,7 +35,7 @@ require ( github.com/go-openapi/spec v0.19.4 // indirect github.com/go-redis/redis/v7 v7.2.0 github.com/go-sql-driver/mysql v1.5.0 - github.com/go-testfixtures/testfixtures/v3 v3.1.1 + github.com/go-testfixtures/testfixtures/v3 v3.1.2 github.com/golang/protobuf v1.3.5 // indirect github.com/gordonklaus/ineffassign v0.0.0-20200309095847-7953dde2c7bf github.com/iancoleman/strcase v0.0.0-20191112232945-16388991a334 @@ -48,7 +48,7 @@ require ( github.com/lib/pq v1.4.0 github.com/mailru/easyjson v0.7.0 // indirect github.com/mattn/go-sqlite3 v2.0.3+incompatible - github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 + github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 // indirect github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e // indirect github.com/olekukonko/tablewriter v0.0.4 github.com/onsi/ginkgo v1.12.0 // indirect diff --git a/go.sum b/go.sum index e74d92977d..32b3c9f889 100644 --- a/go.sum +++ b/go.sum @@ -140,6 +140,8 @@ github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LB github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= github.com/go-testfixtures/testfixtures/v3 v3.1.1 h1:SBIfzULODQQ7JV6AD931MvAz8pnkk6QCfMIcoOBDaXQ= github.com/go-testfixtures/testfixtures/v3 v3.1.1/go.mod h1:RZctY24ixituGC73XlAV1gkCwYMVwiSwPm26MNlQIhE= +github.com/go-testfixtures/testfixtures/v3 v3.1.2 h1:sACIJoknTtWHbz5wahA6f50IGsz7oBXS+jgm0eKl4eI= +github.com/go-testfixtures/testfixtures/v3 v3.1.2/go.mod h1:RZctY24ixituGC73XlAV1gkCwYMVwiSwPm26MNlQIhE= github.com/godbus/dbus/v5 v5.0.3/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= github.com/gofrs/uuid v3.2.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= diff --git a/vendor/github.com/go-testfixtures/testfixtures/v3/CHANGELOG.md b/vendor/github.com/go-testfixtures/testfixtures/v3/CHANGELOG.md index e60b193319..d08391926e 100644 --- a/vendor/github.com/go-testfixtures/testfixtures/v3/CHANGELOG.md +++ b/vendor/github.com/go-testfixtures/testfixtures/v3/CHANGELOG.md @@ -1,12 +1,17 @@ # Changelog -## v3.1.1 - 2019-01-11 +## v3.1.2 - 2020-04-26 + +- Dump: Fix column order in generated YAML files + [#62](https://github.com/go-testfixtures/testfixtures/pull/62) + +## v3.1.1 - 2020-01-11 - testfixtures now work with both `mssql` and `sqlserver` drivers. Note that [the `mssql` one is deprecated](https://github.com/denisenkom/go-mssqldb#deprecated), though. So try to migrate to `sqlserver` once possible. -## v3.1.0 - 2019-01-09 +## v3.1.0 - 2020-01-09 - Using `sqlserver` driver instead of the deprecated `mssql` ([#58](https://github.com/go-testfixtures/testfixtures/pull/58)). diff --git a/vendor/github.com/go-testfixtures/testfixtures/v3/Dockerfile b/vendor/github.com/go-testfixtures/testfixtures/v3/Dockerfile index 12fd21990a..e33dafb07b 100644 --- a/vendor/github.com/go-testfixtures/testfixtures/v3/Dockerfile +++ b/vendor/github.com/go-testfixtures/testfixtures/v3/Dockerfile @@ -1,4 +1,4 @@ -FROM golang:1.13.5-alpine +FROM golang:1.14-alpine RUN apk update RUN apk add alpine-sdk diff --git a/vendor/github.com/go-testfixtures/testfixtures/v3/dump.go b/vendor/github.com/go-testfixtures/testfixtures/v3/dump.go index eaf634cb65..fe6f63350f 100644 --- a/vendor/github.com/go-testfixtures/testfixtures/v3/dump.go +++ b/vendor/github.com/go-testfixtures/testfixtures/v3/dump.go @@ -97,7 +97,14 @@ func (d *Dumper) Dump() error { func (d *Dumper) dumpTable(table string) error { query := fmt.Sprintf("SELECT * FROM %s", d.helper.quoteKeyword(table)) - rows, err := d.db.Query(query) + + stmt, err := d.db.Prepare(query) + if err != nil { + return err + } + defer stmt.Close() + + rows, err := stmt.Query() if err != nil { return err } @@ -108,7 +115,7 @@ func (d *Dumper) dumpTable(table string) error { return err } - fixtures := make([]interface{}, 0, 10) + fixtures := make([]yaml.MapSlice, 0, 10) for rows.Next() { entries := make([]interface{}, len(columns)) entryPtrs := make([]interface{}, len(entries)) @@ -119,9 +126,12 @@ func (d *Dumper) dumpTable(table string) error { return err } - entryMap := make(map[string]interface{}, len(entries)) + entryMap := make([]yaml.MapItem, len(entries)) for i, column := range columns { - entryMap[column] = convertValue(entries[i]) + entryMap[i] = yaml.MapItem{ + Key: column, + Value: convertValue(entries[i]), + } } fixtures = append(fixtures, entryMap) } diff --git a/vendor/github.com/mohae/deepcopy/.gitignore b/vendor/github.com/mohae/deepcopy/.gitignore deleted file mode 100644 index 5846dd1531..0000000000 --- a/vendor/github.com/mohae/deepcopy/.gitignore +++ /dev/null @@ -1,26 +0,0 @@ -# Compiled Object files, Static and Dynamic libs (Shared Objects) -*.o -*.a -*.so - -# Folders -_obj -_test - -# Architecture specific extensions/prefixes -*.[568vq] -[568vq].out - -*.cgo1.go -*.cgo2.c -_cgo_defun.c -_cgo_gotypes.go -_cgo_export.* - -_testmain.go - -*.exe -*.test -*~ -*.out -*.log diff --git a/vendor/github.com/mohae/deepcopy/.travis.yml b/vendor/github.com/mohae/deepcopy/.travis.yml deleted file mode 100644 index fd47a8cf78..0000000000 --- a/vendor/github.com/mohae/deepcopy/.travis.yml +++ /dev/null @@ -1,11 +0,0 @@ -language: go - -go: - - tip - -matrix: - allow_failures: - - go: tip - -script: - - go test ./... diff --git a/vendor/github.com/mohae/deepcopy/LICENSE b/vendor/github.com/mohae/deepcopy/LICENSE deleted file mode 100644 index 419673f005..0000000000 --- a/vendor/github.com/mohae/deepcopy/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2014 Joel - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/vendor/github.com/mohae/deepcopy/README.md b/vendor/github.com/mohae/deepcopy/README.md deleted file mode 100644 index f81841885b..0000000000 --- a/vendor/github.com/mohae/deepcopy/README.md +++ /dev/null @@ -1,8 +0,0 @@ -deepCopy -======== -[![GoDoc](https://godoc.org/github.com/mohae/deepcopy?status.svg)](https://godoc.org/github.com/mohae/deepcopy)[![Build Status](https://travis-ci.org/mohae/deepcopy.png)](https://travis-ci.org/mohae/deepcopy) - -DeepCopy makes deep copies of things: unexported field values are not copied. - -## Usage - cpy := deepcopy.Copy(orig) diff --git a/vendor/github.com/mohae/deepcopy/deepcopy.go b/vendor/github.com/mohae/deepcopy/deepcopy.go deleted file mode 100644 index ba763ad091..0000000000 --- a/vendor/github.com/mohae/deepcopy/deepcopy.go +++ /dev/null @@ -1,125 +0,0 @@ -// deepcopy makes deep copies of things. A standard copy will copy the -// pointers: deep copy copies the values pointed to. Unexported field -// values are not copied. -// -// Copyright (c)2014-2016, Joel Scoble (github.com/mohae), all rights reserved. -// License: MIT, for more details check the included LICENSE file. -package deepcopy - -import ( - "reflect" - "time" -) - -// Interface for delegating copy process to type -type Interface interface { - DeepCopy() interface{} -} - -// Iface is an alias to Copy; this exists for backwards compatibility reasons. -func Iface(iface interface{}) interface{} { - return Copy(iface) -} - -// Copy creates a deep copy of whatever is passed to it and returns the copy -// in an interface{}. The returned value will need to be asserted to the -// correct type. -func Copy(src interface{}) interface{} { - if src == nil { - return nil - } - - // Make the interface a reflect.Value - original := reflect.ValueOf(src) - - // Make a copy of the same type as the original. - cpy := reflect.New(original.Type()).Elem() - - // Recursively copy the original. - copyRecursive(original, cpy) - - // Return the copy as an interface. - return cpy.Interface() -} - -// copyRecursive does the actual copying of the interface. It currently has -// limited support for what it can handle. Add as needed. -func copyRecursive(original, cpy reflect.Value) { - // check for implement deepcopy.Interface - if original.CanInterface() { - if copier, ok := original.Interface().(Interface); ok { - cpy.Set(reflect.ValueOf(copier.DeepCopy())) - return - } - } - - // handle according to original's Kind - switch original.Kind() { - case reflect.Ptr: - // Get the actual value being pointed to. - originalValue := original.Elem() - - // if it isn't valid, return. - if !originalValue.IsValid() { - return - } - cpy.Set(reflect.New(originalValue.Type())) - copyRecursive(originalValue, cpy.Elem()) - - case reflect.Interface: - // If this is a nil, don't do anything - if original.IsNil() { - return - } - // Get the value for the interface, not the pointer. - originalValue := original.Elem() - - // Get the value by calling Elem(). - copyValue := reflect.New(originalValue.Type()).Elem() - copyRecursive(originalValue, copyValue) - cpy.Set(copyValue) - - case reflect.Struct: - t, ok := original.Interface().(time.Time) - if ok { - cpy.Set(reflect.ValueOf(t)) - return - } - // Go through each field of the struct and copy it. - for i := 0; i < original.NumField(); i++ { - // The Type's StructField for a given field is checked to see if StructField.PkgPath - // is set to determine if the field is exported or not because CanSet() returns false - // for settable fields. I'm not sure why. -mohae - if original.Type().Field(i).PkgPath != "" { - continue - } - copyRecursive(original.Field(i), cpy.Field(i)) - } - - case reflect.Slice: - if original.IsNil() { - return - } - // Make a new slice and copy each element. - cpy.Set(reflect.MakeSlice(original.Type(), original.Len(), original.Cap())) - for i := 0; i < original.Len(); i++ { - copyRecursive(original.Index(i), cpy.Index(i)) - } - - case reflect.Map: - if original.IsNil() { - return - } - cpy.Set(reflect.MakeMap(original.Type())) - for _, key := range original.MapKeys() { - originalValue := original.MapIndex(key) - copyValue := reflect.New(originalValue.Type()).Elem() - copyRecursive(originalValue, copyValue) - copyKey := Copy(key.Interface()) - cpy.SetMapIndex(reflect.ValueOf(copyKey), copyValue) - } - - default: - cpy.Set(original) - } -} diff --git a/vendor/modules.txt b/vendor/modules.txt index 88f1ba7272..4f088bdd32 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -76,7 +76,7 @@ github.com/go-redis/redis/v7/internal/proto github.com/go-redis/redis/v7/internal/util # github.com/go-sql-driver/mysql v1.5.0 github.com/go-sql-driver/mysql -# github.com/go-testfixtures/testfixtures/v3 v3.1.1 +# github.com/go-testfixtures/testfixtures/v3 v3.1.2 github.com/go-testfixtures/testfixtures/v3 # github.com/golang/protobuf v1.3.5 github.com/golang/protobuf/proto @@ -140,8 +140,6 @@ github.com/mattn/go-sqlite3 github.com/matttproud/golang_protobuf_extensions/pbutil # github.com/mitchellh/mapstructure v1.1.2 github.com/mitchellh/mapstructure -# github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 -github.com/mohae/deepcopy # github.com/olekukonko/tablewriter v0.0.4 github.com/olekukonko/tablewriter # github.com/op/go-logging v0.0.0-20160315200505-970db520ece7