github.com/theishshah/operator-sdk@v0.6.0/pkg/scaffold/gopkgtoml_test.go (about) 1 // Copyright 2018 The Operator-SDK Authors 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 15 package scaffold 16 17 import ( 18 "testing" 19 20 "github.com/operator-framework/operator-sdk/internal/util/diffutil" 21 ) 22 23 func TestGopkgtoml(t *testing.T) { 24 s, buf := setupScaffoldAndWriter() 25 err := s.Execute(appConfig, &GopkgToml{}) 26 if err != nil { 27 t.Fatalf("Failed to execute the scaffold: (%v)", err) 28 } 29 30 if gopkgtomlExp != buf.String() { 31 diffs := diffutil.Diff(gopkgtomlExp, buf.String()) 32 t.Fatalf("Expected vs actual differs.\n%v", diffs) 33 } 34 } 35 36 const gopkgtomlExp = `# Force dep to vendor the code generators, which aren't imported just used at dev time. 37 required = [ 38 "k8s.io/code-generator/cmd/defaulter-gen", 39 "k8s.io/code-generator/cmd/deepcopy-gen", 40 "k8s.io/code-generator/cmd/conversion-gen", 41 "k8s.io/code-generator/cmd/client-gen", 42 "k8s.io/code-generator/cmd/lister-gen", 43 "k8s.io/code-generator/cmd/informer-gen", 44 "k8s.io/kube-openapi/cmd/openapi-gen", 45 "k8s.io/gengo/args", 46 "sigs.k8s.io/controller-tools/pkg/crd/generator", 47 ] 48 49 [[override]] 50 name = "k8s.io/code-generator" 51 # revision for tag "kubernetes-1.13.1" 52 revision = "c2090bec4d9b1fb25de3812f868accc2bc9ecbae" 53 54 [[override]] 55 name = "k8s.io/kube-openapi" 56 revision = "0cf8f7e6ed1d2e3d47d02e3b6e559369af24d803" 57 58 [[override]] 59 name = "github.com/go-openapi/spec" 60 branch = "master" 61 62 [[override]] 63 name = "sigs.k8s.io/controller-tools" 64 version = "=v0.1.8" 65 66 [[override]] 67 name = "k8s.io/api" 68 # revision for tag "kubernetes-1.13.1" 69 revision = "05914d821849570fba9eacfb29466f2d8d3cd229" 70 71 [[override]] 72 name = "k8s.io/apiextensions-apiserver" 73 # revision for tag "kubernetes-1.13.1" 74 revision = "0fe22c71c47604641d9aa352c785b7912c200562" 75 76 [[override]] 77 name = "k8s.io/apimachinery" 78 # revision for tag "kubernetes-1.13.1" 79 revision = "2b1284ed4c93a43499e781493253e2ac5959c4fd" 80 81 [[override]] 82 name = "k8s.io/client-go" 83 # revision for tag "kubernetes-1.13.1" 84 revision = "8d9ed539ba3134352c586810e749e58df4e94e4f" 85 86 [[override]] 87 name = "github.com/coreos/prometheus-operator" 88 version = "=v0.26.0" 89 90 [[override]] 91 name = "sigs.k8s.io/controller-runtime" 92 version = "=v0.1.10" 93 94 [[constraint]] 95 name = "github.com/operator-framework/operator-sdk" 96 # The version rule is used for a specific release and the master branch for in between releases. 97 # branch = "master" #osdk_branch_annotation 98 version = "=v0.6.0" #osdk_version_annotation 99 100 [prune] 101 go-tests = true 102 non-go = true 103 104 [[prune.project]] 105 name = "k8s.io/code-generator" 106 non-go = false 107 108 [[prune.project]] 109 name = "k8s.io/gengo" 110 non-go = false 111 `