Skip to content

Adds resendreqchunksize and lastseqnumprocessed test suites, refactors test runners #650

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jul 3, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
218 changes: 205 additions & 13 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -31,18 +31,118 @@ jobs:
version: v1.57.2

build:
name: build
name: Build Source
runs-on: ubuntu-latest
strategy:
matrix:
go: [1.21]
steps:
- name: Setup
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go }}
- name: Check out source
uses: actions/checkout@v2
- name: Build
run: make build-src

unittest:
name: Unit Tests
runs-on: ubuntu-latest
strategy:
matrix:
go: [1.21]
steps:
- name: Setup
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go }}
- name: Check out source
uses: actions/checkout@v2
- name: Start MongoDB
uses: supercharge/mongodb-github-action@1.8.0
with:
mongodb-replica-set: replicaset
- name: Unit test
env:
MONGODB_TEST_CXN: mongodb://localhost:27017
run: make test-ci

servermem:
name: Server MemoryStore Suite
runs-on: ubuntu-latest
strategy:
matrix:
go: [1.21]
fix-version:
- fix40
- fix41
- fix42
- fix43
- fix44
- fix50
- fix50sp1
- fix50sp2
steps:
- name: Setup
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go }}
- name: Check out source
uses: actions/checkout@v2
- name: Install ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.0'
- name: Acceptance test
env:
GO111MODULE: on
FIX_TEST: ${{ matrix.fix-version }}
STORE_TYPE: memory
ACCEPTANCE_SET: server
run: make generate-ci && make build && make $FIX_TEST

serverfile:
name: Server FileStore Suite
runs-on: ubuntu-latest
strategy:
matrix:
go: [1.21]
fix-version:
- fix40
- fix41
- fix42
- fix43
- fix44
- fix50
- fix50sp1
- fix50sp2
steps:
- name: Setup
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go }}
- name: Check out source
uses: actions/checkout@v2
- name: Install ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.0'
- name: Acceptance test
env:
GO111MODULE: on
FIX_TEST: ${{ matrix.fix-version }}
STORE_TYPE: file
ACCEPTANCE_SET: server
run: make generate-ci && make build && make $FIX_TEST

servermongo:
name: Server MongoStore Suite
runs-on: ubuntu-latest
strategy:
matrix:
go: [1.21]
store-type:
-
- memory
- file
- mongo
fix-version:
-
- fix40
- fix41
- fix42
Expand All @@ -66,15 +166,107 @@ jobs:
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.0'
- name: Unit test
- name: Acceptance test
env:
GO111MODULE: on
MONGODB_TEST_CXN: mongodb://localhost:27017
FIX_TEST: ${{ matrix.fix-version }}
STORE_TYPE: mongo
ACCEPTANCE_SET: server
run: make generate-ci && make build && make $FIX_TEST

resendreqchunksize:
name: ResendRequestChunkSize Suite
runs-on: ubuntu-latest
strategy:
matrix:
go: [1.21]
fix-version:
- fix40
- fix41
- fix42
- fix43
- fix44
- fix50
- fix50sp1
- fix50sp2
steps:
- name: Setup
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go }}
- name: Check out source
uses: actions/checkout@v2
- name: Install ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.0'
- name: Acceptance test
env:
GO111MODULE: on
FIX_TEST: ${{ matrix.fix-version }}
STORE_TYPE: ${{ matrix.store-type }}
run: if [ -z $FIX_TEST ] && [ -z $STORE_TYPE ]; then make build-src && make test-ci; fi
STORE_TYPE: memory
ACCEPTANCE_SET: resendreqchunksize
run: make generate-ci && make build && make $FIX_TEST

lastseqnumprocessed:
name: LastSeqNumProcessed Suite
runs-on: ubuntu-latest
strategy:
matrix:
go: [1.21]
fix-version:
- fix42
- fix43
- fix44
- fix50
- fix50sp1
- fix50sp2
steps:
- name: Setup
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go }}
- name: Check out source
uses: actions/checkout@v2
- name: Install ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.0'
- name: Acceptance test
env:
GO111MODULE: on
MONGODB_TEST_CXN: mongodb://localhost:27017
FIX_TEST: ${{ matrix.fix-version }}
STORE_TYPE: ${{ matrix.store-type }}
run: if [ $FIX_TEST ] && [ $STORE_TYPE ]; then make generate-ci && make build && make $FIX_TEST; fi
STORE_TYPE: memory
ACCEPTANCE_SET: lastseqnumprocessed
run: make generate-ci && make build && make $FIX_TEST

