From a6e45bf97dfc25852dbabe0d24d9b6260dd9ebb0 Mon Sep 17 00:00:00 2001 From: Guo Huang Date: Fri, 29 Apr 2016 15:59:21 -0700 Subject: [PATCH] added user api test --- samples/client/petstore/go/user_api_test.go | 161 ++++++++++++++++++++ 1 file changed, 161 insertions(+) create mode 100644 samples/client/petstore/go/user_api_test.go diff --git a/samples/client/petstore/go/user_api_test.go b/samples/client/petstore/go/user_api_test.go new file mode 100644 index 00000000000..38245f23e3d --- /dev/null +++ b/samples/client/petstore/go/user_api_test.go @@ -0,0 +1,161 @@ +package main + +import ( + sw "./go-petstore" + "github.com/stretchr/testify/assert" + "testing" +) + +func TestCreateUser(t *testing.T) { + s := sw.NewUserApi() + newUser := sw.User{ + Id: 1000, + FirstName: "gopher", + LastName : "lang", + Username : "gopher", + Password : "lang", + Email : "lang@test.com", + Phone : "5101112222", + UserStatus: 1} + + apiResponse, err := s.CreateUser(newUser) + + if err != nil { + t.Errorf("Error while adding user") + t.Log(err) + } + if apiResponse.Response.StatusCode != 200 { + t.Log(apiResponse.Response) + } +} + +// func TestCreateUsersWithArrayInput(t *testing.T) { +// s := sw.NewUserApi() +// newUsers := []sw.User{ +// sw.User { +// Id: int64(1001), +// FirstName: "gopher1", +// LastName : "lang1", +// Username : "gopher1", +// Password : "lang1", +// Email : "lang1@test.com", +// Phone : "5101112222", +// UserStatus: int32(1), +// }, +// sw.User { +// Id: int64(1002), +// FirstName: "gopher2", +// LastName : "lang2", +// Username : "gopher2", +// Password : "lang2", +// Email : "lang2@test.com", +// Phone : "5101112222", +// UserStatus: int32(1), +// }, +// } + +// apiResponse, err := s.CreateUsersWithArrayInput(newUsers) + +// if err != nil { +// t.Errorf("Error while adding users") +// t.Log(err) +// } +// if apiResponse.Response.StatusCode != 200 { +// t.Log(apiResponse.Response) +// } + +// //tear down +// _, err1 := s.DeleteUser("gopher1") +// if(err1 != nil){ +// t.Errorf("Error while deleting user") +// t.Log(err1) +// } + +// _, err2 := s.DeleteUser("gopher2") +// if(err2 != nil){ +// t.Errorf("Error while deleting user") +// t.Log(err2) +// } +// } + +func TestGetUserByName(t *testing.T) { + assert := assert.New(t) + + s := sw.NewUserApi() + resp, apiResponse, err := s.GetUserByName("gopher") + if err != nil { + t.Errorf("Error while getting pet by id") + t.Log(err) + } else { + assert.Equal(resp.Id, int64(1000), "User id should be equal") + assert.Equal(resp.Username, "gopher", "User name should be gopher") + assert.Equal(resp.LastName, "lang", "Last name should be lang") + //t.Log(resp) + } + if apiResponse.Response.StatusCode != 200 { + t.Log(apiResponse.Response) + } +} + +func TestGetUserByNameWithInvalidID(t *testing.T) { + s := sw.NewUserApi() + resp, apiResponse, err := s.GetUserByName("999999999") + if err != nil { + t.Errorf("Error while getting pet by invalid id") + t.Log(err) + t.Log(apiResponse) + } else { + t.Log(resp) + } + if apiResponse.Response.StatusCode != 200 { + t.Log(apiResponse.Response) + } +} + +func TestUpdateUser(t *testing.T) { + assert := assert.New(t) + s := sw.NewUserApi() + newUser := sw.User{ + Id: 1000, + FirstName: "gopher20", + LastName : "lang20", + Username : "gopher", + Password : "lang", + Email : "lang@test.com", + Phone : "5101112222", + UserStatus: 1} + + apiResponse, err := s.UpdateUser("gopher", newUser) + + if err != nil { + t.Errorf("Error while deleting pet by id") + t.Log(err) + } + if apiResponse.Response.StatusCode != 200 { + t.Log(apiResponse.Response) + } + + //verify changings are correct + resp, apiResponse, err := s.GetUserByName("gopher") + if err != nil { + t.Errorf("Error while getting pet by id") + t.Log(err) + } else { + assert.Equal(resp.Id, int64(1000), "User id should be equal") + assert.Equal(resp.FirstName, "gopher20", "User name should be gopher") + assert.Equal(resp.Password, "lang", "User name should be the same") + } +} + +func TestDeleteUser(t *testing.T) { + s := sw.NewUserApi() + apiResponse, err := s.DeleteUser("gopher") + + if err != nil { + t.Errorf("Error while deleting user") + t.Log(err) + } + if apiResponse.Response.StatusCode != 200 { + t.Log(apiResponse.Response) + } +} \ No newline at end of file