diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 8f2ca2522..064a94661 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -22,13 +22,16 @@ jobs: pull-requests: read # for golangci/golangci-lint-action to fetch pull requests name: Linter runs-on: ubuntu-latest + strategy: + matrix: + go: [1.21] steps: - name: Check out source uses: actions/checkout@v4 - name: Setup uses: actions/setup-go@v5 with: - go-version: '1.22' + go-version: ${{ matrix.go }} cache: false - uses: actions/cache@v4 with: @@ -46,17 +49,120 @@ jobs: skip-cache: true 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.22'] - store-type: - - - - memory - - file + go: [1.21] fix-version: - - + - fix40 + - fix41 - fix42 - fix43 - fix44 @@ -85,14 +191,111 @@ jobs: uses: ruby/setup-ruby@v1 with: ruby-version: '3.0' - - name: Unit test + - name: Start MongoDB + uses: supercharge/mongodb-github-action@1.11.0 + with: + mongodb-replica-set: replicaset + - 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: 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 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: 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: ${{ matrix.store-type }} - run: if [ $FIX_TEST ] && [ $STORE_TYPE ]; then make generate-ci && make build && make $FIX_TEST; fi + STORE_TYPE: memory + ACCEPTANCE_SET: nextexpectedseqnum + run: make generate-ci && make build && make $FIX_TEST diff --git a/.golangci.yml b/.golangci.yml index b414ba22f..18d47327a 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -1,6 +1,12 @@ run: timeout: 10m - skip-dirs: + # deprecated config - + # skip-dirs: + # - gen + # - vendor + +issues: + exclude-dirs: - gen - vendor diff --git a/CHANGELOG.md b/CHANGELOG.md index 3a17b6aff..ee1a6c217 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,56 @@ +## 0.9.6 (September 20, 2024) + +### ENHANCEMENTS +* Allow the clients of acceptor to specify their own tls.Config https://github.com/quickfixgo/quickfix/pull/667 +* Adds NextExpectedSeqNum setting https://github.com/quickfixgo/quickfix/pull/668 + +### BUG FIXES +* Reinit stop sync to prevent deadlock on sequential start/stops https://github.com/quickfixgo/quickfix/pull/669 +* Check logon auth before resetting store https://github.com/quickfixgo/quickfix/pull/670 +* Reverts ToAdmin call sequencing https://github.com/quickfixgo/quickfix/pull/674 + +## 0.9.5 (August 14, 2024) + +### ENHANCEMENTS +* Introduce message iterator to avoid loading all messages into memory at once upon resend request https://github.com/quickfixgo/quickfix/pull/659 +* Only lock fieldmap once during message parsing https://github.com/quickfixgo/quickfix/pull/658 +* Optimize tag value parsing https://github.com/quickfixgo/quickfix/pull/657 +* Use bytes.Count to count the number of message fields https://github.com/quickfixgo/quickfix/pull/655 +* Port config documentation into proper go doc format https://github.com/quickfixgo/quickfix/pull/649 +* Support TLS configuration as raw bytes https://github.com/quickfixgo/quickfix/pull/647 + +### BUG FIXES +* Use the Go generated file convention https://github.com/quickfixgo/quickfix/pull/660 +* Fix stuck call to Dial when calling Stop on the Initiator https://github.com/quickfixgo/quickfix/pull/654 +* Do not increment NextTargetMsgSeqNum for out of sequence Logout and Test Requests https://github.com/quickfixgo/quickfix/pull/645 + +## 0.9.4 (May 29, 2024) + +### ENHANCEMENTS +* Adds log to readLoop just like writeLoop https://github.com/quickfixgo/quickfix/pull/642 + +### BUG FIXES +* Maintain repeating group field order when parsing messages https://github.com/quickfixgo/quickfix/pull/636 + +## 0.9.3 (May 9, 2024) + +### BUG FIXES +* Change filestore.offsets from map[int]msgDef to sync.Map https://github.com/quickfixgo/quickfix/pull/639 +* Unregister sessions on stop https://github.com/quickfixgo/quickfix/pull/637 +* Corrects ResetOnLogon behavior for initiators https://github.com/quickfixgo/quickfix/pull/635 + +### FEATURES +* Add AllowUnknownMessageFields & CheckUserDefinedFields settings as included in QuickFIX/J https://github.com/quickfixgo/quickfix/pull/632 + +## 0.9.2 (April 23, 2024) + +### BUG FIXES +* Prevent message queue blocking in the case of network connection trouble https://github.com/quickfixgo/quickfix/pull/615 https://github.com/quickfixgo/quickfix/pull/628 +* Corrects validation of multiple repeating groups with different fields https://github.com/quickfixgo/quickfix/pull/623 + ## 0.9.1 (April 15, 2024) + +### BUG FIXES * Preserve original body when resending https://github.com/quickfixgo/quickfix/pull/624 ## 0.9.0 (November 13, 2023) diff --git a/Makefile b/Makefile index 9d2f26817..8d3c2c6cc 100644 --- a/Makefile +++ b/Makefile @@ -19,33 +19,49 @@ test: linters-install: @golangci-lint --version >/dev/null 2>&1 || { \ echo "installing linting tools..."; \ - curl -sfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh| sh -s v1.50.1; \ + curl -sfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh| sh -s v1.57.2; \ } lint: linters-install golangci-lint run +# An easy way to run the linter without going through the install process - +# docker run -t --rm -v $(pwd):/app -w /app golangci/golangci-lint:v1.57.2 golangci-lint run -v +# See https://golangci-lint.run/welcome/install/ for more details. + # --------------------------------------------------------------- # Targets related to running acceptance tests - +ifdef STORE_TYPE +STORE := $(STORE_TYPE) +else +STORE := memory +endif + +ifdef ACCEPTANCE_SET +TEST_SET := $(ACCEPTANCE_SET) +else +TEST_SET := server +endif + build-test-srv: - cd _test; go build -o echo_server ./test-server/ + cd _test; go build -v -o echo_server ./test-server/ fix40: - cd _test; ./runat.sh $@.cfg 5001 $(STORE_TYPE) "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_TYPE) "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_TYPE) "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_TYPE) "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_TYPE) "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_TYPE) "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_TYPE) "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_TYPE) "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) diff --git a/_test/Reflector.rb b/_test/Reflector.rb index fe9535f39..3e86af7a1 100644 --- a/_test/Reflector.rb +++ b/_test/Reflector.rb @@ -61,6 +61,8 @@ def processLine(lineNum, line, body, cid) connectAction(cid) elsif body == "DISCONNECT" disconnectAction(cid) + elsif body.index("SET_SESSION") == 0 + setSeqnum(body) else raise "Syntax error: " + body end diff --git a/_test/ReflectorClient.rb b/_test/ReflectorClient.rb index acc8acc72..148867b40 100644 --- a/_test/ReflectorClient.rb +++ b/_test/ReflectorClient.rb @@ -19,6 +19,8 @@ require 'Reflector' require 'FixParser' require "socket" +require 'uri' +require 'net/http' class ReflectorClient @@ -62,6 +64,12 @@ def @reflector.disconnectAction(cid) @sockets.delete(cid) @parsers.delete(cid) end + + def @reflector.setSeqnum(body) + left_array = body.split(" ") + uri = URI('http://localhost:8095/seqnum?SESSION='+left_array[1]+'&'+left_array[2]) + Net::HTTP.get_response(uri) + end def @reflector.waitConnectAction(cid) end diff --git a/_test/cfg/lastseqnumprocessed/fix42.cfg b/_test/cfg/lastseqnumprocessed/fix42.cfg new file mode 100644 index 000000000..1ed8e572a --- /dev/null +++ b/_test/cfg/lastseqnumprocessed/fix42.cfg @@ -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 \ No newline at end of file diff --git a/_test/cfg/lastseqnumprocessed/fix43.cfg b/_test/cfg/lastseqnumprocessed/fix43.cfg new file mode 100644 index 000000000..4675e6b5d --- /dev/null +++ b/_test/cfg/lastseqnumprocessed/fix43.cfg @@ -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 \ No newline at end of file diff --git a/_test/cfg/lastseqnumprocessed/fix44.cfg b/_test/cfg/lastseqnumprocessed/fix44.cfg new file mode 100644 index 000000000..0f3cc8c24 --- /dev/null +++ b/_test/cfg/lastseqnumprocessed/fix44.cfg @@ -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 \ No newline at end of file diff --git a/_test/cfg/lastseqnumprocessed/fix50.cfg b/_test/cfg/lastseqnumprocessed/fix50.cfg new file mode 100644 index 000000000..f3c7c37ad --- /dev/null +++ b/_test/cfg/lastseqnumprocessed/fix50.cfg @@ -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 \ No newline at end of file diff --git a/_test/cfg/lastseqnumprocessed/fix50sp1.cfg b/_test/cfg/lastseqnumprocessed/fix50sp1.cfg new file mode 100644 index 000000000..4757e9e93 --- /dev/null +++ b/_test/cfg/lastseqnumprocessed/fix50sp1.cfg @@ -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 \ No newline at end of file diff --git a/_test/cfg/lastseqnumprocessed/fix50sp2.cfg b/_test/cfg/lastseqnumprocessed/fix50sp2.cfg new file mode 100644 index 000000000..1ae2c09b1 --- /dev/null +++ b/_test/cfg/lastseqnumprocessed/fix50sp2.cfg @@ -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 \ No newline at end of file diff --git a/_test/cfg/nextexpectedseqnum/fix44.cfg b/_test/cfg/nextexpectedseqnum/fix44.cfg new file mode 100644 index 000000000..b31219439 --- /dev/null +++ b/_test/cfg/nextexpectedseqnum/fix44.cfg @@ -0,0 +1,10 @@ +[DEFAULT] +SocketAcceptPort=5005 +SenderCompID=ISLD +TargetCompID=TW +FileLogPath=tmp + +[SESSION] +BeginString=FIX.4.4 +DataDictionary=../spec/FIX44.xml +EnableNextExpectedMsgSeqNum=Y diff --git a/_test/cfg/nextexpectedseqnum/fix50.cfg b/_test/cfg/nextexpectedseqnum/fix50.cfg new file mode 100644 index 000000000..c60f608e2 --- /dev/null +++ b/_test/cfg/nextexpectedseqnum/fix50.cfg @@ -0,0 +1,12 @@ +[DEFAULT] +SocketAcceptPort=5006 +SenderCompID=ISLD +TargetCompID=TW +FileLogPath=tmp + +[SESSION] +BeginString=FIXT.1.1 +DefaultApplVerID=FIX.5.0 +TransportDataDictionary=../spec/FIXT11.xml +AppDataDictionary=../spec/FIX50.xml +EnableNextExpectedMsgSeqNum=Y diff --git a/_test/cfg/nextexpectedseqnum/fix50sp1.cfg b/_test/cfg/nextexpectedseqnum/fix50sp1.cfg new file mode 100644 index 000000000..f1ec2103b --- /dev/null +++ b/_test/cfg/nextexpectedseqnum/fix50sp1.cfg @@ -0,0 +1,12 @@ +[DEFAULT] +SocketAcceptPort=5007 +SenderCompID=ISLD +TargetCompID=TW +FileLogPath=tmp + +[SESSION] +BeginString=FIXT.1.1 +DefaultApplVerID=FIX.5.0SP1 +TransportDataDictionary=../spec/FIXT11.xml +AppDataDictionary=../spec/FIX50SP1.xml +EnableNextExpectedMsgSeqNum=Y diff --git a/_test/cfg/nextexpectedseqnum/fix50sp2.cfg b/_test/cfg/nextexpectedseqnum/fix50sp2.cfg new file mode 100644 index 000000000..4a1db4eef --- /dev/null +++ b/_test/cfg/nextexpectedseqnum/fix50sp2.cfg @@ -0,0 +1,12 @@ +[DEFAULT] +SocketAcceptPort=5008 +SenderCompID=ISLD +TargetCompID=TW +FileLogPath=tmp + +[SESSION] +BeginString=FIXT.1.1 +DefaultApplVerID=FIX.5.0SP2 +TransportDataDictionary=../spec/FIXT11.xml +AppDataDictionary=../spec/FIX50SP2.xml +EnableNextExpectedMsgSeqNum=Y diff --git a/_test/cfg/resendreqchunksize/fix40.cfg b/_test/cfg/resendreqchunksize/fix40.cfg new file mode 100644 index 000000000..a2b8210f2 --- /dev/null +++ b/_test/cfg/resendreqchunksize/fix40.cfg @@ -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 \ No newline at end of file diff --git a/_test/cfg/resendreqchunksize/fix41.cfg b/_test/cfg/resendreqchunksize/fix41.cfg new file mode 100644 index 000000000..07ad38aa4 --- /dev/null +++ b/_test/cfg/resendreqchunksize/fix41.cfg @@ -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 \ No newline at end of file diff --git a/_test/fix42.cfg b/_test/cfg/resendreqchunksize/fix42.cfg similarity index 87% rename from _test/fix42.cfg rename to _test/cfg/resendreqchunksize/fix42.cfg index 3bbfe829f..b6bdb2318 100644 --- a/_test/fix42.cfg +++ b/_test/cfg/resendreqchunksize/fix42.cfg @@ -8,3 +8,4 @@ FileLogPath=tmp [SESSION] BeginString=FIX.4.2 DataDictionary=../spec/FIX42.xml +ResendRequestChunkSize=5 \ No newline at end of file diff --git a/_test/cfg/resendreqchunksize/fix43.cfg b/_test/cfg/resendreqchunksize/fix43.cfg new file mode 100644 index 000000000..875ac7d1d --- /dev/null +++ b/_test/cfg/resendreqchunksize/fix43.cfg @@ -0,0 +1,11 @@ +[DEFAULT] +SocketAcceptPort=5004 +SenderCompID=ISLD +TargetCompID=TW +ResetOnLogon=Y +FileLogPath=tmp + +[SESSION] +BeginString=FIX.4.3 +DataDictionary=../spec/FIX43.xml +ResendRequestChunkSize=5 \ No newline at end of file diff --git a/_test/cfg/resendreqchunksize/fix44.cfg b/_test/cfg/resendreqchunksize/fix44.cfg new file mode 100644 index 000000000..ad88660aa --- /dev/null +++ b/_test/cfg/resendreqchunksize/fix44.cfg @@ -0,0 +1,11 @@ +[DEFAULT] +SocketAcceptPort=5005 +SenderCompID=ISLD +TargetCompID=TW +ResetOnLogon=Y +FileLogPath=tmp + +[SESSION] +BeginString=FIX.4.4 +DataDictionary=../spec/FIX44.xml +ResendRequestChunkSize=5 \ No newline at end of file diff --git a/_test/cfg/resendreqchunksize/fix50.cfg b/_test/cfg/resendreqchunksize/fix50.cfg new file mode 100644 index 000000000..516096b28 --- /dev/null +++ b/_test/cfg/resendreqchunksize/fix50.cfg @@ -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 +ResendRequestChunkSize=5 \ No newline at end of file diff --git a/_test/cfg/resendreqchunksize/fix50sp1.cfg b/_test/cfg/resendreqchunksize/fix50sp1.cfg new file mode 100644 index 000000000..b89038936 --- /dev/null +++ b/_test/cfg/resendreqchunksize/fix50sp1.cfg @@ -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 +ResendRequestChunkSize=5 \ No newline at end of file diff --git a/_test/cfg/resendreqchunksize/fix50sp2.cfg b/_test/cfg/resendreqchunksize/fix50sp2.cfg new file mode 100644 index 000000000..5bbaed9a3 --- /dev/null +++ b/_test/cfg/resendreqchunksize/fix50sp2.cfg @@ -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 +ResendRequestChunkSize=5 \ No newline at end of file diff --git a/_test/fix40.cfg b/_test/cfg/server/fix40.cfg similarity index 100% rename from _test/fix40.cfg rename to _test/cfg/server/fix40.cfg diff --git a/_test/fix41.cfg b/_test/cfg/server/fix41.cfg similarity index 100% rename from _test/fix41.cfg rename to _test/cfg/server/fix41.cfg diff --git a/_test/cfg/server/fix42.cfg b/_test/cfg/server/fix42.cfg new file mode 100644 index 000000000..b81521c27 --- /dev/null +++ b/_test/cfg/server/fix42.cfg @@ -0,0 +1,10 @@ +[DEFAULT] +SocketAcceptPort=5003 +SenderCompID=ISLD +TargetCompID=TW +ResetOnLogon=Y +FileLogPath=tmp + +[SESSION] +BeginString=FIX.4.2 +DataDictionary=../spec/FIX42.xml \ No newline at end of file diff --git a/_test/fix43.cfg b/_test/cfg/server/fix43.cfg similarity index 100% rename from _test/fix43.cfg rename to _test/cfg/server/fix43.cfg diff --git a/_test/fix44.cfg b/_test/cfg/server/fix44.cfg similarity index 100% rename from _test/fix44.cfg rename to _test/cfg/server/fix44.cfg diff --git a/_test/fix50.cfg b/_test/cfg/server/fix50.cfg similarity index 100% rename from _test/fix50.cfg rename to _test/cfg/server/fix50.cfg diff --git a/_test/fix50sp1.cfg b/_test/cfg/server/fix50sp1.cfg similarity index 100% rename from _test/fix50sp1.cfg rename to _test/cfg/server/fix50sp1.cfg diff --git a/_test/fix50sp2.cfg b/_test/cfg/server/fix50sp2.cfg similarity index 100% rename from _test/fix50sp2.cfg rename to _test/cfg/server/fix50sp2.cfg diff --git a/_test/definitions/lastseqnumprocessed/fix42/LastProcessedMsgSeqNum.def b/_test/definitions/lastseqnumprocessed/fix42/LastProcessedMsgSeqNum.def new file mode 100644 index 000000000..1486575da --- /dev/null +++ b/_test/definitions/lastseqnumprocessed/fix42/LastProcessedMsgSeqNum.def @@ -0,0 +1,21 @@ +iCONNECT + +I8=FIX.4.235=A34=149=TW52=