Skip to content

Commit

Permalink
Validation for warnings in unit tests
Browse files Browse the repository at this point in the history
  • Loading branch information
Dhairya-Arora01 committed Jun 1, 2023
1 parent 9be885c commit 0af5da0
Show file tree
Hide file tree
Showing 18 changed files with 215 additions and 102 deletions.
40 changes: 27 additions & 13 deletions api/v1beta1/machine_webhook_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -79,15 +79,19 @@ func TestMachineBootstrapValidation(t *testing.T) {
Spec: MachineSpec{Bootstrap: tt.bootstrap},
}
if tt.expectErr {
_, err := m.ValidateCreate()
warnings, err := m.ValidateCreate()
g.Expect(err).To(HaveOccurred())
_, err = m.ValidateUpdate(m)
g.Expect(warnings).To(BeEmpty())
warnings, err = m.ValidateUpdate(m)
g.Expect(err).To(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
} else {
_, err := m.ValidateCreate()
warnings, err := m.ValidateCreate()
g.Expect(err).ToNot(HaveOccurred())
_, err = m.ValidateUpdate(m)
g.Expect(warnings).To(BeEmpty())
warnings, err = m.ValidateUpdate(m)
g.Expect(err).ToNot(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
}
})
}
Expand Down Expand Up @@ -141,15 +145,19 @@ func TestMachineNamespaceValidation(t *testing.T) {
}

if tt.expectErr {
_, err := m.ValidateCreate()
warnings, err := m.ValidateCreate()
g.Expect(err).To(HaveOccurred())
_, err = m.ValidateUpdate(m)
g.Expect(warnings).To(BeEmpty())
warnings, err = m.ValidateUpdate(m)
g.Expect(err).To(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
} else {
_, err := m.ValidateCreate()
warnings, err := m.ValidateCreate()
g.Expect(err).ToNot(HaveOccurred())
_, err = m.ValidateUpdate(m)
g.Expect(warnings).To(BeEmpty())
warnings, err = m.ValidateUpdate(m)
g.Expect(err).ToNot(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
}
})
}
Expand Down Expand Up @@ -193,11 +201,13 @@ func TestMachineClusterNameImmutable(t *testing.T) {
},
}

_, err := newMachine.ValidateUpdate(oldMachine)
warnings, err := newMachine.ValidateUpdate(oldMachine)
if tt.expectErr {
g.Expect(err).To(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
} else {
g.Expect(err).NotTo(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
}
})
}
Expand Down Expand Up @@ -248,15 +258,19 @@ func TestMachineVersionValidation(t *testing.T) {
}

if tt.expectErr {
_, err := m.ValidateCreate()
warnings, err := m.ValidateCreate()
g.Expect(err).To(HaveOccurred())
_, err = m.ValidateUpdate(m)
g.Expect(warnings).To(BeEmpty())
warnings, err = m.ValidateUpdate(m)
g.Expect(err).To(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
} else {
_, err := m.ValidateCreate()
warnings, err := m.ValidateCreate()
g.Expect(err).ToNot(HaveOccurred())
_, err = m.ValidateUpdate(m)
g.Expect(warnings).To(BeEmpty())
warnings, err = m.ValidateUpdate(m)
g.Expect(err).ToNot(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
}
})
}
Expand Down
36 changes: 24 additions & 12 deletions api/v1beta1/machinedeployment_webhook_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -393,15 +393,19 @@ func TestMachineDeploymentValidation(t *testing.T) {
},
}
if tt.expectErr {
_, err := md.ValidateCreate()
warnings, err := md.ValidateCreate()
g.Expect(err).To(HaveOccurred())
_, err = md.ValidateUpdate(md)
g.Expect(warnings).To(BeEmpty())
warnings, err = md.ValidateUpdate(md)
g.Expect(err).To(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
} else {
_, err := md.ValidateCreate()
warnings, err := md.ValidateCreate()
g.Expect(err).NotTo(HaveOccurred())
_, err = md.ValidateUpdate(md)
g.Expect(warnings).To(BeEmpty())
warnings, err = md.ValidateUpdate(md)
g.Expect(err).NotTo(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
}
})
}
Expand Down Expand Up @@ -456,15 +460,19 @@ func TestMachineDeploymentVersionValidation(t *testing.T) {
}

if tt.expectErr {
_, err := md.ValidateCreate()
warnings, err := md.ValidateCreate()
g.Expect(err).To(HaveOccurred())
_, err = md.ValidateUpdate(md)
g.Expect(warnings).To(BeEmpty())
warnings, err = md.ValidateUpdate(md)
g.Expect(err).To(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
} else {
_, err := md.ValidateCreate()
warnings, err := md.ValidateCreate()
g.Expect(err).ToNot(HaveOccurred())
_, err = md.ValidateUpdate(md)
g.Expect(warnings).To(BeEmpty())
warnings, err = md.ValidateUpdate(md)
g.Expect(err).ToNot(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
}
})
}
Expand Down Expand Up @@ -507,12 +515,13 @@ func TestMachineDeploymentClusterNameImmutable(t *testing.T) {
},
}

