Go client for the Write.as API https://developers.write.as
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

74 рядки
1.4 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. OwnedPostParams: OwnedPostParams{
  22. ID: p.ID,
  23. Token: token,
  24. },
  25. Content: "Now it's been updated!",
  26. })
  27. if err != nil {
  28. t.Errorf("Post update failed: %v", err)
  29. return
  30. }
  31. t.Logf("Post updated: %+v", p)
  32. // Delete post
  33. err = wac.DeletePost(&PostParams{
  34. OwnedPostParams: OwnedPostParams{
  35. ID: p.ID,
  36. Token: token,
  37. },
  38. })
  39. if err != nil {
  40. t.Errorf("Post delete failed: %v", err)
  41. return
  42. }
  43. t.Logf("Post deleted!")
  44. }
  45. func TestGetPost(t *testing.T) {
  46. wac := NewClient()
  47. res, err := wac.GetPost("zekk5r9apum6p")
  48. if err != nil {
  49. t.Errorf("Unexpected fetch results: %+v, err: %v\n", res, err)
  50. } else {
  51. t.Logf("Post: %+v", res)
  52. if res.Content != "This is a post." {
  53. t.Errorf("Unexpected fetch results: %+v\n", res)
  54. }
  55. }
  56. res, err = wac.GetPost("3psnxyhqxy3hq")
  57. if err != nil {
  58. t.Errorf("Unexpected fetch results: %+v, err: %v\n", res, err)
  59. } else {
  60. if !strings.HasPrefix(res.Content, " Write.as Blog") {
  61. t.Errorf("Unexpected fetch results: %+v\n", res)
  62. }
  63. }
  64. }