sort_test.go 716 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. package nat
  2. import (
  3. "fmt"
  4. "testing"
  5. )
  6. func TestSortUniquePorts(t *testing.T) {
  7. ports := []Port{
  8. Port("6379/tcp"),
  9. Port("22/tcp"),
  10. }
  11. Sort(ports, func(ip, jp Port) bool {
  12. return ip.Int() < jp.Int() || (ip.Int() == jp.Int() && ip.Proto() == "tcp")
  13. })
  14. first := ports[0]
  15. if fmt.Sprint(first) != "22/tcp" {
  16. t.Log(fmt.Sprint(first))
  17. t.Fail()
  18. }
  19. }
  20. func TestSortSamePortWithDifferentProto(t *testing.T) {
  21. ports := []Port{
  22. Port("8888/tcp"),
  23. Port("8888/udp"),
  24. Port("6379/tcp"),
  25. Port("6379/udp"),
  26. }
  27. Sort(ports, func(ip, jp Port) bool {
  28. return ip.Int() < jp.Int() || (ip.Int() == jp.Int() && ip.Proto() == "tcp")
  29. })
  30. first := ports[0]
  31. if fmt.Sprint(first) != "6379/tcp" {
  32. t.Fail()
  33. }
  34. }