# nextexpectedseqnum:
# name: NextExpectedSeqNum Suite
# runs-on: ubuntu-latest
# strategy:
# matrix:
# go: [1.21]
# fix-version:
# - fix44
# - fix50
# - fix50sp1
# - fix50sp2
# steps:
# - name: Setup
# uses: actions/setup-go@v2
# with:
# go-version: ${{ matrix.go }}
# - name: Check out source
# uses: actions/checkout@v2
# - name: Install ruby
# uses: ruby/setup-ruby@v1
# with:
# ruby-version: '3.0'
# - name: Acceptance test
# env:
# GO111MODULE: on
# FIX_TEST: ${{ matrix.fix-version }}
# STORE_TYPE: memory
# ACCEPTANCE_SET: nextexpectedseqnum
# run: make generate-ci && make build && make $FIX_TEST
22 changes: 14 additions & 8 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -38,24 +38,30 @@ else
STORE := memory
endif

ifdef ACCEPTANCE_SET
TEST_SET := $(ACCEPTANCE_SET)
else
TEST_SET := server
endif

build-test-srv:
cd _test; go build -v -o echo_server ./test-server/
fix40:
cd _test; ./runat.sh $@.cfg 5001 $(STORE) "definitions/server/$@/*.def"
cd _test; ./runat.sh cfg/$(TEST_SET)/$@.cfg 5001 $(STORE) "definitions/$(TEST_SET)/$@/*.def"
fix41:
cd _test; ./runat.sh $@.cfg 5002 $(STORE) "definitions/server/$@/*.def"
cd _test; ./runat.sh cfg/$(TEST_SET)/$@.cfg 5002 $(STORE) "definitions/$(TEST_SET)/$@/*.def"
fix42:
cd _test; ./runat.sh $@.cfg 5003 $(STORE) "definitions/server/$@/*.def"
cd _test; ./runat.sh cfg/$(TEST_SET)/$@.cfg 5003 $(STORE) "definitions/$(TEST_SET)/$@/*.def"
fix43:
cd _test; ./runat.sh $@.cfg 5004 $(STORE) "definitions/server/$@/*.def"
cd _test; ./runat.sh cfg/$(TEST_SET)/$@.cfg 5004 $(STORE) "definitions/$(TEST_SET)/$@/*.def"
fix44:
cd _test; ./runat.sh $@.cfg 5005 $(STORE) "definitions/server/$@/*.def"
cd _test; ./runat.sh cfg/$(TEST_SET)/$@.cfg 5005 $(STORE) "definitions/$(TEST_SET)/$@/*.def"
fix50:
cd _test; ./runat.sh $@.cfg 5006 $(STORE) "definitions/server/$@/*.def"
cd _test; ./runat.sh cfg/$(TEST_SET)/$@.cfg 5006 $(STORE) "definitions/$(TEST_SET)/$@/*.def"
fix50sp1:
cd _test; ./runat.sh $@.cfg 5007 $(STORE) "definitions/server/$@/*.def"
cd _test; ./runat.sh cfg/$(TEST_SET)/$@.cfg 5007 $(STORE) "definitions/$(TEST_SET)/$@/*.def"
fix50sp2:
cd _test; ./runat.sh $@.cfg 5008 $(STORE) "definitions/server/$@/*.def"
cd _test; ./runat.sh cfg/$(TEST_SET)/$@.cfg 5008 $(STORE) "definitions/$(TEST_SET)/$@/*.def"

