123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136 |
- package client_anonym
- import (
- "os"
- "testing"
- "git.p78su.freemyip.com/svi/gostore/pkg/mock"
- "git.p78su.freemyip.com/svi/gostore/pkg/types"
- )
- const (
- strUrl = "http://localhost:18080/anonym/time"
- )
- type tester struct {
- t *testing.T
- serv types.IService
- client *ClientAnonym
- }
- func TestClientAnonym(t *testing.T) {
- fnClear := func() {
- _ = os.RemoveAll("./store")
- }
- fnClear()
- defer fnClear()
- sf := &tester{
- t: t,
- }
- sf.create()
- sf.ping()
- sf.close()
- }
- // Закрытие сервиса
- func (sf *tester) close() {
- sf.t.Log("close")
- sf.serv.CancelApp()
- sf.serv.Wg().Wait()
- sf.client.close()
- }
- // Пингует сервер
- func (sf *tester) ping() {
- sf.t.Log("ping")
- sf.pingBad1()
- sf.pingBad2()
- sf.pingGood1()
- }
- func (sf *tester) pingGood1() {
- sf.t.Log("pingGood1")
- err := sf.client.Ping()
- if err != nil {
- sf.t.Fatalf("pingGood1(): err=\n\t%v", err)
- }
- }
- // Нельзя достучаться до сервиса
- func (sf *tester) pingBad2() {
- sf.t.Log("pingBad2")
- sf.client.urlPing = "https://google.com/time"
- err := sf.client.Ping()
- if err == nil {
- sf.t.Fatalf("pingBad2(): err==nil")
- }
- sf.client.urlPing = strUrl
- }
- // Клиент закрыт для запроса
- func (sf *tester) pingBad1() {
- sf.t.Log("pingBad1")
- sf.client.isWork = false
- err := sf.client.Ping()
- if err == nil {
- sf.t.Fatalf("pingBad1(): err==nil")
- }
- sf.client.isWork = true
- }
- // Создание клиента
- func (sf *tester) create() {
- sf.t.Log("create")
- sf.createBad1()
- sf.createBad2()
- sf.createGood1()
- }
- func (sf *tester) createGood1() {
- sf.t.Log("createGood1")
- var err error
- sf.client, err = NewClientAnonym(sf.serv, strUrl)
- if err != nil {
- sf.t.Fatalf("createGood1(): err=\n\t%v", err)
- }
- if sf.client == nil {
- sf.t.Fatalf("createGood1(): client==nil")
- }
- }
- // Нет адреса хранилища
- func (sf *tester) createBad2() {
- sf.t.Log("createBad2")
- err := os.Unsetenv("STORE_HTTP_PORT")
- if err != nil {
- sf.t.Fatalf("createBad2(): err=\n\t%v", err)
- }
- err = os.Setenv("STORE_HTTP_PORT", "18080")
- if err != nil {
- sf.t.Fatalf("createBad2(): err=\n\t%v", err)
- }
- sf.serv, err = mock.MakeMock()
- if err != nil {
- sf.t.Fatalf("createBad2(): err=\n\t%v", err)
- }
- go sf.serv.Run()
- client, err := NewClientAnonym(sf.serv, "")
- if err == nil {
- sf.t.Fatalf("createBad2(): err==nil")
- }
- if client != nil {
- sf.t.Fatalf("createBad2(): client!=nil")
- }
- }
- // Нет объекта сервиса
- func (sf *tester) createBad1() {
- sf.t.Log("createBad1")
- client, err := NewClientAnonym(nil, strUrl)
- if err == nil {
- sf.t.Fatalf("createBad1(): err==nil")
- }
- if client != nil {
- sf.t.Fatalf("createBad1(): client!=nil")
- }
- }
|