Add an e2e test in go. Also adjust validation logic a little to make it more reasonable.

Not integrated into existing e2e yet.
This commit is contained in:
Brendan Burns
2014-10-14 12:28:45 -07:00
parent f603785698
commit 8d38f8890e
3 changed files with 180 additions and 1 deletions

View File

@@ -346,6 +346,10 @@ func ValidatePod(pod *api.Pod) errs.ErrorList {
func ValidatePodUpdate(newPod, oldPod *api.Pod) errs.ErrorList {
allErrs := errs.ErrorList{}
if newPod.ID != oldPod.ID {
allErrs = append(allErrs, errs.NewFieldInvalid("ID", newPod.ID))
}
if len(newPod.DesiredState.Manifest.Containers) != len(oldPod.DesiredState.Manifest.Containers) {
allErrs = append(allErrs, errs.NewFieldInvalid("DesiredState.Manifest.Containers", newPod.DesiredState.Manifest.Containers))
return allErrs
@@ -360,7 +364,7 @@ func ValidatePodUpdate(newPod, oldPod *api.Pod) errs.ErrorList {
newContainers = append(newContainers, container)
}
pod.DesiredState.Manifest.Containers = newContainers
if !reflect.DeepEqual(&pod, oldPod) {
if !reflect.DeepEqual(pod.DesiredState.Manifest, oldPod.DesiredState.Manifest) {
allErrs = append(allErrs, errs.NewFieldInvalid("DesiredState.Manifest.Containers", newPod.DesiredState.Manifest.Containers))
}
return allErrs