mirror of
https://github.com/kubevirt/containerized-data-importer.git
synced 2025-06-03 06:30:22 +00:00
345 lines
8.9 KiB
Go
345 lines
8.9 KiB
Go
package controller
|
|
|
|
import (
|
|
"reflect"
|
|
"testing"
|
|
|
|
"k8s.io/api/core/v1"
|
|
"k8s.io/client-go/kubernetes"
|
|
"k8s.io/client-go/tools/cache"
|
|
"k8s.io/client-go/util/workqueue"
|
|
)
|
|
|
|
func TestNewController(t *testing.T) {
|
|
type args struct {
|
|
client kubernetes.Interface
|
|
pvcInformer cache.SharedIndexInformer
|
|
podInformer cache.SharedIndexInformer
|
|
importerImage string
|
|
pullPolicy string
|
|
verbose string
|
|
}
|
|
tests := []struct {
|
|
name string
|
|
args args
|
|
want *Controller
|
|
}{
|
|
// TODO: Add test cases.
|
|
}
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
if got := NewController(tt.args.client, tt.args.pvcInformer, tt.args.podInformer, tt.args.importerImage, tt.args.pullPolicy, tt.args.verbose); !reflect.DeepEqual(got, tt.want) {
|
|
t.Errorf("NewController() = %v, want %v", got, tt.want)
|
|
}
|
|
})
|
|
}
|
|
}
|
|
|
|
func TestController_Run(t *testing.T) {
|
|
type fields struct {
|
|
clientset kubernetes.Interface
|
|
pvcQueue workqueue.RateLimitingInterface
|
|
podQueue workqueue.RateLimitingInterface
|
|
pvcInformer cache.SharedIndexInformer
|
|
podInformer cache.SharedIndexInformer
|
|
importerImage string
|
|
pullPolicy string
|
|
verbose string
|
|
}
|
|
type args struct {
|
|
threadiness int
|
|
stopCh <-chan struct{}
|
|
}
|
|
tests := []struct {
|
|
name string
|
|
fields fields
|
|
args args
|
|
wantErr bool
|
|
}{
|
|
// TODO: Add test cases.
|
|
}
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
c := &Controller{
|
|
clientset: tt.fields.clientset,
|
|
pvcQueue: tt.fields.pvcQueue,
|
|
podQueue: tt.fields.podQueue,
|
|
pvcInformer: tt.fields.pvcInformer,
|
|
podInformer: tt.fields.podInformer,
|
|
importerImage: tt.fields.importerImage,
|
|
pullPolicy: tt.fields.pullPolicy,
|
|
verbose: tt.fields.verbose,
|
|
}
|
|
if err := c.Run(tt.args.threadiness, tt.args.stopCh); (err != nil) != tt.wantErr {
|
|
t.Errorf("Controller.Run() error = %v, wantErr %v", err, tt.wantErr)
|
|
}
|
|
})
|
|
}
|
|
}
|
|
|
|
func TestController_runPodWorkers(t *testing.T) {
|
|
type fields struct {
|
|
clientset kubernetes.Interface
|
|
pvcQueue workqueue.RateLimitingInterface
|
|
podQueue workqueue.RateLimitingInterface
|
|
pvcInformer cache.SharedIndexInformer
|
|
podInformer cache.SharedIndexInformer
|
|
importerImage string
|
|
pullPolicy string
|
|
verbose string
|
|
}
|
|
tests := []struct {
|
|
name string
|
|
fields fields
|
|
}{
|
|
// TODO: Add test cases.
|
|
}
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
c := &Controller{
|
|
clientset: tt.fields.clientset,
|
|
pvcQueue: tt.fields.pvcQueue,
|
|
podQueue: tt.fields.podQueue,
|
|
pvcInformer: tt.fields.pvcInformer,
|
|
podInformer: tt.fields.podInformer,
|
|
importerImage: tt.fields.importerImage,
|
|
pullPolicy: tt.fields.pullPolicy,
|
|
verbose: tt.fields.verbose,
|
|
}
|
|
c.runPodWorkers()
|
|
})
|
|
}
|
|
}
|
|
|
|
func TestController_runPVCWorkers(t *testing.T) {
|
|
type fields struct {
|
|
clientset kubernetes.Interface
|
|
pvcQueue workqueue.RateLimitingInterface
|
|
podQueue workqueue.RateLimitingInterface
|
|
pvcInformer cache.SharedIndexInformer
|
|
podInformer cache.SharedIndexInformer
|
|
importerImage string
|
|
pullPolicy string
|
|
verbose string
|
|
}
|
|
tests := []struct {
|
|
name string
|
|
fields fields
|
|
}{
|
|
// TODO: Add test cases.
|
|
}
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
c := &Controller{
|
|
clientset: tt.fields.clientset,
|
|
pvcQueue: tt.fields.pvcQueue,
|
|
podQueue: tt.fields.podQueue,
|
|
pvcInformer: tt.fields.pvcInformer,
|
|
podInformer: tt.fields.podInformer,
|
|
importerImage: tt.fields.importerImage,
|
|
pullPolicy: tt.fields.pullPolicy,
|
|
verbose: tt.fields.verbose,
|
|
}
|
|
c.runPVCWorkers()
|
|
})
|
|
}
|
|
}
|
|
|
|
func TestController_ProcessNextPodItem(t *testing.T) {
|
|
type fields struct {
|
|
clientset kubernetes.Interface
|
|
pvcQueue workqueue.RateLimitingInterface
|
|
podQueue workqueue.RateLimitingInterface
|
|
pvcInformer cache.SharedIndexInformer
|
|
podInformer cache.SharedIndexInformer
|
|
importerImage string
|
|
pullPolicy string
|
|
verbose string
|
|
}
|
|
tests := []struct {
|
|
name string
|
|
fields fields
|
|
want bool
|
|
}{
|
|
// TODO: Add test cases.
|
|
}
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
c := &Controller{
|
|
clientset: tt.fields.clientset,
|
|
pvcQueue: tt.fields.pvcQueue,
|
|
podQueue: tt.fields.podQueue,
|
|
pvcInformer: tt.fields.pvcInformer,
|
|
podInformer: tt.fields.podInformer,
|
|
importerImage: tt.fields.importerImage,
|
|
pullPolicy: tt.fields.pullPolicy,
|
|
verbose: tt.fields.verbose,
|
|
}
|
|
if got := c.ProcessNextPodItem(); got != tt.want {
|
|
t.Errorf("Controller.ProcessNextPodItem() = %v, want %v", got, tt.want)
|
|
}
|
|
})
|
|
}
|
|
}
|
|
|
|
func TestController_processPodItem(t *testing.T) {
|
|
type fields struct {
|
|
clientset kubernetes.Interface
|
|
pvcQueue workqueue.RateLimitingInterface
|
|
podQueue workqueue.RateLimitingInterface
|
|
pvcInformer cache.SharedIndexInformer
|
|
podInformer cache.SharedIndexInformer
|
|
importerImage string
|
|
pullPolicy string
|
|
verbose string
|
|
}
|
|
type args struct {
|
|
pod *v1.Pod
|
|
}
|
|
tests := []struct {
|
|
name string
|
|
fields fields
|
|
args args
|
|
wantErr bool
|
|
}{
|
|
// TODO: Add test cases.
|
|
}
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
c := &Controller{
|
|
clientset: tt.fields.clientset,
|
|
pvcQueue: tt.fields.pvcQueue,
|
|
podQueue: tt.fields.podQueue,
|
|
pvcInformer: tt.fields.pvcInformer,
|
|
podInformer: tt.fields.podInformer,
|
|
importerImage: tt.fields.importerImage,
|
|
pullPolicy: tt.fields.pullPolicy,
|
|
verbose: tt.fields.verbose,
|
|
}
|
|
if err := c.processPodItem(tt.args.pod); (err != nil) != tt.wantErr {
|
|
t.Errorf("Controller.processPodItem() error = %v, wantErr %v", err, tt.wantErr)
|
|
}
|
|
})
|
|
}
|
|
}
|
|
|
|
func TestController_ProcessNextPvcItem(t *testing.T) {
|
|
type fields struct {
|
|
clientset kubernetes.Interface
|
|
pvcQueue workqueue.RateLimitingInterface
|
|
podQueue workqueue.RateLimitingInterface
|
|
pvcInformer cache.SharedIndexInformer
|
|
podInformer cache.SharedIndexInformer
|
|
importerImage string
|
|
pullPolicy string
|
|
verbose string
|
|
}
|
|
tests := []struct {
|
|
name string
|
|
fields fields
|
|
want bool
|
|
}{
|
|
// TODO: Add test cases.
|
|
}
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
c := &Controller{
|
|
clientset: tt.fields.clientset,
|
|
pvcQueue: tt.fields.pvcQueue,
|
|
podQueue: tt.fields.podQueue,
|
|
pvcInformer: tt.fields.pvcInformer,
|
|
podInformer: tt.fields.podInformer,
|
|
importerImage: tt.fields.importerImage,
|
|
pullPolicy: tt.fields.pullPolicy,
|
|
verbose: tt.fields.verbose,
|
|
}
|
|
if got := c.ProcessNextPvcItem(); got != tt.want {
|
|
t.Errorf("Controller.ProcessNextPvcItem() = %v, want %v", got, tt.want)
|
|
}
|
|
})
|
|
}
|
|
}
|
|
|
|
func TestController_processPvcItem(t *testing.T) {
|
|
type fields struct {
|
|
clientset kubernetes.Interface
|
|
pvcQueue workqueue.RateLimitingInterface
|
|
podQueue workqueue.RateLimitingInterface
|
|
pvcInformer cache.SharedIndexInformer
|
|
podInformer cache.SharedIndexInformer
|
|
importerImage string
|
|
pullPolicy string
|
|
verbose string
|
|
}
|
|
type args struct {
|
|
pvc *v1.PersistentVolumeClaim
|
|
}
|
|
tests := []struct {
|
|
name string
|
|
fields fields
|
|
args args
|
|
wantErr bool
|
|
}{
|
|
// TODO: Add test cases.
|
|
}
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
c := &Controller{
|
|
clientset: tt.fields.clientset,
|
|
pvcQueue: tt.fields.pvcQueue,
|
|
podQueue: tt.fields.podQueue,
|
|
pvcInformer: tt.fields.pvcInformer,
|
|
podInformer: tt.fields.podInformer,
|
|
importerImage: tt.fields.importerImage,
|
|
pullPolicy: tt.fields.pullPolicy,
|
|
verbose: tt.fields.verbose,
|
|
}
|
|
if err := c.processPvcItem(tt.args.pvc); (err != nil) != tt.wantErr {
|
|
t.Errorf("Controller.processPvcItem() error = %v, wantErr %v", err, tt.wantErr)
|
|
}
|
|
})
|
|
}
|
|
}
|
|
|
|
func TestController_forgetKey(t *testing.T) {
|
|
type fields struct {
|
|
clientset kubernetes.Interface
|
|
pvcQueue workqueue.RateLimitingInterface
|
|
podQueue workqueue.RateLimitingInterface
|
|
pvcInformer cache.SharedIndexInformer
|
|
podInformer cache.SharedIndexInformer
|
|
importerImage string
|
|
pullPolicy string
|
|
verbose string
|
|
}
|
|
type args struct {
|
|
key interface{}
|
|
msg string
|
|
}
|
|
tests := []struct {
|
|
name string
|
|
fields fields
|
|
args args
|
|
want bool
|
|
}{
|
|
// TODO: Add test cases.
|
|
}
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
c := &Controller{
|
|
clientset: tt.fields.clientset,
|
|
pvcQueue: tt.fields.pvcQueue,
|
|
podQueue: tt.fields.podQueue,
|
|
pvcInformer: tt.fields.pvcInformer,
|
|
podInformer: tt.fields.podInformer,
|
|
importerImage: tt.fields.importerImage,
|
|
pullPolicy: tt.fields.pullPolicy,
|
|
verbose: tt.fields.verbose,
|
|
}
|
|
if got := c.forgetKey(tt.args.key, tt.args.msg); got != tt.want {
|
|
t.Errorf("Controller.forgetKey() = %v, want %v", got, tt.want)
|
|
}
|
|
})
|
|
}
|
|
}
|