@@ -898,6 +898,7 @@ func TestNewOperatorFromBundle(t *testing.T) {
898898 Namespace : "testNamespace" ,
899899 },
900900 Spec : v1alpha1.ClusterServiceVersionSpec {
901+ Replaces : "v1" ,
901902 CustomResourceDefinitions : v1alpha1.CustomResourceDefinitions {
902903 Owned : []v1alpha1.CRDDescription {},
903904 Required : []v1alpha1.CRDDescription {},
@@ -982,6 +983,7 @@ func TestNewOperatorFromBundle(t *testing.T) {
982983 type args struct {
983984 bundle * opregistry.Bundle
984985 sourceKey CatalogKey
986+ replaces string
985987 }
986988 tests := []struct {
987989 name string
@@ -994,10 +996,12 @@ func TestNewOperatorFromBundle(t *testing.T) {
994996 args : args {
995997 bundle : bundleNoAPIs ,
996998 sourceKey : CatalogKey {Name : "source" , Namespace : "testNamespace" },
999+ replaces : "" ,
9971000 },
9981001 want : & Operator {
9991002 name : "testCSV" ,
10001003 version : & version .Version ,
1004+ replaces : "v1" ,
10011005 providedAPIs : EmptyAPISet (),
10021006 requiredAPIs : EmptyAPISet (),
10031007 bundle : bundleNoAPIs ,
@@ -1013,10 +1017,12 @@ func TestNewOperatorFromBundle(t *testing.T) {
10131017 args : args {
10141018 bundle : bundleWithAPIs ,
10151019 sourceKey : CatalogKey {Name : "source" , Namespace : "testNamespace" },
1020+ replaces : "" ,
10161021 },
10171022 want : & Operator {
1018- name : "testCSV" ,
1019- version : & version .Version ,
1023+ name : "testCSV" ,
1024+ version : & version .Version ,
1025+ replaces : "v1" ,
10201026 providedAPIs : APISet {
10211027 opregistry.APIKey {
10221028 Group : "crd.group.com" ,
@@ -1053,10 +1059,31 @@ func TestNewOperatorFromBundle(t *testing.T) {
10531059 },
10541060 },
10551061 },
1062+ {
1063+ name : "BundleReplaceOverrides" ,
1064+ args : args {
1065+ bundle : bundleNoAPIs ,
1066+ sourceKey : CatalogKey {Name : "source" , Namespace : "testNamespace" },
1067+ replaces : "replaced" ,
1068+ },
1069+ want : & Operator {
1070+ name : "testCSV" ,
1071+ providedAPIs : EmptyAPISet (),
1072+ requiredAPIs : EmptyAPISet (),
1073+ bundle : bundleNoAPIs ,
1074+ replaces : "replaced" ,
1075+ version : & version .Version ,
1076+ sourceInfo : & OperatorSourceInfo {
1077+ Package : "testPackage" ,
1078+ Channel : "testChannel" ,
1079+ Catalog : CatalogKey {"source" , "testNamespace" },
1080+ },
1081+ },
1082+ },
10561083 }
10571084 for _ , tt := range tests {
10581085 t .Run (tt .name , func (t * testing.T ) {
1059- got , err := NewOperatorFromBundle (tt .args .bundle , "" , tt .args .sourceKey )
1086+ got , err := NewOperatorFromBundle (tt .args .bundle , tt . args . replaces , "" , tt .args .sourceKey )
10601087 require .Equal (t , tt .wantErr , err )
10611088 require .Equal (t , tt .want , got )
10621089 })
0 commit comments