Skip to content
This repository has been archived by the owner on Jun 20, 2024. It is now read-only.

Commit

Permalink
chore: testing skeleton
Browse files Browse the repository at this point in the history
  • Loading branch information
dmitryburov committed Mar 4, 2023
1 parent 4b5aba2 commit 811f5c0
Show file tree
Hide file tree
Showing 5 changed files with 212 additions and 0 deletions.
39 changes: 39 additions & 0 deletions internal/delivery/websocket/client_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
package websocket

import (
"github.com/dmitryburov/go-coinbase-socket/config"
"github.com/dmitryburov/go-coinbase-socket/internal/usecase"
"github.com/dmitryburov/go-coinbase-socket/pkg/exchange"
"github.com/dmitryburov/go-coinbase-socket/pkg/logger"
"reflect"
"testing"
)

func TestNewSocketClient(t *testing.T) {
type args struct {
conn exchange.Manager
uc *usecase.Services
logger logger.Logger
cfg config.ExchangeConfig
}
tests := []struct {
name string
args args
want *client
wantErr bool
}{
{name: testing.CoverMode(), args: args{conn: nil, uc: nil, logger: nil, cfg: config.ExchangeConfig{}}, want: nil, wantErr: true},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
got, err := NewSocketClient(tt.args.conn, tt.args.uc, tt.args.logger, tt.args.cfg)
if (err != nil) != tt.wantErr {
t.Errorf("NewSocketClient() error = %v, wantErr %v", err, tt.wantErr)
return
}
if !reflect.DeepEqual(got, tt.want) {
t.Errorf("NewSocketClient() got = %v, want %v", got, tt.want)
}
})
}
}
57 changes: 57 additions & 0 deletions internal/repository/mysql/exchange_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
package mysql

import (
"context"
"github.com/dmitryburov/go-coinbase-socket/internal/entity"
"github.com/jmoiron/sqlx"
"reflect"
"testing"
)

func TestNewExchangeRepository(t *testing.T) {
type args struct {
db *sqlx.DB
}
tests := []struct {
name string
args args
want *exchangeRepo
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if got := NewExchangeRepository(tt.args.db); !reflect.DeepEqual(got, tt.want) {
t.Errorf("NewExchangeRepository() = %v, want %v", got, tt.want)
}
})
}
}

func Test_exchangeRepo_CreateTick(t *testing.T) {
type fields struct {
db *sqlx.DB
}
type args struct {
ctx context.Context
ticker entity.Ticker
}
tests := []struct {
name string
fields fields
args args
wantErr bool
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
e := &exchangeRepo{
db: tt.fields.db,
}
if err := e.CreateTick(tt.args.ctx, tt.args.ticker); (err != nil) != tt.wantErr {
t.Errorf("CreateTick() error = %v, wantErr %v", err, tt.wantErr)
}
})
}
}
27 changes: 27 additions & 0 deletions internal/repository/repository_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
package repository

import (
"github.com/jmoiron/sqlx"
"reflect"
"testing"
)

func TestNewRepositories(t *testing.T) {
type args struct {
db *sqlx.DB
}
tests := []struct {
name string
args args
want *Repositories
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if got := NewRepositories(tt.args.db); !reflect.DeepEqual(got, tt.want) {
t.Errorf("NewRepositories() = %v, want %v", got, tt.want)
}
})
}
}
61 changes: 61 additions & 0 deletions internal/usecase/exchange_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
package usecase

import (
"context"
"github.com/dmitryburov/go-coinbase-socket/internal/entity"
"github.com/dmitryburov/go-coinbase-socket/internal/repository"
"github.com/dmitryburov/go-coinbase-socket/pkg/logger"
"reflect"
"testing"
)

func TestNewExchangeService(t *testing.T) {
type args struct {
exchange repository.Exchange
logger logger.Logger
}
tests := []struct {
name string
args args
want *exchangeService
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if got := NewExchangeService(tt.args.exchange, tt.args.logger); !reflect.DeepEqual(got, tt.want) {
t.Errorf("NewExchangeService() = %v, want %v", got, tt.want)
}
})
}
}

func Test_exchangeService_Tick(t *testing.T) {
type fields struct {
exchange repository.Exchange
logger logger.Logger
}
type args struct {
ctx context.Context
ch <-chan entity.Ticker
}
tests := []struct {
name string
fields fields
args args
wantErr bool
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
e := &exchangeService{
exchange: tt.fields.exchange,
logger: tt.fields.logger,
}
if err := e.Tick(tt.args.ctx, tt.args.ch); (err != nil) != tt.wantErr {
t.Errorf("Tick() error = %v, wantErr %v", err, tt.wantErr)
}
})
}
}
28 changes: 28 additions & 0 deletions internal/usecase/usecase_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
package usecase

import (
"github.com/dmitryburov/go-coinbase-socket/internal/repository"
"reflect"
"testing"
)

func TestNewUseCase(t *testing.T) {
type args struct {
repos *repository.Repositories
pkg *Packages
}
tests := []struct {
name string
args args
want *Services
}{
// TODO: Add test cases.
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if got := NewUseCase(tt.args.repos, tt.args.pkg); !reflect.DeepEqual(got, tt.want) {
t.Errorf("NewUseCase() = %v, want %v", got, tt.want)
}
})
}
}

0 comments on commit 811f5c0

Please sign in to comment.