_, err := newMD.ValidateUpdate(oldMD)
warnings, err := newMD.ValidateUpdate(oldMD)
if tt.expectErr {
g.Expect(err).To(HaveOccurred())
} else {
g.Expect(err).NotTo(HaveOccurred())
}
g.Expect(warnings).To(BeEmpty())
})
}
}
Expand All @@ -539,21 +548,24 @@ func defaultValidateTestCustomDefaulter(object admission.Validator, customDefaul
t.Run("validate-on-create", func(t *testing.T) {
g := NewWithT(t)
g.Expect(customDefaulter.Default(ctx, createCopy)).To(Succeed())
_, err := createCopy.ValidateCreate()
warnings, err := createCopy.ValidateCreate()
g.Expect(err).NotTo(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
})
t.Run("validate-on-update", func(t *testing.T) {
g := NewWithT(t)
g.Expect(customDefaulter.Default(ctx, defaultingUpdateCopy)).To(Succeed())
g.Expect(customDefaulter.Default(ctx, updateCopy)).To(Succeed())
_, err := defaultingUpdateCopy.ValidateUpdate(updateCopy)
warnings, err := defaultingUpdateCopy.ValidateUpdate(updateCopy)
g.Expect(err).NotTo(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
})
t.Run("validate-on-delete", func(t *testing.T) {
g := NewWithT(t)
g.Expect(customDefaulter.Default(ctx, deleteCopy)).To(Succeed())
_, err := deleteCopy.ValidateDelete()
warnings, err := deleteCopy.ValidateDelete()
g.Expect(err).NotTo(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
})
}
}
51 changes: 34 additions & 17 deletions api/v1beta1/machinehealthcheck_webhook_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -92,15 +92,19 @@ func TestMachineHealthCheckLabelSelectorAsSelectorValidation(t *testing.T) {
},
}
if tt.expectErr {
_, err := mhc.ValidateCreate()
warnings, err := mhc.ValidateCreate()
g.Expect(err).To(HaveOccurred())
_, err = mhc.ValidateUpdate(mhc)
g.Expect(warnings).To(BeEmpty())
warnings, err = mhc.ValidateUpdate(mhc)
g.Expect(err).To(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
} else {
_, err := mhc.ValidateCreate()
warnings, err := mhc.ValidateCreate()
g.Expect(err).NotTo(HaveOccurred())
_, err = mhc.ValidateUpdate(mhc)
g.Expect(warnings).To(BeEmpty())
warnings, err = mhc.ValidateUpdate(mhc)
g.Expect(err).NotTo(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
}
})
}
Expand Down Expand Up @@ -164,12 +168,13 @@ func TestMachineHealthCheckClusterNameImmutable(t *testing.T) {
},
}

_, err := newMHC.ValidateUpdate(oldMHC)
warnings, err := newMHC.ValidateUpdate(oldMHC)
if tt.expectErr {
g.Expect(err).To(HaveOccurred())
} else {
g.Expect(err).NotTo(HaveOccurred())
}
g.Expect(warnings).To(BeEmpty())
})
}
}
Expand Down Expand Up @@ -216,15 +221,19 @@ func TestMachineHealthCheckUnhealthyConditions(t *testing.T) {
},
}
if tt.expectErr {
_, err := mhc.ValidateCreate()
warnings, err := mhc.ValidateCreate()
g.Expect(err).To(HaveOccurred())
_, err = mhc.ValidateUpdate(mhc)
g.Expect(warnings).To(BeEmpty())
warnings, err = mhc.ValidateUpdate(mhc)
g.Expect(err).To(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
} else {
_, err := mhc.ValidateCreate()
warnings, err := mhc.ValidateCreate()
g.Expect(err).NotTo(HaveOccurred())
_, err = mhc.ValidateUpdate(mhc)
g.Expect(warnings).To(BeEmpty())
warnings, err = mhc.ValidateUpdate(mhc)
g.Expect(err).NotTo(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
}
})
}
Expand Down Expand Up @@ -295,15 +304,19 @@ func TestMachineHealthCheckNodeStartupTimeout(t *testing.T) {
}

if tt.expectErr {
_, err := mhc.ValidateCreate()
warnings, err := mhc.ValidateCreate()
g.Expect(err).To(HaveOccurred())
_, err = mhc.ValidateUpdate(mhc)
g.Expect(warnings).To(BeEmpty())
warnings, err = mhc.ValidateUpdate(mhc)
g.Expect(err).To(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
} else {
_, err := mhc.ValidateCreate()
warnings, err := mhc.ValidateCreate()
g.Expect(err).NotTo(HaveOccurred())
_, err = mhc.ValidateUpdate(mhc)
g.Expect(warnings).To(BeEmpty())
warnings, err = mhc.ValidateUpdate(mhc)
g.Expect(err).NotTo(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
}
}
}
Expand Down Expand Up @@ -358,15 +371,19 @@ func TestMachineHealthCheckMaxUnhealthy(t *testing.T) {
}

