Go client for the Write.as API https://developers.write.as
Não pode escolher mais do que 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

70 linhas
1.3 KiB

  1. package writeas
  2. import (
  3. "testing"
  4. "strings"
  5. )
  6. func TestCreatePost(t *testing.T) {
  7. wac := NewClient()
  8. p, err := wac.CreatePost(&PostParams{
  9. Title: "Title!",
  10. Content: "This is a post.",
  11. Font: "sans",
  12. })
  13. if err != nil {
  14. t.Errorf("Post create failed: %v", err)
  15. return
  16. }
  17. t.Logf("Post created: %+v", p)
  18. token := p.Token
  19. // Update post
  20. p, err = wac.UpdatePost(&PostParams{
  21. ID: p.ID,
  22. Token: token,
  23. Content: "Now it's been updated!",
  24. })
  25. if err != nil {
  26. t.Errorf("Post update failed: %v", err)
  27. return
  28. }
  29. t.Logf("Post updated: %+v", p)
  30. // Delete post
  31. err = wac.DeletePost(&PostParams{
  32. ID: p.ID,
  33. Token: token,
  34. })
  35. if err != nil {
  36. t.Errorf("Post delete failed: %v", err)
  37. return
  38. }
  39. t.Logf("Post deleted!")
  40. }
  41. func TestGetPost(t *testing.T) {
  42. wac := NewClient()
  43. res, err := wac.GetPost("zekk5r9apum6p")
  44. if err != nil {
  45. t.Errorf("Unexpected fetch results: %+v, err: %v\n", res, err)
  46. } else {
  47. t.Logf("Post: %+v", res)
  48. if res.Content != "This is a post." {
  49. t.Errorf("Unexpected fetch results: %+v\n", res)
  50. }
  51. }
  52. res, err = wac.GetPost("3psnxyhqxy3hq")
  53. if err != nil {
  54. t.Errorf("Unexpected fetch results: %+v, err: %v\n", res, err)
  55. } else {
  56. if !strings.HasPrefix(res.Content, " Write.as Blog") {
  57. t.Errorf("Unexpected fetch results: %+v\n", res)
  58. }
  59. }
  60. }