github.com/mistwind/reviewdog@v0.0.0-20230322024206-9cfa11856d58/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  }