Browse Source

add support for listing emoji

Will Norris 12 years ago
parent
commit
e8bf65b7b6
3 changed files with 62 additions and 1 deletions
  1. +19
    -1
      github/misc.go
  2. +20
    -0
      github/misc_test.go
  3. +23
    -0
      tests/integration/misc_test.go

+ 19
- 1
github/misc.go View File

@ -56,8 +56,26 @@ func (c *Client) Markdown(text string, opt *MarkdownOptions) (string, *Response,
buf := new(bytes.Buffer)
resp, err := c.Do(req, buf)
if err != nil {
return "", resp, nil
return "", resp, err
}
return buf.String(), resp, nil
}
// ListEmojis returns the emojis available to use on GitHub.
//
// GitHub API docs: https://developer.github.com/v3/emojis/
func (c *Client) ListEmojis() (map[string]string, *Response, error) {
req, err := c.NewRequest("GET", "/emojis", nil)
if err != nil {
return nil, nil, err
}
var emoji map[string]string
resp, err := c.Do(req, &emoji)
if err != nil {
return nil, resp, err
}
return emoji, resp, nil
}

+ 20
- 0
github/misc_test.go View File

@ -45,3 +45,23 @@ func TestMarkdown(t *testing.T) {
t.Errorf("Markdown returned %+v, want %+v", md, want)
}
}
func TestListEmojis(t *testing.T) {
setup()
defer teardown()
mux.HandleFunc("/emojis", func(w http.ResponseWriter, r *http.Request) {
testMethod(t, r, "GET")
fmt.Fprint(w, `{"+1": "+1.png"}`)
})
emoji, _, err := client.ListEmojis()
if err != nil {
t.Errorf("ListEmojis returned error: %v", err)
}
want := map[string]string{"+1": "+1.png"}
if !reflect.DeepEqual(want, emoji) {
t.Errorf("ListEmojis returned %+v, want %+v", emoji, want)
}
}

+ 23
- 0
tests/integration/misc_test.go View File

@ -0,0 +1,23 @@
// Copyright 2014 The go-github AUTHORS. All rights reserved.
//
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package tests
import "testing"
func TestEmojis(t *testing.T) {
emoji, _, err := client.ListEmojis()
if err != nil {
t.Fatalf("ListEmojis returned error: %v", err)
}
if len(emoji) == 0 {
t.Errorf("ListEmojis returned no emojis")
}
if _, ok := emoji["+1"]; !ok {
t.Errorf("ListEmojis missing '+1' emoji")
}
}

Loading…
Cancel
Save