ACCEPT_SUITE=fix40 fix41 fix42 fix43 fix44 fix50 fix50sp1 fix50sp2
accept: $(ACCEPT_SUITE)
Expand Down
11 changes: 11 additions & 0 deletions _test/cfg/lastseqnumprocessed/fix42.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
[DEFAULT]
SocketAcceptPort=5003
SenderCompID=ISLD
TargetCompID=TW
ResetOnLogon=Y
FileLogPath=tmp

[SESSION]
BeginString=FIX.4.2
DataDictionary=../spec/FIX42.xml
EnableLastMsgSeqNumProcessed=Y
11 changes: 11 additions & 0 deletions _test/cfg/lastseqnumprocessed/fix43.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
[DEFAULT]
SocketAcceptPort=5004
SenderCompID=ISLD
TargetCompID=TW
ResetOnLogon=Y
FileLogPath=tmp

[SESSION]
BeginString=FIX.4.3
DataDictionary=../spec/FIX43.xml
EnableLastMsgSeqNumProcessed=Y
11 changes: 11 additions & 0 deletions _test/cfg/lastseqnumprocessed/fix44.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
[DEFAULT]
SocketAcceptPort=5005
SenderCompID=ISLD
TargetCompID=TW
ResetOnLogon=Y
FileLogPath=tmp

[SESSION]
BeginString=FIX.4.4
DataDictionary=../spec/FIX44.xml
EnableLastMsgSeqNumProcessed=Y
14 changes: 14 additions & 0 deletions _test/cfg/lastseqnumprocessed/fix50.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
[DEFAULT]
SocketAcceptPort=5006
SenderCompID=ISLD
TargetCompID=TW
ResetOnLogon=Y
FileLogPath=tmp

[SESSION]
BeginString=FIXT.1.1
SessionQualifier=FIX50
DefaultApplVerID=FIX.5.0
TransportDataDictionary=../spec/FIXT11.xml
AppDataDictionary=../spec/FIX50.xml
EnableLastMsgSeqNumProcessed=Y
14 changes: 14 additions & 0 deletions _test/cfg/lastseqnumprocessed/fix50sp1.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
[DEFAULT]
SocketAcceptPort=5007
SenderCompID=ISLD
TargetCompID=TW
ResetOnLogon=Y
FileLogPath=tmp

[SESSION]
BeginString=FIXT.1.1
SessionQualifier=FIX50SP1
DefaultApplVerID=FIX.5.0SP1
TransportDataDictionary=../spec/FIXT11.xml
AppDataDictionary=../spec/FIX50SP1.xml
EnableLastMsgSeqNumProcessed=Y
14 changes: 14 additions & 0 deletions _test/cfg/lastseqnumprocessed/fix50sp2.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
[DEFAULT]
SocketAcceptPort=5008
SenderCompID=ISLD
TargetCompID=TW
ResetOnLogon=Y
FileLogPath=tmp

[SESSION]
BeginString=FIXT.1.1
SessionQualifier=FIX50SP2
DefaultApplVerID=FIX.5.0SP2
TransportDataDictionary=../spec/FIXT11.xml
AppDataDictionary=../spec/FIX50SP2.xml
EnableLastMsgSeqNumProcessed=Y
11 changes: 11 additions & 0 deletions _test/cfg/resendreqchunksize/fix40.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
[DEFAULT]
SocketAcceptPort=5001
SenderCompID=ISLD
TargetCompID=TW
ResetOnLogon=Y
FileLogPath=tmp

[SESSION]
BeginString=FIX.4.0
DataDictionary=../spec/FIX40.xml
ResendRequestChunkSize=5
11 changes: 11 additions & 0 deletions _test/cfg/resendreqchunksize/fix41.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
[DEFAULT]
SocketAcceptPort=5002
SenderCompID=ISLD
TargetCompID=TW
ResetOnLogon=Y
FileLogPath=tmp

[SESSION]
BeginString=FIX.4.1
DataDictionary=../spec/FIX41.xml
ResendRequestChunkSize=5
1 change: 1 addition & 0 deletions _test/fix42.cfg → _test/cfg/resendreqchunksize/fix42.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,4 @@ FileLogPath=tmp
[SESSION]
BeginString=FIX.4.2
DataDictionary=../spec/FIX42.xml
ResendRequestChunkSize=5
Loading
Loading