1
0
mirror of https://github.com/interviewstreet/go-jira.git synced 2024-11-24 08:22:42 +02:00
go-jira/permissionschemes_test.go
Andy Grunwald 43e8242f2c
style: Fix staticcheck (static analysis) errors for this library (#283)
* style: Fix staticcheck errors for "error strings should not be capitalized (ST1005)"

staticcheck is a static analysis tool for go.
It reports several "error strings should not be capitalized (ST1005)" messages.
Here, we fix it to be more compliant with the go coding styleguide.

Related: #280

* style: Fix staticcheck errors for "printf-style function with dynamic format ... (SA1006)"

staticcheck is a static analysis tool for go.
It reports several "printf-style function with dynamic format string and no further arguments should use print-style function instead (SA1006)" messages.
Here, we fix it to be more compliant with the go coding styleguide.

Related: #280

* style: Fix staticcheck errors for "type X is unused (U1000)"

staticcheck is a static analysis tool for go.
It reports several "type X is unused (U1000)" messages.
Here, we fix it to be more compliant with the go coding styleguide.

Related: #280

* style: Fix staticcheck errors for "should use X instead (S1003 & SA6005)"

staticcheck is a static analysis tool for go.
It reports several

- should use !bytes.Contains(b, []byte(`"password":"bar"`)) instead (S1003)
- should use strings.EqualFold instead (SA6005)

messages.
Here, we fix it to be more compliant with the go coding styleguide.

Related: #280

* style: Fix staticcheck errors for "unnecessary use of fmt.Sprintf (S1039)"

staticcheck is a static analysis tool for go.
It report several "unnecessary use of fmt.Sprintf (S1039)" messages.
Here, we fix it to be more compliant with the go coding styleguide.

Related: #280

* style: Fix staticcheck errors for "this value of X is never used (SA4006)"

staticcheck is a static analysis tool for go.
It report several "this value of X is never used (SA4006)" messages.
Here, we fix it to be more compliant with the go coding styleguide.

Related: #280

* style: Fix staticcheck errors for "redundant return statement (S1023)"

staticcheck is a static analysis tool for go.
It report several "redundant return statement (S1023)" messages.
Here, we fix it to be more compliant with the go coding styleguide.

Related: #280

* style: Fix staticcheck errors for "possible nil pointer dereference (SA5011)"

staticcheck is a static analysis tool for go.
It report several

    file.go:Line:character: possible nil pointer dereference (SA5011)
        file.go:Line:character: this check suggests that the pointer can be nil

messages.
Here, we fix it to be more compliant with the go coding styleguide.

Related: #280

* style: Fix staticcheck errors for "this value of X is never used (SA4006)"

staticcheck is a static analysis tool for go.
It report several "this value of X is never used (SA4006)" messages.
Here, we fix it to be more compliant with the go coding styleguide.

Related: #280
2020-05-02 23:08:01 +02:00

107 lines
2.9 KiB
Go

package jira
import (
"fmt"
"io/ioutil"
"net/http"
"testing"
)
func TestPermissionSchemeService_GetList(t *testing.T) {
setup()
defer teardown()
testAPIEndpoint := "/rest/api/3/permissionscheme"
raw, err := ioutil.ReadFile("./mocks/all_permissionschemes.json")
if err != nil {
t.Error(err.Error())
}
testMux.HandleFunc(testAPIEndpoint, func(w http.ResponseWriter, r *http.Request) {
testMethod(t, r, "GET")
testRequestURL(t, r, testAPIEndpoint)
fmt.Fprint(w, string(raw))
})
permissionScheme, _, err := testClient.PermissionScheme.GetList()
if err != nil {
t.Errorf("Error given: %v", err)
}
if permissionScheme == nil {
t.Error("Expected permissionScheme list. PermissionScheme list is nil")
return
}
if len(permissionScheme.PermissionSchemes) != 2 {
t.Errorf("Expected %d permissionSchemes but got %d", 2, len(permissionScheme.PermissionSchemes))
}
}
func TestPermissionSchemeService_GetList_NoList(t *testing.T) {
setup()
defer teardown()
testAPIEndpoint := "/rest/api/3/permissionscheme"
raw, err := ioutil.ReadFile("./mocks/no_permissionschemes.json")
if err != nil {
t.Error(err.Error())
}
testMux.HandleFunc(testAPIEndpoint, func(w http.ResponseWriter, r *http.Request) {
testMethod(t, r, "GET")
testRequestURL(t, r, testAPIEndpoint)
fmt.Fprint(w, string(raw))
})
permissionScheme, _, err := testClient.PermissionScheme.GetList()
if permissionScheme != nil {
t.Errorf("Expected permissionScheme list has %d entries but should be nil", len(permissionScheme.PermissionSchemes))
}
if err == nil {
t.Errorf("No error given")
}
}
func TestPermissionSchemeService_Get(t *testing.T) {
setup()
defer teardown()
testAPIEdpoint := "/rest/api/3/permissionscheme/10100"
raw, err := ioutil.ReadFile("./mocks/permissionscheme.json")
if err != nil {
t.Error(err.Error())
}
testMux.HandleFunc(testAPIEdpoint, func(writer http.ResponseWriter, request *http.Request) {
testMethod(t, request, "GET")
testRequestURL(t, request, testAPIEdpoint)
fmt.Fprint(writer, string(raw))
})
permissionScheme, _, err := testClient.PermissionScheme.Get(10100)
if permissionScheme == nil {
t.Errorf("Expected permissionscheme, got nil")
}
if err != nil {
t.Errorf("Error given: %s", err)
}
}
func TestPermissionSchemeService_Get_NoScheme(t *testing.T) {
setup()
defer teardown()
testAPIEdpoint := "/rest/api/3/permissionscheme/99999"
raw, err := ioutil.ReadFile("./mocks/no_permissionscheme.json")
if err != nil {
t.Error(err.Error())
}
testMux.HandleFunc(testAPIEdpoint, func(writer http.ResponseWriter, request *http.Request) {
testMethod(t, request, "GET")
testRequestURL(t, request, testAPIEdpoint)
fmt.Fprint(writer, string(raw))
})
permissionScheme, _, err := testClient.PermissionScheme.Get(99999)
if permissionScheme != nil {
t.Errorf("Expected nil, got permissionschme %v", permissionScheme)
}
if err == nil {
t.Errorf("No error given")
}
}