github.com/Be-MobileNV/viper@v1.0.2-0.20190415120027-e0a6cbb1bd49/remote/remote_test.go (about)

     1  // +build integration
     2  
     3  package remote
     4  
     5  import (
     6  	"fmt"
     7  	"testing"
     8  )
     9  
    10  type TestRemoteProvider struct {
    11  	provider      string
    12  	endpoint      string
    13  	path          string
    14  	secretKeyring string
    15  	username      string
    16  	password      string
    17  }
    18  
    19  func (rp TestRemoteProvider) Provider() string {
    20  	return rp.provider
    21  }
    22  
    23  func (rp TestRemoteProvider) Endpoint() string {
    24  	return rp.endpoint
    25  }
    26  
    27  func (rp TestRemoteProvider) Path() string {
    28  	return rp.path
    29  }
    30  
    31  func (rp TestRemoteProvider) SecretKeyring() string {
    32  	return rp.secretKeyring
    33  }
    34  
    35  func (rp TestRemoteProvider) Username() string {
    36  	return rp.username
    37  }
    38  
    39  func (rp TestRemoteProvider) Password() string {
    40  	return rp.password
    41  }
    42  
    43  func TestGet(t *testing.T) {
    44  	request := TestRemoteProvider{
    45  		endpoint: "http://127.0.0.1:2379",
    46  		path:     "test",
    47  	}
    48  	w := &remoteConfigProvider{}
    49  	result, err := w.Get(request)
    50  	if err != nil {
    51  		t.Log(err)
    52  		t.FailNow()
    53  	}
    54  	fmt.Println(result)
    55  }
    56  
    57  func TestWatch(t *testing.T) {
    58  	request := TestRemoteProvider{
    59  		endpoint: "http://127.0.0.1:2379",
    60  		path:     "test",
    61  	}
    62  	w := &remoteConfigProvider{}
    63  	result, err := w.Watch(request)
    64  	if err != nil {
    65  		t.Log(err)
    66  		t.FailNow()
    67  	}
    68  	fmt.Println(result)
    69  }
    70  
    71  func TestWatchChannel(t *testing.T) {
    72  	request := TestRemoteProvider{
    73  		endpoint: "http://127.0.0.1:2379",
    74  		path:     "test",
    75  	}
    76  	w := &remoteConfigProvider{}
    77  	result, _, err := w.WatchChannel(request)
    78  	if err != nil {
    79  		t.Log(err)
    80  		t.FailNow()
    81  	}
    82  	for i := 0; i < 3; i++ {
    83  		<-result
    84  	}
    85  
    86  	fmt.Println(result)
    87  }