arthware.x937parser's People
arthware.x937parser's Issues
Back fill unit tests
Bad Art, bad. What about TDD?
Introduced the Thinktecture.IO.Abstractions package to assist with this.
Abstraction for shaping emitted returns metadata
The structure X937Return does not maps to our internal requirement. The production code reshaped the "raw return metadata" into a structure for our specific requirement. For example, computing the ABA from PayorBankRoutingNumber + PayorBankRoutingNumberCheckDigit.
This shape for the return metadata may not be consistent with other's requirements.
I have in my head a design for providing a custom return "shaper" abstraction, and a default.
Won't go into the details, just want to capture the thought.
License?
It would be helpful to specify a specific open source license this code is released under. Many companies even require this before allowing any open source code to go into production.
Integration tests of "real" X9.37 return files
I am omitting sample x9.37 return files that contain actual returns because I don't have any that I feel safe to publish. Would be nice to have some samples
StringEnumBase class
Cloned this from a .NET Framework project.
To prepare it for .NET Standard 2.0 I did some HACKs:
- Truncated serialization stuff. Didn't want to bother
- Replaced Type.BaseType with Type.IsAssignableFrom. Needed to get the build green and return for improvement later
See the //HACK comment in code
Do better.
In fact, consider dropping the StringEnumBase class completey. Replace it with a NuGet package. My initial search did not reveal a direct replacement. The hunt was not exhaustive so there may be something useful out there. Strong preference for accomplishing the StringEnumBase requirement without using attributes to decorate.
Could in fact just simply drop the class and replace with string literal constants. But I have found StringEnumBase extremely useful and want to introduce that or similar to this code base
Finally, I hope, if there is no suitable NuGet replacement AND the existing StringEnumBase is fixed and retained -- then create a NuGet package for that and publish it.
Missing sample files
Hey, nice project. I'm researching into this and there is a serious lack of open source efforts in this area; and the commercial solutions are just abysmal.
I cloned the project, upgraded it to netcore 3.1 (no changes needed) but the tests fail because of missing files:
System.IO.FileNotFoundException : Could not find file 'd:\Repos\Arthware.X937Parser\Arthware.X937Parser\Arthware.X937Parser.Tests.Integration\bin\Debug\netcoreapp3.1\SampleX9ReturnFiles\BT302IMGBO.CACHETRETURN.20170208123227.x937'.
at System.IO.FileStream.ValidateFileHandle(SafeFileHandle fileHandle)
at System.IO.FileStream.CreateFileOpenHandle(FileMode mode, FileShare share, FileOptions options)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
at Arthware.X937Parser.Tests.Integration.X937ParserTests.GetX937ReturnsMethod.Should_emit_all_the_returns_when_multiple_returns_are_present_on_the_X9_file() in d:\Repos\Arthware.X937Parser\Arthware.X937Parser\Arthware.X937Parser.Tests.Integration\X937ParserTests.cs:line 43
Any chance you could add some sample files? (I don't have any)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.