client_test.go 971 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. package ftp
  2. import (
  3. "bytes"
  4. "io/ioutil"
  5. "testing"
  6. )
  7. const (
  8. testData = "Just some text"
  9. )
  10. func TestConn(t *testing.T) {
  11. c, err := Connect("localhost:21")
  12. if err != nil {
  13. t.Fatal(err)
  14. }
  15. err = c.Login("anonymous", "anonymous")
  16. if err != nil {
  17. t.Fatal(err)
  18. }
  19. err = c.NoOp()
  20. if err != nil {
  21. t.Error(err)
  22. }
  23. data := bytes.NewBufferString(testData)
  24. err = c.Stor("test", data)
  25. if err != nil {
  26. t.Error(err)
  27. }
  28. _, err = c.List(".")
  29. if err != nil {
  30. t.Error(err)
  31. }
  32. err = c.Rename("test", "tset")
  33. if err != nil {
  34. t.Error(err)
  35. }
  36. r, err := c.Retr("tset")
  37. if err != nil {
  38. t.Error(err)
  39. } else {
  40. buf, err := ioutil.ReadAll(r)
  41. if err != nil {
  42. t.Error(err)
  43. }
  44. if string(buf) != testData {
  45. t.Errorf("'%s'", buf)
  46. }
  47. r.Close()
  48. }
  49. err = c.Delete("tset")
  50. if err != nil {
  51. t.Error(err)
  52. }
  53. err = c.MakeDir("mydir")
  54. if err != nil {
  55. t.Error(err)
  56. }
  57. err = c.RemoveDir("mydir")
  58. if err != nil {
  59. t.Error(err)
  60. }
  61. c.Quit()
  62. }