noolite-web_test.go 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. package main
  2. import (
  3. "testing"
  4. "github.com/dedkovd/noolite"
  5. )
  6. func TestSendCommand(t *testing.T) {
  7. n, err := noolite.DefaultNooliteAdapter()
  8. if err != nil {
  9. t.Error(err)
  10. }
  11. defer n.Close()
  12. err = sendCommand(n, "on", 7, 0, 0, 0, 0)
  13. if err != nil {
  14. t.Error(err)
  15. }
  16. err = sendCommand(n, "", 0, 0, 0, 0, 0)
  17. if err == nil {
  18. t.Error("Command was not set expected")
  19. }
  20. err = sendCommand(n, "on", -1, 0, 0, 0, 0)
  21. if err == nil {
  22. t.Error("Channel was not set expected")
  23. }
  24. err = sendCommand(n, "set", 7, 0, 0, 0, 0)
  25. if err == nil {
  26. t.Error("Need some value expected")
  27. }
  28. err = sendCommand(n, "qwerty", 2, 0, 0, 0, 0)
  29. if err == nil {
  30. t.Error("Command not found expected")
  31. }
  32. }
  33. func TestParseParams(t *testing.T) {
  34. cmd, ch, v, r, g, b := parseParams("/set/7/45")
  35. if cmd != "set" {
  36. t.Error("Command SET exptected")
  37. }
  38. if ch != 7 {
  39. t.Error("Channel 7 expected")
  40. }
  41. if v != 45 {
  42. t.Error("Value 45 expected")
  43. }
  44. if r != 0 || g != 0 || b != 0 {
  45. t.Error("RGB 000 expected")
  46. }
  47. cmd, ch, v, r, g, b = parseParams("")
  48. if cmd != "" || ch != -1 || v != 0 || r != 0 || g != 0 || b != 0 {
  49. t.Error("Default values expected")
  50. }
  51. }