Run quickstart example in CI

This commit is contained in:
John Keiser
2020-03-29 15:34:56 -07:00
parent 6ee3318531
commit 835b640ebd
5 changed files with 40 additions and 7 deletions
+4
View File
@@ -70,6 +70,10 @@ objs
/corpus.zip
/distinctuseridcompetition
/errortests
/examples/quickstart/quickstart
/examples/quickstart/simdjson.cpp
/examples/quickstart/simdjson.h
/examples/quickstart/twitter.json
/fuzz/fuzz_dump
/fuzz/fuzz_dump_raw_tape
/fuzz/fuzz_parser
+11 -4
View File
@@ -141,6 +141,12 @@ run_pointercheck: pointercheck
run_issue150_sh: allparserscheckfile
./scripts/issue150.sh
quickstart:
cd examples/quickstart && make quickstart
run_quickstart:
cd examples/quickstart && make test
run_testjson2json_sh: minify json2json
./scripts/testjson2json.sh
@@ -150,12 +156,12 @@ $(FEATURE_JSON_FILES): benchmark/genfeaturejson.rb
run_benchfeatures: benchfeatures $(FEATURE_JSON_FILES)
./benchfeatures -n 1000
test: run_basictests run_readme_examples run_jsoncheck run_numberparsingcheck run_integer_tests run_stringparsingcheck run_parse_many_test run_pointercheck run_testjson2json_sh run_issue150_sh run_jsoncheck_westmere run_jsoncheck_fallback
test: quicktests slowtests
@echo "It looks like the code is good!"
quiettest: run_basictests run_readme_examples run_jsoncheck run_numberparsingcheck run_integer_tests run_stringparsingcheck run_jsoncheck run_parse_many_test run_pointercheck run_testjson2json_sh run_issue150_sh run_jsoncheck_westmere run_jsoncheck_fallback
quiettest: quicktests slowtests
quicktests: run_basictests run_readme_examples run_jsoncheck run_numberparsingcheck run_integer_tests run_stringparsingcheck run_jsoncheck run_parse_many_test run_pointercheck run_jsoncheck_westmere run_jsoncheck_fallback
quicktests: run_basictests run_quickstart run_readme_examples run_jsoncheck run_numberparsingcheck run_integer_tests run_stringparsingcheck run_jsoncheck run_parse_many_test run_pointercheck run_jsoncheck_westmere run_jsoncheck_fallback
slowtests: run_testjson2json_sh run_issue150_sh
@@ -283,10 +289,11 @@ allparserscheckfile: tests/allparserscheckfile.cpp $(HEADERS) $(LIBFILES) $(EXTR
cppcheck:
cppcheck --enable=all src/*.cpp benchmarks/*.cpp tests/*.cpp -Iinclude -I. -Ibenchmark/linux
everything: $(MAINEXECUTABLES) $(EXTRA_EXECUTABLES) $(TESTEXECUTABLES) $(COMPARISONEXECUTABLES) $(SUPPLEMENTARYEXECUTABLES)
everything: $(MAINEXECUTABLES) $(EXTRA_EXECUTABLES) $(TESTEXECUTABLES) $(COMPARISONEXECUTABLES) $(SUPPLEMENTARYEXECUTABLES) quickstart
clean:
rm -f submodules $(EXTRAOBJECTS) $(MAINEXECUTABLES) $(EXTRA_EXECUTABLES) $(TESTEXECUTABLES) $(COMPARISONEXECUTABLES) $(SUPPLEMENTARYEXECUTABLES)
cd examples/quickstart && make clean
cleandist:
rm -f submodules $(EXTRAOBJECTS) $(MAINEXECUTABLES) $(EXTRA_EXECUTABLES) $(TESTEXECUTABLES) $(COMPARISONEXECUTABLES) $(SUPPLEMENTARYEXECUTABLES)
+3 -3
View File
@@ -43,7 +43,7 @@ The simdjson library is easily consumable with a single .h and .cpp file.
```
wget https://raw.githubusercontent.com/simdjson/simdjson/master/singleheader/simdjson.h https://raw.githubusercontent.com/simdjson/simdjson/master/singleheader/simdjson.cpp https://raw.githubusercontent.com/simdjson/simdjson/master/jsonexamples/twitter.json
```
2. Create `parser.cpp`:
2. Create `quickstart.cpp`:
```c++
#include "simdjson.h"
@@ -53,8 +53,8 @@ The simdjson library is easily consumable with a single .h and .cpp file.
std::cout << tweets["search_metadata"]["count"] << " results." << std::endl;
}
```
3. `c++ -o parser parser.cpp simdjson.cpp -std=c++17`
4. `./parser`
3. `c++ -o quickstart quickstart.cpp simdjson.cpp -std=c++17`
4. `./quickstart`
```
100 results.
```
+16
View File
@@ -0,0 +1,16 @@
ROOT=../..
SINGLEHEADER=$(ROOT)/singleheader
JSONEXAMPLES=$(ROOT)/jsonexamples
test: quickstart twitter.json
./quickstart
simdjson.cpp: $(SINGLEHEADER)/simdjson.cpp
cp $(SINGLEHEADER)/simdjson.cpp .
simdjson.h: $(SINGLEHEADER)/simdjson.h
cp $(SINGLEHEADER)/simdjson.h .
twitter.json: $(JSONEXAMPLES)/twitter.json
cp $(JSONEXAMPLES)/twitter.json .
quickstart: quickstart.cpp simdjson.cpp simdjson.h
c++ -o ./quickstart quickstart.cpp simdjson.cpp -std=c++17
clean:
rm -f simdjson.cpp simdjson.h twitter.json quickstart
+6
View File
@@ -0,0 +1,6 @@
#include "simdjson.h"
int main(void) {
simdjson::dom::parser parser;
simdjson::dom::element tweets = parser.load("twitter.json");
std::cout << tweets["search_metadata"]["count"] << " results." << std::endl;
}