|
7 | 7 | "strings" |
8 | 8 | "testing" |
9 | 9 |
|
| 10 | + "github.com/stretchr/testify/require" |
10 | 11 | appsv1 "k8s.io/api/apps/v1" |
11 | 12 | corev1 "k8s.io/api/core/v1" |
12 | 13 | apierrors "k8s.io/apimachinery/pkg/api/errors" |
@@ -2061,6 +2062,36 @@ func TestReconcileArgoCD_reconcileRedisDeployment(t *testing.T) { |
2061 | 2062 | assert.Equal(t, int32(3), *d.Spec.Replicas) |
2062 | 2063 | } |
2063 | 2064 |
|
| 2065 | +func TestReconcileArgoCD_reconcileRedisDeployment_volumeUpdate(t *testing.T) { |
| 2066 | + // tests reconciler hook for redis deployment |
| 2067 | + cr := makeTestArgoCD() |
| 2068 | + redisSecret := types.NamespacedName{Name: cr.Name + "-redis", Namespace: cr.Namespace} |
| 2069 | + |
| 2070 | + resObjs := []client.Object{cr} |
| 2071 | + subresObjs := []client.Object{cr} |
| 2072 | + runtimeObjs := []runtime.Object{} |
| 2073 | + sch := makeTestReconcilerScheme(argoproj.AddToScheme) |
| 2074 | + cl := makeTestReconcilerClient(sch, resObjs, subresObjs, runtimeObjs) |
| 2075 | + r := makeTestReconciler(cl, sch, testclient.NewSimpleClientset()) |
| 2076 | + |
| 2077 | + defer resetHooks()() |
| 2078 | + Register(testDeploymentHook) |
| 2079 | + |
| 2080 | + require.NoError(t, r.reconcileRedisDeployment(cr, false)) |
| 2081 | + d := &appsv1.Deployment{} |
| 2082 | + require.NoError(t, r.Get(context.TODO(), redisSecret, d)) |
| 2083 | + |
| 2084 | + // Erase volumes |
| 2085 | + d.Spec.Template.Spec.Volumes = []corev1.Volume{} |
| 2086 | + require.NoError(t, r.Update(t.Context(), d)) |
| 2087 | + require.NoError(t, r.reconcileRedisDeployment(cr, false)) |
| 2088 | + |
| 2089 | + // Volumes are readded |
| 2090 | + newRedis := &appsv1.Deployment{} |
| 2091 | + require.NoError(t, r.Get(context.TODO(), redisSecret, newRedis)) |
| 2092 | + assert.Len(t, newRedis.Spec.Template.Spec.Volumes, 2) |
| 2093 | +} |
| 2094 | + |
2064 | 2095 | func TestReconcileArgoCD_reconcileRedisDeployment_testImageUpgrade(t *testing.T) { |
2065 | 2096 | // tests reconciler hook for redis deployment |
2066 | 2097 | cr := makeTestArgoCD() |
|
0 commit comments