Comments (5)
I was wondering if you had any test code/benchmarking code ?
None that is in a state that I'd put it in a public repro. ;)
I add some CMake logic to easily add bunches of gtest tests...
I would really prefer not to add further dependencies just for tests. Currently neither cmake nor gtest is needed.
I would like to add an istream interface to LineReader,
Newest version has support for this.
from fast-cpp-csv-parser.
well :) that sounds great!
Regarding tests, cmake and gtest.
This is just something that is orthogonal to the library.
Usage of the library doesn't require any dependency.
I will push an example up to my fork.
from fast-cpp-csv-parser.
https://github.com/jkhoogland/fast-cpp-csv-parser
has an example of how this could work.
- orthogonal to your lib
- automatically downloads gtest
- automatically picks up new test files
from fast-cpp-csv-parser.
My current cmake is older than the required 3.0 so I cannot run your script. Perhaps I should finally get around upgrading my distro. However, I'm not going to do this because of some csv test set.
Also I'm not convinced that gtest is superior for this particular application to a simple:
template<class A, class B>
inline expect_eq_check(const A&a, const B&b, const char*a_label, const char*b_label,int line_num){
if(a != b){
cout << "line " << line_num << " : " << a_label << " != "<< b_label << endl
<< "value of left side : " << (a) << endl
<< "value of right side : " << (b) << endl;
}
}
#define EXPECT_EQ2(a,b,a_label,b_label, line_num) \
expect_eq_check(a, b, a_label, b_label, line_num)
#define EXPECT_EQ(a, b) \
EXPECT_EQ2(a,b,#a, #b, __LINE__)
int main(){
// my tests
}
For a large software project with thousands of tests I buy that gtest has its advantages as for example testing does not abort at the first error but to test a single 1200 line header file...
from fast-cpp-csv-parser.
sure, you don't have to use gtest at all.
It is just what i tend to use for my stuff. It can be discarded if you want.
The benefit I like is that I can add a new test by adding
TEST( And, AnotherTest )
{
// test code...
}
CMake will pick up the test when regenerating the make file
and I can use gtest to handle the main, it will register the new test.
from fast-cpp-csv-parser.
Related Issues (20)
- How can i skip specified line? HOT 1
- Segmentation fault when running inside Boost Unit Test Framework HOT 2
- free(): invalid pointer HOT 4
- i18n README HOT 1
- My csv files can have changing number of columns
- Add ability to detect NULL values HOT 3
- Parse Single Line Without Loading File HOT 3
- Loss of precision on float reading HOT 4
- Indexing read_row HOT 1
- Count rows without processing them? HOT 1
- Possible to ignore columns in read_row()?
- Can the parsing performance be improved by using a precomputed index? HOT 2
- Progressbar support HOT 2
- Read file line by line
- Hope for more examples for code noobs
- Is it possible that I can wrap this library with lz4?
- Can I read the csv from console with this library?
- Usage of set_file_line is not clear HOT 1
- C4996 (function or variable may be unsafe) error for strncpy and fopen HOT 2
- Parsing a CSV with unknown number of columns HOT 3
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.
from fast-cpp-csv-parser.