github.com/vmware/go-vcloud-director/v2@v2.24.0/govcd/openapi_unit_test.go (about)

     1  //go:build unit || ALL
     2  
     3  package govcd
     4  
     5  import (
     6  	"net/url"
     7  	"reflect"
     8  	"testing"
     9  )
    10  
    11  func Test_defaultPageSize(t *testing.T) {
    12  	type args struct {
    13  		queryParams     url.Values
    14  		defaultPageSize string
    15  	}
    16  	tests := []struct {
    17  		name string
    18  		args args
    19  		want url.Values
    20  	}{
    21  		{
    22  			name: "NilQueryParams",
    23  			args: args{nil, "128"},
    24  			want: map[string][]string{"pageSize": []string{"128"}},
    25  		},
    26  		{
    27  			name: "NotNilQueryParams",
    28  			args: args{map[string][]string{"otherField": []string{"randomValue"}}, "128"},
    29  			want: map[string][]string{"pageSize": []string{"128"}, "otherField": []string{"randomValue"}},
    30  		},
    31  		{
    32  			name: "CustomPageSize",
    33  			args: args{map[string][]string{"pageSize": []string{"1"}}, "128"},
    34  			want: map[string][]string{"pageSize": []string{"1"}},
    35  		},
    36  		{
    37  			name: "CustomPageSizeWithOtherFields",
    38  			args: args{map[string][]string{"pageSize": []string{"1"}, "otherField": []string{"randomValue"}}, "128"},
    39  			want: map[string][]string{"pageSize": []string{"1"}, "otherField": []string{"randomValue"}},
    40  		},
    41  	}
    42  	for _, tt := range tests {
    43  		t.Run(tt.name, func(t *testing.T) {
    44  			if got := defaultPageSize(tt.args.queryParams, tt.args.defaultPageSize); !reflect.DeepEqual(got, tt.want) {
    45  				t.Errorf("defaultPageSize() = %v, want %v", got, tt.want)
    46  			}
    47  		})
    48  	}
    49  }