1
0
mirror of https://github.com/interviewstreet/go-jira.git synced 2024-11-24 08:22:42 +02:00
go-jira/project_test.go

81 lines
1.8 KiB
Go
Raw Normal View History

2016-06-01 14:13:11 +02:00
package jira
import (
"fmt"
"io/ioutil"
"net/http"
"testing"
)
func TestProjectGetAll(t *testing.T) {
setup()
defer teardown()
testApiEdpoint := "/rest/api/2/project"
raw, err := ioutil.ReadFile("./json_mocks/all_projects.json")
if err != nil {
t.Error(err.Error())
}
testMux.HandleFunc(testApiEdpoint, func(w http.ResponseWriter, r *http.Request) {
testMethod(t, r, "GET")
testRequestURL(t, r, testApiEdpoint)
fmt.Fprint(w, string(raw))
})
projects, _, err := testClient.Project.GetList()
if projects == nil {
t.Error("Expected project list. Project list is nil")
}
if err != nil {
t.Errorf("Error given: %s", err)
}
}
func TestProjectGet(t *testing.T) {
setup()
defer teardown()
testApiEdpoint := "/rest/api/2/project/12310505"
raw, err := ioutil.ReadFile("./json_mocks/project.json")
if err != nil {
t.Error(err.Error())
}
testMux.HandleFunc(testApiEdpoint, func(w http.ResponseWriter, r *http.Request) {
testMethod(t, r, "GET")
testRequestURL(t, r, testApiEdpoint)
fmt.Fprint(w, string(raw))
})
projects, _, err := testClient.Project.Get("12310505")
if projects == nil {
t.Error("Expected project list. Project list is nil")
}
if err != nil {
t.Errorf("Error given: %s", err)
}
}
2016-06-01 20:36:11 +02:00
2016-06-02 14:59:40 +02:00
func TestProjectGet_NoProject(t *testing.T) {
2016-06-01 20:36:11 +02:00
setup()
defer teardown()
testApiEdpoint := "/rest/api/2/project/99999999"
testMux.HandleFunc(testApiEdpoint, func(w http.ResponseWriter, r *http.Request) {
testMethod(t, r, "GET")
testRequestURL(t, r, testApiEdpoint)
fmt.Fprint(w, nil)
})
2016-06-02 14:59:40 +02:00
projects, resp, err := testClient.Project.Get("99999999")
2016-06-01 20:36:11 +02:00
if projects != nil {
t.Errorf("Expected nil. Got %s", projects)
}
if resp.Status == "404" {
t.Errorf("Expected status 404. Got %s", resp.Status)
}
if err == nil {
t.Errorf("Error given: %s", err)
}
}