github.com/massongit/reviewdog@v0.0.0-20240331071725-4a16675475a8/doghouse/server/ciutil/ciutil_test.go (about) 1 package ciutil 2 3 import ( 4 "net/http" 5 "net/http/httptest" 6 "testing" 7 ) 8 9 func TestIsFromCI(t *testing.T) { 10 r := httptest.NewRequest(http.MethodGet, "/", nil) 11 12 const allowedIP = "67.225.139.254" 13 r.RemoteAddr = allowedIP 14 if !IsFromCI(r) { 15 t.Errorf("IsFromCI(%q) = false, want true", allowedIP) 16 } 17 18 const notAllowedIP = "93.184.216.34" 19 r.RemoteAddr = notAllowedIP 20 if IsFromCI(r) { 21 t.Errorf("IsFromCI(%q) = true, want false", notAllowedIP) 22 } 23 } 24 25 func TestUpdateTravisCIIPAddrs(t *testing.T) { 26 if err := UpdateTravisCIIPAddrs(nil); err != nil { 27 t.Fatal(err) 28 } 29 if len(travisIPAddrs) == 0 { 30 t.Fatal("travisIPAddrs is empty, want some ip addrs") 31 } 32 for addr := range travisIPAddrs { 33 t.Log(addr) 34 } 35 } 36 37 func TestIsFromTravisCI(t *testing.T) { 38 if err := UpdateTravisCIIPAddrs(nil); err != nil { 39 t.Fatal(err) 40 } 41 r := httptest.NewRequest(http.MethodGet, "/", nil) 42 for addr := range travisIPAddrs { 43 r.RemoteAddr = addr 44 if !IsFromTravisCI(r) { 45 t.Errorf("IsIsFromTravisCI(%q) = false, want true", r.RemoteAddr) 46 } 47 } 48 49 const notAllowedIP = "93.184.216.34" 50 r.RemoteAddr = notAllowedIP 51 if IsFromTravisCI(r) { 52 t.Errorf("IsFromTravisCI(%q) = true, want false", notAllowedIP) 53 } 54 } 55 56 func TestIsFromAppveyor(t *testing.T) { 57 r := httptest.NewRequest(http.MethodGet, "/", nil) 58 59 const allowedIP = "67.225.139.254" 60 r.RemoteAddr = allowedIP 61 if !IsFromAppveyor(r) { 62 t.Errorf("IsFromAppveyor(%q) = false, want true", allowedIP) 63 } 64 65 const notAllowedIP = "93.184.216.34" 66 r.RemoteAddr = notAllowedIP 67 if IsFromAppveyor(r) { 68 t.Errorf("IsFromAppveyor(%q) = true, want false", notAllowedIP) 69 } 70 }