if tt.expectErr {
_, err := mhc.ValidateCreate()
warnings, err := mhc.ValidateCreate()
g.Expect(err).To(HaveOccurred())
_, err = mhc.ValidateUpdate(mhc)
g.Expect(warnings).To(BeEmpty())
warnings, err = mhc.ValidateUpdate(mhc)
g.Expect(err).To(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
} else {
_, err := mhc.ValidateCreate()
warnings, err := mhc.ValidateCreate()
g.Expect(err).NotTo(HaveOccurred())
_, err = mhc.ValidateUpdate(mhc)
g.Expect(warnings).To(BeEmpty())
warnings, err = mhc.ValidateUpdate(mhc)
g.Expect(err).NotTo(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
}
}
}
Expand Down
27 changes: 18 additions & 9 deletions api/v1beta1/machineset_webhook_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -106,15 +106,19 @@ func TestMachineSetLabelSelectorMatchValidation(t *testing.T) {
}

if tt.expectErr {
_, err := ms.ValidateCreate()
warnings, err := ms.ValidateCreate()
g.Expect(err).To(HaveOccurred())
_, err = ms.ValidateUpdate(ms)
g.Expect(warnings).To(BeEmpty())
warnings, err = ms.ValidateUpdate(ms)
g.Expect(err).To(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
} else {
_, err := ms.ValidateCreate()
warnings, err := ms.ValidateCreate()
g.Expect(err).NotTo(HaveOccurred())
_, err = ms.ValidateUpdate(ms)
g.Expect(warnings).To(BeEmpty())
warnings, err = ms.ValidateUpdate(ms)
g.Expect(err).NotTo(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
}
})
}
Expand Down Expand Up @@ -157,12 +161,13 @@ func TestMachineSetClusterNameImmutable(t *testing.T) {
},
}

_, err := newMS.ValidateUpdate(oldMS)
warnings, err := newMS.ValidateUpdate(oldMS)
if tt.expectErr {
g.Expect(err).To(HaveOccurred())
} else {
g.Expect(err).NotTo(HaveOccurred())
}
g.Expect(warnings).To(BeEmpty())
})
}
}
Expand Down Expand Up @@ -215,15 +220,19 @@ func TestMachineSetVersionValidation(t *testing.T) {
}

if tt.expectErr {
_, err := md.ValidateCreate()
warnings, err := md.ValidateCreate()
g.Expect(err).To(HaveOccurred())
_, err = md.ValidateUpdate(md)
g.Expect(warnings).To(BeEmpty())
warnings, err = md.ValidateUpdate(md)
g.Expect(err).To(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
} else {
_, err := md.ValidateCreate()
warnings, err := md.ValidateCreate()
g.Expect(err).NotTo(HaveOccurred())
_, err = md.ValidateUpdate(md)
g.Expect(warnings).To(BeEmpty())
warnings, err = md.ValidateUpdate(md)
g.Expect(err).NotTo(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
}
})
}
Expand Down
12 changes: 8 additions & 4 deletions bootstrap/kubeadm/api/v1beta1/kubeadmconfig_webhook_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -464,15 +464,19 @@ func TestKubeadmConfigValidate(t *testing.T) {
g := NewWithT(t)

if tt.expectErr {
_, err := tt.in.ValidateCreate()
warnings, err := tt.in.ValidateCreate()
g.Expect(err).To(HaveOccurred())
_, err = tt.in.ValidateUpdate(nil)
g.Expect(warnings).To(BeEmpty())
warnings, err = tt.in.ValidateUpdate(nil)
g.Expect(err).To(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
} else {
_, err := tt.in.ValidateCreate()
warnings, err := tt.in.ValidateCreate()
g.Expect(err).NotTo(HaveOccurred())
_, err = tt.in.ValidateUpdate(nil)
g.Expect(warnings).To(BeEmpty())
warnings, err = tt.in.ValidateUpdate(nil)
g.Expect(err).NotTo(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
}
})
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,10 +68,12 @@ func TestKubeadmConfigTemplateValidation(t *testing.T) {

t.Run(name, func(t *testing.T) {
g := NewWithT(t)
_, err := tt.in.ValidateCreate()
warnings, err := tt.in.ValidateCreate()
g.Expect(err).NotTo(HaveOccurred())
_, err = tt.in.ValidateUpdate(nil)
g.Expect(warnings).To(BeEmpty())
warnings, err = tt.in.ValidateUpdate(nil)
g.Expect(err).NotTo(HaveOccurred())
g.Expect(warnings).To(BeEmpty())
})
}
}
Loading

0 comments on commit 0af5da0

Please sign in to comment.