From 9fcffe375adeb0b86bd2ca33b876f5dc5069b0b1 Mon Sep 17 00:00:00 2001 From: Henrik Hautakoski Date: Tue, 25 Oct 2022 17:42:46 +0200 Subject: [PATCH] src/api/eosio_v2.go: Adding EosioV2Factory function --- src/api/eosio_v2.go | 4 ++++ src/api/eosio_v2_test.go | 16 ++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/src/api/eosio_v2.go b/src/api/eosio_v2.go index 196d314..f72d390 100644 --- a/src/api/eosio_v2.go +++ b/src/api/eosio_v2.go @@ -13,6 +13,10 @@ type EosioV2 struct { offset int64 } +func EosioV2Factory(args ApiArguments) ApiInterface { + return NewEosioV2(args.Url, args.Host, int64(args.NumBlocks)) +} + func NewEosioV2(url string, host string, offset int64) EosioV2 { api := EosioV2{ diff --git a/src/api/eosio_v2_test.go b/src/api/eosio_v2_test.go index b59be29..ee40188 100644 --- a/src/api/eosio_v2_test.go +++ b/src/api/eosio_v2_test.go @@ -9,6 +9,22 @@ import ( "github.com/eosswedenorg-go/haproxy/agentcheck" ) +func TestEosioV2Factory(t *testing.T) { + + api := EosioV2Factory(ApiArguments{ + Url: "https://api.v2.example.com", + Host: "host.example.com", + NumBlocks: 120, + }) + + expected := NewEosioV2("https://api.v2.example.com", "host.example.com", 120) + + assert.IsType(t, expected, api) + assert.Equal(t, expected.client.Url, api.(EosioV2).client.Url) + assert.Equal(t, expected.client.Host, api.(EosioV2).client.Host) + assert.Equal(t, expected.offset, api.(EosioV2).offset) +} + func TestEosioV2LogInfo(t *testing.T) { api := NewEosioV2("https://api.v2.example.com", "host.example.com", 120)