github.com/versent/saml2aws@v2.17.0+incompatible/input_test.go (about)

     1  package saml2aws
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/versent/saml2aws/pkg/creds"
     7  )
     8  
     9  func TestLoginDetails_Validate(t *testing.T) {
    10  	type fields struct {
    11  		Username string
    12  		Password string
    13  		URL      string
    14  	}
    15  	tests := []struct {
    16  		name    string
    17  		fields  fields
    18  		wantErr bool
    19  	}{
    20  		// TODO: Add test cases.
    21  		{name: "hostname missing error", fields: fields{}, wantErr: true},
    22  		{name: "username missing error", fields: fields{URL: "id.example.com"}, wantErr: true},
    23  		{name: "password missing error", fields: fields{URL: "id.example.com", Username: "test"}, wantErr: true},
    24  		{name: "ok", fields: fields{URL: "id.example.com", Username: "test", Password: "test"}, wantErr: false},
    25  	}
    26  	for _, tt := range tests {
    27  		t.Run(tt.name, func(t *testing.T) {
    28  			ld := &creds.LoginDetails{
    29  				Username: tt.fields.Username,
    30  				Password: tt.fields.Password,
    31  				URL:      tt.fields.URL,
    32  			}
    33  			if err := ld.Validate(); (err != nil) != tt.wantErr {
    34  				t.Errorf("LoginDetails.Validate() error = %v, wantErr %v", err, tt.wantErr)
    35  			}
    36  		})
    37  	}
    38  }