QuickFIX/n implements the FIX protocol on .NET.
C# Ruby Batchfile XSLT PowerShell HTML
Clone or download
Pull request Compare This branch is 1068 commits ahead, 1 commit behind kennystone:master.
gbirchmeier Merge pull request #487 from gbirchmeier/master
release note for previous commit
Latest commit 1ead7dd Jun 13, 2018
Permalink
Failed to load latest commit information.
AcceptanceTest added x64 support in solution & project files Apr 30, 2018
Examples added x64 support in solution & project files Apr 30, 2018
Messages added x64 support in solution & project files Apr 30, 2018
QuickFIXn Merge pull request #486 from gbirchmeier/master Jun 13, 2018
UnitTests added x64 support in solution & project files Apr 30, 2018
config WIP: release script Nov 9, 2011
generator Step 2: Remove message sources from the QuickFIXn folder because it's… Mar 14, 2018
scripts Updated build, test, and release scripts. Jan 23, 2018
spec corrections/updates to FIX44 spec based on diff with QF/j version May 20, 2013
.gitattributes Update gitattributes to corrupt certificates Mar 31, 2013
.gitignore Step 1: Create separate .csproj projects for all versions of FIX spec… Mar 14, 2018
.slugignore rewrite acceptance_test.bat into powershell script Oct 6, 2016
CONTRIBUTING.md rm web, now hosted in gh-pages branch Apr 14, 2016
Gemfile removes more old web stuff, cleans up Gemfile Jun 29, 2016
Gemfile.lock removes more old web stuff, cleans up Gemfile Jun 29, 2016
LICENSE License file Nov 16, 2011
QuickFIXn.sln added x64 support in solution & project files Apr 30, 2018
README.md Fixed indenting in README.md Jan 23, 2018
RELEASE_NOTES.md release note for previous commit (pull #486) Jun 13, 2018
RELEASE_README.md Step 3. Updated release script and readme Mar 14, 2018
acceptance_test.ps1 Include net core 2.0 in acceptance tests. Jan 25, 2018
appveyor.yml Revert " Ruby code generator v2" Aug 25, 2017
appveyor_test.bat Include net core 2.0 in acceptance tests. Jan 25, 2018
build.bat Updated build, test, and release scripts. Jan 23, 2018
build.sh Updated build, test, and release scripts. Jan 23, 2018
generate.bat Revert " Ruby code generator v2" Aug 25, 2017
package_release.bat Step 3. Updated release script and readme Mar 14, 2018
unit_test.bat Include net core 2.0 in acceptance tests. Jan 25, 2018
unit_test.sh Updated build, test, and release scripts. Jan 23, 2018

README.md

QuickFIX/N

Build status

For tutorials on how to use QuickFIX/n, visit the website.

This README is about setting up your system to do QuickFIX/n development.

System Setup

This project requires the following:

To build and run tests

  • Ruby (1.9.3 recommended) (used to generate message and field classes from the DataDictionary xml file)
  • From the command-line: dotnet 2.0.0 or higher
  • From Visual Studio: version 2017 or higher

Code Generation

To regenerate the message and field class source from the Data Dictionaries, you need Ruby and the Nokogiri gem:

gem install nokogiri -v 1.6.8.1
generate.bat

(Nokogiri versions 1.7+ require Ruby 2.0, so we must use this older version.)

Build

To build the project, run:

build.bat

You can also override the default configuration (Release) by giving a command line argument:

build.bat Debug

The build.bat script expects dotnet to be on your PATH.

Alternatively, simply use the dotnet tools.

Unit Tests

To run the NUnit tests, run:

unit_test.bat

(This script expects dotnet to be on your PATH.)

TRX reports of the test results (one each for NET Framework 4.5.2 and NET Standard 2.0) will then be available here:

UnitTests\TestResults

Alternatively, simply use dotnet:

dotnet test UnitTests

To run a Unit Test in the debugger:

  1. Open the TestExplorer from Test -> Windows -> Test Explorer
  2. Navigate to the test
  3. Right-click and select "Debug Selected Tests"

Acceptance Tests

To run the full suite of acceptance tests:

acceptance_test.ps1

An HTML report of the test results will then be available here:

AcceptanceTests\AcceptanceTests.html

To run one particular acceptance test, e.g. fix42\14e_IncorrectEnumValue.def:

cd AcceptanceTest
runat.ps1 release 5003 definitions\server\fix42\14e_IncorrectEnumValue.def cfg\at_42.cfg

(See acceptance_test.ps1 for the proper port numbers and config files to use in the above command.)

The test results will then be available in AcceptanceTests\TestResults.xml and debug information will be available in the AcceptanceTests\log directory.

To run a test with the debugger,

  1. Open the solution file in Visual Studio
  2. Right click on "AcceptanceTest" project and choose "Properties" from the menu
  3. Click "Debug" on the left hand nav bar
  4. Set "Command line arguments" to the relevant "cfg\at_XX.cfg" for your test
  5. Set the working directory to "[yourpath]\quickfixn\AcceptanceTest"
  6. Save the properties
  7. Right click the "AcceptanceTest" project, go to Debug -> Start New Instance
  8. In command terminal, go into "AcceptanceTest" directory
  9. Run: ruby Runner.rb 127.0.0.1 5001 definitions\server\fix42\YourTestName.def

Credits

Connamara Systems

QuickFIXn is maintained and funded by Connamara Systems, llc.

The names and logos for Connamara Systems are trademarks of Connamara Systems, llc.

Licensing

This software is available under the QuickFIX Software License. Please see the LICENSE for the terms specified by the QuickFIX Software License.