Go client for the Write.as API https://developers.write.as
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

64 lines
1.2 KiB

  1. package writeas
  2. import (
  3. "fmt"
  4. "testing"
  5. )
  6. func TestGetCollection(t *testing.T) {
  7. wac := NewClient()
  8. res, err := wac.GetCollection("blog")
  9. if err != nil {
  10. t.Errorf("Unexpected fetch results: %+v, err: %v\n", res, err)
  11. } else {
  12. t.Logf("Collection: %+v", res)
  13. if res.Title != "write.as" {
  14. t.Errorf("Unexpected fetch results: %+v\n", res)
  15. }
  16. }
  17. }
  18. func TestGetCollectionPosts(t *testing.T) {
  19. wac := NewClient()
  20. res, err := wac.GetCollectionPosts("blog")
  21. if err != nil {
  22. t.Errorf("Unexpected fetch results: %+v, err: %v\n", res, err)
  23. } else {
  24. if len(*res) == 0 {
  25. t.Errorf("No posts returned!")
  26. }
  27. }
  28. }
  29. func TestGetUserCollections(t *testing.T) {
  30. wac := NewDevClient()
  31. _, err := wac.LogIn("demo", "demo")
  32. if err != nil {
  33. t.Fatalf("Unable to log in: %v", err)
  34. }
  35. defer wac.LogOut()
  36. res, err := wac.GetUserCollections()
  37. if err != nil {
  38. t.Errorf("Unexpected fetch results: %+v, err: %v\n", res, err)
  39. } else {
  40. t.Logf("User collections: %+v", res)
  41. if len(*res) == 0 {
  42. t.Errorf("No collections returned!")
  43. }
  44. }
  45. }
  46. func ExampleClient_GetCollection() {
  47. c := NewClient()
  48. coll, err := c.GetCollection("blog")
  49. if err != nil {
  50. fmt.Printf("%v", err)
  51. return
  52. }
  53. fmt.Printf("%s", coll.Title)
  54. // Output: write.as
  55. }