Merge pull request #25080 from derekwaynecarr/quota_controller_close_channels

Quota integration test was not closing launched controllers
This commit is contained in:
Fabio Yeon 2016-05-10 15:49:59 -07:00
commit c4a2724eb2

View File

@ -19,6 +19,7 @@ limitations under the License.
package integration
import (
"fmt"
"net/http"
"net/http/httptest"
"testing"
@ -37,7 +38,6 @@ import (
"k8s.io/kubernetes/pkg/labels"
"k8s.io/kubernetes/pkg/master"
quotainstall "k8s.io/kubernetes/pkg/quota/install"
"k8s.io/kubernetes/pkg/util/wait"
"k8s.io/kubernetes/pkg/watch"
"k8s.io/kubernetes/plugin/pkg/admission/resourcequota"
"k8s.io/kubernetes/test/integration/framework"
@ -75,8 +75,11 @@ func TestQuota(t *testing.T) {
}
close(initializationCh)
controllerCh := make(chan struct{})
defer close(controllerCh)
go replicationcontroller.NewReplicationManagerFromClient(clientset, controller.NoResyncPeriodFunc, replicationcontroller.BurstReplicas, 4096).
Run(3, wait.NeverStop)
Run(3, controllerCh)
resourceQuotaRegistry := quotainstall.NewRegistry(clientset)
groupKindsToReplenish := []unversioned.GroupKind{
@ -94,7 +97,7 @@ func TestQuota(t *testing.T) {
ReplenishmentResyncPeriod: controller.NoResyncPeriodFunc,
ControllerFactory: resourcequotacontroller.NewReplenishmentControllerFactoryFromClient(clientset),
}
go resourcequotacontroller.NewResourceQuotaController(resourceQuotaControllerOptions).Run(2, wait.NeverStop)
go resourcequotacontroller.NewResourceQuotaController(resourceQuotaControllerOptions).Run(2, controllerCh)
startTime := time.Now()
scale(t, api.NamespaceDefault, clientset)
@ -194,6 +197,7 @@ func scale(t *testing.T, namespace string, clientset *clientset.Clientset) {
switch cast := event.Object.(type) {
case *api.ReplicationController:
fmt.Printf("Found %v of %v replicas\n", int(cast.Status.Replicas), target)
if int(cast.Status.Replicas) == target {
return true, nil
}