rj_schema 0.2.3 → 0.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- metadata +3 -615
- data/ext/rj_schema/rapidjson/CHANGELOG.md +0 -158
- data/ext/rj_schema/rapidjson/CMakeLists.txt +0 -221
- data/ext/rj_schema/rapidjson/CMakeModules/FindGTestSrc.cmake +0 -30
- data/ext/rj_schema/rapidjson/RapidJSON.pc.in +0 -7
- data/ext/rj_schema/rapidjson/RapidJSONConfig.cmake.in +0 -15
- data/ext/rj_schema/rapidjson/RapidJSONConfigVersion.cmake.in +0 -10
- data/ext/rj_schema/rapidjson/appveyor.yml +0 -41
- data/ext/rj_schema/rapidjson/bin/data/glossary.json +0 -22
- data/ext/rj_schema/rapidjson/bin/data/menu.json +0 -27
- data/ext/rj_schema/rapidjson/bin/data/readme.txt +0 -1
- data/ext/rj_schema/rapidjson/bin/data/sample.json +0 -3315
- data/ext/rj_schema/rapidjson/bin/data/webapp.json +0 -88
- data/ext/rj_schema/rapidjson/bin/data/widget.json +0 -26
- data/ext/rj_schema/rapidjson/bin/draft-04/schema +0 -150
- data/ext/rj_schema/rapidjson/bin/encodings/utf16be.json +0 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf16bebom.json +0 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf16le.json +0 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf16lebom.json +0 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf32be.json +0 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf32bebom.json +0 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf32le.json +0 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf32lebom.json +0 -0
- data/ext/rj_schema/rapidjson/bin/encodings/utf8.json +0 -7
- data/ext/rj_schema/rapidjson/bin/encodings/utf8bom.json +0 -7
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail1.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail10.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail11.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail12.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail13.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail14.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail15.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail16.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail17.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail18.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail19.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail2.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail20.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail21.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail22.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail23.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail24.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail25.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail26.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail27.json +0 -2
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail28.json +0 -2
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail29.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail3.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail30.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail31.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail32.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail33.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail4.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail5.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail6.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail7.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail8.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/fail9.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/pass1.json +0 -58
- data/ext/rj_schema/rapidjson/bin/jsonchecker/pass2.json +0 -1
- data/ext/rj_schema/rapidjson/bin/jsonchecker/pass3.json +0 -6
- data/ext/rj_schema/rapidjson/bin/jsonchecker/readme.txt +0 -3
- data/ext/rj_schema/rapidjson/bin/jsonschema/LICENSE +0 -19
- data/ext/rj_schema/rapidjson/bin/jsonschema/README.md +0 -148
- data/ext/rj_schema/rapidjson/bin/jsonschema/bin/jsonschema_suite +0 -283
- data/ext/rj_schema/rapidjson/bin/jsonschema/remotes/folder/folderInteger.json +0 -3
- data/ext/rj_schema/rapidjson/bin/jsonschema/remotes/integer.json +0 -3
- data/ext/rj_schema/rapidjson/bin/jsonschema/remotes/subSchemas.json +0 -8
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/additionalItems.json +0 -82
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/additionalProperties.json +0 -88
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/default.json +0 -49
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/dependencies.json +0 -108
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/disallow.json +0 -80
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/divisibleBy.json +0 -60
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/enum.json +0 -71
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/extends.json +0 -94
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/items.json +0 -46
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/maxItems.json +0 -28
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/maxLength.json +0 -33
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/maximum.json +0 -42
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/minItems.json +0 -28
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/minLength.json +0 -33
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/minimum.json +0 -42
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/optional/bignum.json +0 -107
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/optional/format.json +0 -222
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/optional/jsregex.json +0 -18
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/optional/zeroTerminatedFloats.json +0 -15
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/pattern.json +0 -34
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/patternProperties.json +0 -110
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/properties.json +0 -92
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/ref.json +0 -159
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/refRemote.json +0 -74
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/required.json +0 -53
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/type.json +0 -474
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft3/uniqueItems.json +0 -79
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/additionalItems.json +0 -82
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/additionalProperties.json +0 -88
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/allOf.json +0 -112
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/anyOf.json +0 -68
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/default.json +0 -49
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/definitions.json +0 -32
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/dependencies.json +0 -113
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/enum.json +0 -72
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/items.json +0 -46
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/maxItems.json +0 -28
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/maxLength.json +0 -33
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/maxProperties.json +0 -28
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/maximum.json +0 -42
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/minItems.json +0 -28
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/minLength.json +0 -33
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/minProperties.json +0 -28
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/minimum.json +0 -42
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/multipleOf.json +0 -60
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/not.json +0 -96
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/oneOf.json +0 -68
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/optional/bignum.json +0 -107
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/optional/format.json +0 -148
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/optional/zeroTerminatedFloats.json +0 -15
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/pattern.json +0 -34
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/patternProperties.json +0 -110
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/properties.json +0 -92
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/ref.json +0 -159
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/refRemote.json +0 -74
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/required.json +0 -39
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/type.json +0 -330
- data/ext/rj_schema/rapidjson/bin/jsonschema/tests/draft4/uniqueItems.json +0 -79
- data/ext/rj_schema/rapidjson/bin/jsonschema/tox.ini +0 -8
- data/ext/rj_schema/rapidjson/bin/types/booleans.json +0 -102
- data/ext/rj_schema/rapidjson/bin/types/floats.json +0 -102
- data/ext/rj_schema/rapidjson/bin/types/guids.json +0 -102
- data/ext/rj_schema/rapidjson/bin/types/integers.json +0 -102
- data/ext/rj_schema/rapidjson/bin/types/mixed.json +0 -592
- data/ext/rj_schema/rapidjson/bin/types/nulls.json +0 -102
- data/ext/rj_schema/rapidjson/bin/types/paragraphs.json +0 -102
- data/ext/rj_schema/rapidjson/bin/types/readme.txt +0 -1
- data/ext/rj_schema/rapidjson/contrib/natvis/LICENSE +0 -45
- data/ext/rj_schema/rapidjson/contrib/natvis/README.md +0 -7
- data/ext/rj_schema/rapidjson/contrib/natvis/rapidjson.natvis +0 -38
- data/ext/rj_schema/rapidjson/doc/CMakeLists.txt +0 -27
- data/ext/rj_schema/rapidjson/doc/Doxyfile.in +0 -2369
- data/ext/rj_schema/rapidjson/doc/Doxyfile.zh-cn.in +0 -2369
- data/ext/rj_schema/rapidjson/doc/diagram/architecture.dot +0 -50
- data/ext/rj_schema/rapidjson/doc/diagram/architecture.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/insituparsing.dot +0 -65
- data/ext/rj_schema/rapidjson/doc/diagram/insituparsing.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/iterative-parser-states-diagram.dot +0 -62
- data/ext/rj_schema/rapidjson/doc/diagram/iterative-parser-states-diagram.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/makefile +0 -8
- data/ext/rj_schema/rapidjson/doc/diagram/move1.dot +0 -47
- data/ext/rj_schema/rapidjson/doc/diagram/move1.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/move2.dot +0 -62
- data/ext/rj_schema/rapidjson/doc/diagram/move2.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/move3.dot +0 -60
- data/ext/rj_schema/rapidjson/doc/diagram/move3.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/normalparsing.dot +0 -56
- data/ext/rj_schema/rapidjson/doc/diagram/normalparsing.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/simpledom.dot +0 -54
- data/ext/rj_schema/rapidjson/doc/diagram/simpledom.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/tutorial.dot +0 -58
- data/ext/rj_schema/rapidjson/doc/diagram/tutorial.png +0 -0
- data/ext/rj_schema/rapidjson/doc/diagram/utilityclass.dot +0 -73
- data/ext/rj_schema/rapidjson/doc/diagram/utilityclass.png +0 -0
- data/ext/rj_schema/rapidjson/doc/dom.md +0 -280
- data/ext/rj_schema/rapidjson/doc/dom.zh-cn.md +0 -284
- data/ext/rj_schema/rapidjson/doc/encoding.md +0 -146
- data/ext/rj_schema/rapidjson/doc/encoding.zh-cn.md +0 -152
- data/ext/rj_schema/rapidjson/doc/faq.md +0 -289
- data/ext/rj_schema/rapidjson/doc/faq.zh-cn.md +0 -290
- data/ext/rj_schema/rapidjson/doc/features.md +0 -104
- data/ext/rj_schema/rapidjson/doc/features.zh-cn.md +0 -103
- data/ext/rj_schema/rapidjson/doc/internals.md +0 -368
- data/ext/rj_schema/rapidjson/doc/internals.zh-cn.md +0 -363
- data/ext/rj_schema/rapidjson/doc/logo/rapidjson.png +0 -0
- data/ext/rj_schema/rapidjson/doc/logo/rapidjson.svg +0 -119
- data/ext/rj_schema/rapidjson/doc/misc/DoxygenLayout.xml +0 -194
- data/ext/rj_schema/rapidjson/doc/misc/doxygenextra.css +0 -274
- data/ext/rj_schema/rapidjson/doc/misc/footer.html +0 -11
- data/ext/rj_schema/rapidjson/doc/misc/header.html +0 -24
- data/ext/rj_schema/rapidjson/doc/npm.md +0 -31
- data/ext/rj_schema/rapidjson/doc/performance.md +0 -26
- data/ext/rj_schema/rapidjson/doc/performance.zh-cn.md +0 -26
- data/ext/rj_schema/rapidjson/doc/pointer.md +0 -234
- data/ext/rj_schema/rapidjson/doc/pointer.zh-cn.md +0 -234
- data/ext/rj_schema/rapidjson/doc/sax.md +0 -509
- data/ext/rj_schema/rapidjson/doc/sax.zh-cn.md +0 -487
- data/ext/rj_schema/rapidjson/doc/schema.md +0 -505
- data/ext/rj_schema/rapidjson/doc/schema.zh-cn.md +0 -237
- data/ext/rj_schema/rapidjson/doc/stream.md +0 -429
- data/ext/rj_schema/rapidjson/doc/stream.zh-cn.md +0 -429
- data/ext/rj_schema/rapidjson/doc/tutorial.md +0 -536
- data/ext/rj_schema/rapidjson/doc/tutorial.zh-cn.md +0 -534
- data/ext/rj_schema/rapidjson/docker/debian/Dockerfile +0 -8
- data/ext/rj_schema/rapidjson/example/CMakeLists.txt +0 -45
- data/ext/rj_schema/rapidjson/example/archiver/archiver.cpp +0 -292
- data/ext/rj_schema/rapidjson/example/archiver/archiver.h +0 -145
- data/ext/rj_schema/rapidjson/example/archiver/archivertest.cpp +0 -287
- data/ext/rj_schema/rapidjson/example/capitalize/capitalize.cpp +0 -67
- data/ext/rj_schema/rapidjson/example/condense/condense.cpp +0 -32
- data/ext/rj_schema/rapidjson/example/filterkey/filterkey.cpp +0 -135
- data/ext/rj_schema/rapidjson/example/filterkeydom/filterkeydom.cpp +0 -170
- data/ext/rj_schema/rapidjson/example/jsonx/jsonx.cpp +0 -207
- data/ext/rj_schema/rapidjson/example/lookaheadparser/lookaheadparser.cpp +0 -350
- data/ext/rj_schema/rapidjson/example/messagereader/messagereader.cpp +0 -105
- data/ext/rj_schema/rapidjson/example/parsebyparts/parsebyparts.cpp +0 -176
- data/ext/rj_schema/rapidjson/example/pretty/pretty.cpp +0 -30
- data/ext/rj_schema/rapidjson/example/prettyauto/prettyauto.cpp +0 -56
- data/ext/rj_schema/rapidjson/example/schemavalidator/schemavalidator.cpp +0 -78
- data/ext/rj_schema/rapidjson/example/serialize/serialize.cpp +0 -173
- data/ext/rj_schema/rapidjson/example/simpledom/simpledom.cpp +0 -29
- data/ext/rj_schema/rapidjson/example/simplepullreader/simplepullreader.cpp +0 -53
- data/ext/rj_schema/rapidjson/example/simplereader/simplereader.cpp +0 -42
- data/ext/rj_schema/rapidjson/example/simplewriter/simplewriter.cpp +0 -36
- data/ext/rj_schema/rapidjson/example/tutorial/tutorial.cpp +0 -151
- data/ext/rj_schema/rapidjson/include/rapidjson/allocators.h +0 -284
- data/ext/rj_schema/rapidjson/include/rapidjson/cursorstreamwrapper.h +0 -78
- data/ext/rj_schema/rapidjson/include/rapidjson/document.h +0 -2648
- data/ext/rj_schema/rapidjson/include/rapidjson/encodedstream.h +0 -299
- data/ext/rj_schema/rapidjson/include/rapidjson/encodings.h +0 -716
- data/ext/rj_schema/rapidjson/include/rapidjson/error/en.h +0 -74
- data/ext/rj_schema/rapidjson/include/rapidjson/error/error.h +0 -161
- data/ext/rj_schema/rapidjson/include/rapidjson/filereadstream.h +0 -99
- data/ext/rj_schema/rapidjson/include/rapidjson/filewritestream.h +0 -104
- data/ext/rj_schema/rapidjson/include/rapidjson/fwd.h +0 -151
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/biginteger.h +0 -290
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/diyfp.h +0 -271
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/dtoa.h +0 -245
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/ieee754.h +0 -78
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/itoa.h +0 -308
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/meta.h +0 -186
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/pow10.h +0 -55
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/regex.h +0 -732
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/stack.h +0 -231
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/strfunc.h +0 -69
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/strtod.h +0 -290
- data/ext/rj_schema/rapidjson/include/rapidjson/internal/swap.h +0 -46
- data/ext/rj_schema/rapidjson/include/rapidjson/istreamwrapper.h +0 -113
- data/ext/rj_schema/rapidjson/include/rapidjson/memorybuffer.h +0 -70
- data/ext/rj_schema/rapidjson/include/rapidjson/memorystream.h +0 -71
- data/ext/rj_schema/rapidjson/include/rapidjson/msinttypes/inttypes.h +0 -316
- data/ext/rj_schema/rapidjson/include/rapidjson/msinttypes/stdint.h +0 -300
- data/ext/rj_schema/rapidjson/include/rapidjson/ostreamwrapper.h +0 -81
- data/ext/rj_schema/rapidjson/include/rapidjson/pointer.h +0 -1357
- data/ext/rj_schema/rapidjson/include/rapidjson/prettywriter.h +0 -277
- data/ext/rj_schema/rapidjson/include/rapidjson/rapidjson.h +0 -630
- data/ext/rj_schema/rapidjson/include/rapidjson/reader.h +0 -2230
- data/ext/rj_schema/rapidjson/include/rapidjson/schema.h +0 -2494
- data/ext/rj_schema/rapidjson/include/rapidjson/stream.h +0 -223
- data/ext/rj_schema/rapidjson/include/rapidjson/stringbuffer.h +0 -121
- data/ext/rj_schema/rapidjson/include/rapidjson/writer.h +0 -710
- data/ext/rj_schema/rapidjson/include_dirs.js +0 -2
- data/ext/rj_schema/rapidjson/library.json +0 -15
- data/ext/rj_schema/rapidjson/license.txt +0 -57
- data/ext/rj_schema/rapidjson/package.json +0 -24
- data/ext/rj_schema/rapidjson/rapidjson.autopkg +0 -77
- data/ext/rj_schema/rapidjson/readme.md +0 -160
- data/ext/rj_schema/rapidjson/readme.zh-cn.md +0 -152
- data/ext/rj_schema/rapidjson/test/CMakeLists.txt +0 -20
- data/ext/rj_schema/rapidjson/test/perftest/CMakeLists.txt +0 -28
- data/ext/rj_schema/rapidjson/test/perftest/misctest.cpp +0 -974
- data/ext/rj_schema/rapidjson/test/perftest/perftest.cpp +0 -24
- data/ext/rj_schema/rapidjson/test/perftest/perftest.h +0 -185
- data/ext/rj_schema/rapidjson/test/perftest/platformtest.cpp +0 -166
- data/ext/rj_schema/rapidjson/test/perftest/rapidjsontest.cpp +0 -472
- data/ext/rj_schema/rapidjson/test/perftest/schematest.cpp +0 -223
- data/ext/rj_schema/rapidjson/test/unittest/CMakeLists.txt +0 -92
- data/ext/rj_schema/rapidjson/test/unittest/allocatorstest.cpp +0 -100
- data/ext/rj_schema/rapidjson/test/unittest/bigintegertest.cpp +0 -138
- data/ext/rj_schema/rapidjson/test/unittest/cursorstreamwrappertest.cpp +0 -115
- data/ext/rj_schema/rapidjson/test/unittest/documenttest.cpp +0 -672
- data/ext/rj_schema/rapidjson/test/unittest/dtoatest.cpp +0 -98
- data/ext/rj_schema/rapidjson/test/unittest/encodedstreamtest.cpp +0 -313
- data/ext/rj_schema/rapidjson/test/unittest/encodingstest.cpp +0 -451
- data/ext/rj_schema/rapidjson/test/unittest/filestreamtest.cpp +0 -112
- data/ext/rj_schema/rapidjson/test/unittest/fwdtest.cpp +0 -230
- data/ext/rj_schema/rapidjson/test/unittest/istreamwrappertest.cpp +0 -181
- data/ext/rj_schema/rapidjson/test/unittest/itoatest.cpp +0 -160
- data/ext/rj_schema/rapidjson/test/unittest/jsoncheckertest.cpp +0 -143
- data/ext/rj_schema/rapidjson/test/unittest/namespacetest.cpp +0 -70
- data/ext/rj_schema/rapidjson/test/unittest/ostreamwrappertest.cpp +0 -92
- data/ext/rj_schema/rapidjson/test/unittest/pointertest.cpp +0 -1529
- data/ext/rj_schema/rapidjson/test/unittest/prettywritertest.cpp +0 -373
- data/ext/rj_schema/rapidjson/test/unittest/readertest.cpp +0 -2190
- data/ext/rj_schema/rapidjson/test/unittest/regextest.cpp +0 -638
- data/ext/rj_schema/rapidjson/test/unittest/schematest.cpp +0 -2072
- data/ext/rj_schema/rapidjson/test/unittest/simdtest.cpp +0 -219
- data/ext/rj_schema/rapidjson/test/unittest/strfunctest.cpp +0 -30
- data/ext/rj_schema/rapidjson/test/unittest/stringbuffertest.cpp +0 -192
- data/ext/rj_schema/rapidjson/test/unittest/strtodtest.cpp +0 -132
- data/ext/rj_schema/rapidjson/test/unittest/unittest.cpp +0 -51
- data/ext/rj_schema/rapidjson/test/unittest/unittest.h +0 -140
- data/ext/rj_schema/rapidjson/test/unittest/valuetest.cpp +0 -1851
- data/ext/rj_schema/rapidjson/test/unittest/writertest.cpp +0 -598
- data/ext/rj_schema/rapidjson/test/valgrind.supp +0 -17
- data/ext/rj_schema/rapidjson/thirdparty/gtest/CMakeLists.txt +0 -16
- data/ext/rj_schema/rapidjson/thirdparty/gtest/README.md +0 -141
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/CHANGES +0 -126
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/CMakeLists.txt +0 -202
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/CONTRIBUTORS +0 -40
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/LICENSE +0 -28
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/Makefile.am +0 -224
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/README.md +0 -333
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/configure.ac +0 -146
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/CheatSheet.md +0 -562
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/CookBook.md +0 -3675
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/DesignDoc.md +0 -280
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/DevGuide.md +0 -132
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/Documentation.md +0 -12
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/ForDummies.md +0 -439
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/FrequentlyAskedQuestions.md +0 -628
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/KnownIssues.md +0 -19
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_5/CheatSheet.md +0 -525
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_5/CookBook.md +0 -3250
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_5/Documentation.md +0 -11
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_5/ForDummies.md +0 -439
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_5/FrequentlyAskedQuestions.md +0 -624
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_6/CheatSheet.md +0 -534
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_6/CookBook.md +0 -3342
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_6/Documentation.md +0 -12
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_6/ForDummies.md +0 -439
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_6/FrequentlyAskedQuestions.md +0 -628
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_7/CheatSheet.md +0 -556
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_7/CookBook.md +0 -3432
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_7/Documentation.md +0 -12
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_7/ForDummies.md +0 -439
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/docs/v1_7/FrequentlyAskedQuestions.md +0 -628
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-actions.h +0 -1205
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-cardinalities.h +0 -147
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-actions.h +0 -2377
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-actions.h.pump +0 -794
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-function-mockers.h +0 -1095
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-function-mockers.h.pump +0 -291
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-matchers.h +0 -2179
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-matchers.h.pump +0 -672
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-nice-strict.h +0 -397
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-generated-nice-strict.h.pump +0 -161
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-matchers.h +0 -4399
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-more-actions.h +0 -246
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-more-matchers.h +0 -58
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock-spec-builders.h +0 -1847
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/gmock.h +0 -94
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/custom/gmock-generated-actions.h +0 -8
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/custom/gmock-generated-actions.h.pump +0 -10
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/custom/gmock-matchers.h +0 -39
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/custom/gmock-port.h +0 -46
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/gmock-generated-internal-utils.h +0 -279
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/gmock-generated-internal-utils.h.pump +0 -136
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/gmock-internal-utils.h +0 -511
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/include/gmock/internal/gmock-port.h +0 -91
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/make/Makefile +0 -101
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock.sln +0 -32
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock.vcproj +0 -191
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock_config.vsprops +0 -15
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock_main.vcproj +0 -187
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2005/gmock_test.vcproj +0 -201
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock.sln +0 -32
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock.vcxproj +0 -82
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock_config.props +0 -19
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock_main.vcxproj +0 -88
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2010/gmock_test.vcxproj +0 -101
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock.sln +0 -32
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock.vcxproj +0 -84
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock_config.props +0 -19
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock_main.vcxproj +0 -90
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/msvc/2015/gmock_test.vcxproj +0 -103
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/fuse_gmock_files.py +0 -240
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/LICENSE +0 -203
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/README +0 -35
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/README.cppclean +0 -115
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/__init__.py +0 -0
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/ast.py +0 -1733
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/gmock_class.py +0 -227
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/gmock_class_test.py +0 -448
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/keywords.py +0 -59
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/tokenize.py +0 -287
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/cpp/utils.py +0 -41
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/generator/gmock_gen.py +0 -31
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/gmock-config.in +0 -303
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/gmock_doctor.py +0 -640
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/upload.py +0 -1387
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/scripts/upload_gmock.py +0 -78
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock-all.cc +0 -47
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock-cardinalities.cc +0 -156
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock-internal-utils.cc +0 -174
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock-matchers.cc +0 -498
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock-spec-builders.cc +0 -823
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock.cc +0 -183
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/src/gmock_main.cc +0 -54
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-actions_test.cc +0 -1411
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-cardinalities_test.cc +0 -428
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-generated-actions_test.cc +0 -1228
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-generated-function-mockers_test.cc +0 -622
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-generated-internal-utils_test.cc +0 -127
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-generated-matchers_test.cc +0 -1286
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-internal-utils_test.cc +0 -699
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-matchers_test.cc +0 -5648
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-more-actions_test.cc +0 -708
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-nice-strict_test.cc +0 -424
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-port_test.cc +0 -43
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock-spec-builders_test.cc +0 -2644
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_all_test.cc +0 -51
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_ex_test.cc +0 -81
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_leak_test.py +0 -108
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_leak_test_.cc +0 -100
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_link2_test.cc +0 -40
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_link_test.cc +0 -40
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_link_test.h +0 -669
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_output_test.py +0 -180
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_output_test_.cc +0 -291
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_output_test_golden.txt +0 -310
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_stress_test.cc +0 -322
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_test.cc +0 -220
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googlemock/test/gmock_test_utils.py +0 -112
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/CHANGES +0 -157
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/CMakeLists.txt +0 -286
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/CONTRIBUTORS +0 -37
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/LICENSE +0 -28
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/Makefile.am +0 -310
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/README.md +0 -280
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/cmake/internal_utils.cmake +0 -242
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest.cbproj +0 -138
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest.groupproj +0 -54
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest_all.cc +0 -38
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest_link.cc +0 -40
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest_main.cbproj +0 -82
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/codegear/gtest_unittest.cbproj +0 -88
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/configure.ac +0 -68
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/AdvancedGuide.md +0 -2182
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/DevGuide.md +0 -126
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/Documentation.md +0 -14
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/FAQ.md +0 -1087
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/Primer.md +0 -502
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/PumpManual.md +0 -177
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/Samples.md +0 -14
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_5_AdvancedGuide.md +0 -2096
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_5_Documentation.md +0 -12
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_5_FAQ.md +0 -886
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_5_Primer.md +0 -497
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_5_PumpManual.md +0 -177
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_5_XcodeGuide.md +0 -93
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_6_AdvancedGuide.md +0 -2178
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_6_Documentation.md +0 -14
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_6_FAQ.md +0 -1038
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_6_Primer.md +0 -501
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_6_PumpManual.md +0 -177
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_6_Samples.md +0 -14
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_6_XcodeGuide.md +0 -93
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_7_AdvancedGuide.md +0 -2181
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_7_Documentation.md +0 -14
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_7_FAQ.md +0 -1082
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_7_Primer.md +0 -501
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_7_PumpManual.md +0 -177
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_7_Samples.md +0 -14
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/V1_7_XcodeGuide.md +0 -93
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/docs/XcodeGuide.md +0 -93
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-death-test.h +0 -294
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-message.h +0 -250
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-param-test.h +0 -1444
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-param-test.h.pump +0 -510
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-printers.h +0 -993
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-spi.h +0 -232
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-test-part.h +0 -179
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest-typed-test.h +0 -263
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest.h +0 -2236
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest_pred_impl.h +0 -358
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/gtest_prod.h +0 -58
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/custom/gtest-port.h +0 -69
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/custom/gtest-printers.h +0 -42
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/custom/gtest.h +0 -41
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-death-test-internal.h +0 -319
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-filepath.h +0 -206
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-internal.h +0 -1238
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-linked_ptr.h +0 -243
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-param-util-generated.h +0 -5146
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-param-util-generated.h.pump +0 -286
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-param-util.h +0 -731
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-port-arch.h +0 -93
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-port.h +0 -2554
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-string.h +0 -167
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-tuple.h +0 -1020
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-tuple.h.pump +0 -347
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-type-util.h +0 -3331
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/include/gtest/internal/gtest-type-util.h.pump +0 -297
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/m4/acx_pthread.m4 +0 -363
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/m4/gtest.m4 +0 -74
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/make/Makefile +0 -82
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest-md.sln +0 -45
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest-md.vcproj +0 -126
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest.sln +0 -45
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest.vcproj +0 -126
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest_main-md.vcproj +0 -129
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest_main.vcproj +0 -129
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest_prod_test-md.vcproj +0 -164
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest_prod_test.vcproj +0 -164
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest_unittest-md.vcproj +0 -147
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/msvc/gtest_unittest.vcproj +0 -147
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/prime_tables.h +0 -123
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample1.cc +0 -68
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample1.h +0 -43
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample10_unittest.cc +0 -144
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample1_unittest.cc +0 -153
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample2.cc +0 -56
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample2.h +0 -85
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample2_unittest.cc +0 -109
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample3-inl.h +0 -172
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample3_unittest.cc +0 -151
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample4.cc +0 -46
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample4.h +0 -53
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample4_unittest.cc +0 -45
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample5_unittest.cc +0 -199
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample6_unittest.cc +0 -224
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample7_unittest.cc +0 -130
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample8_unittest.cc +0 -173
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/samples/sample9_unittest.cc +0 -160
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/common.py +0 -83
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/fuse_gtest_files.py +0 -253
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/gen_gtest_pred_impl.py +0 -730
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/gtest-config.in +0 -274
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/pump.py +0 -855
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/release_docs.py +0 -158
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/test/Makefile +0 -59
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/upload.py +0 -1387
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/scripts/upload_gtest.py +0 -78
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-all.cc +0 -48
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-death-test.cc +0 -1342
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-filepath.cc +0 -387
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-internal-inl.h +0 -1183
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-port.cc +0 -1259
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-printers.cc +0 -373
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-test-part.cc +0 -110
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest-typed-test.cc +0 -118
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest.cc +0 -5388
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/src/gtest_main.cc +0 -38
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-death-test_ex_test.cc +0 -93
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-death-test_test.cc +0 -1427
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-filepath_test.cc +0 -662
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-linked_ptr_test.cc +0 -154
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-listener_test.cc +0 -311
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-message_test.cc +0 -159
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-options_test.cc +0 -215
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-param-test2_test.cc +0 -65
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-param-test_test.cc +0 -1055
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-param-test_test.h +0 -57
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-port_test.cc +0 -1304
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-printers_test.cc +0 -1635
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-test-part_test.cc +0 -208
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-tuple_test.cc +0 -320
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-typed-test2_test.cc +0 -45
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-typed-test_test.cc +0 -380
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-typed-test_test.h +0 -66
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest-unittest-api_test.cc +0 -341
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_all_test.cc +0 -47
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_break_on_failure_unittest.py +0 -212
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_break_on_failure_unittest_.cc +0 -88
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_catch_exceptions_test.py +0 -237
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_catch_exceptions_test_.cc +0 -311
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_color_test.py +0 -130
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_color_test_.cc +0 -71
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_env_var_test.py +0 -117
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_env_var_test_.cc +0 -126
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_environment_test.cc +0 -192
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_filter_unittest.py +0 -636
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_filter_unittest_.cc +0 -140
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_help_test.py +0 -172
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_help_test_.cc +0 -46
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_list_tests_unittest.py +0 -207
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_list_tests_unittest_.cc +0 -157
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_main_unittest.cc +0 -45
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_no_test_unittest.cc +0 -56
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_output_test.py +0 -340
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_output_test_.cc +0 -1062
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_output_test_golden_lin.txt +0 -743
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_pred_impl_unittest.cc +0 -2427
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_premature_exit_test.cc +0 -127
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_prod_test.cc +0 -57
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_repeat_test.cc +0 -253
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_shuffle_test.py +0 -325
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_shuffle_test_.cc +0 -103
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_sole_header_test.cc +0 -57
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_stress_test.cc +0 -256
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_test_utils.py +0 -320
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_throw_on_failure_ex_test.cc +0 -92
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_throw_on_failure_test.py +0 -171
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_throw_on_failure_test_.cc +0 -72
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_uninitialized_test.py +0 -70
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_uninitialized_test_.cc +0 -43
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_unittest.cc +0 -7706
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_outfile1_test_.cc +0 -49
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_outfile2_test_.cc +0 -49
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_outfiles_test.py +0 -132
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_output_unittest.py +0 -308
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_output_unittest_.cc +0 -181
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/gtest_xml_test_utils.py +0 -194
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/production.cc +0 -36
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/test/production.h +0 -55
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/DebugProject.xcconfig +0 -30
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/FrameworkTarget.xcconfig +0 -17
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/General.xcconfig +0 -41
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/ReleaseProject.xcconfig +0 -32
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/StaticLibraryTarget.xcconfig +0 -18
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Config/TestTarget.xcconfig +0 -8
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Resources/Info.plist +0 -30
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/Info.plist +0 -28
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/WidgetFramework.xcodeproj/project.pbxproj +0 -457
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/runtests.sh +0 -62
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/widget.cc +0 -63
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/widget.h +0 -59
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Samples/FrameworkSample/widget_test.cc +0 -68
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Scripts/runtests.sh +0 -65
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/Scripts/versiongenerate.py +0 -100
- data/ext/rj_schema/rapidjson/thirdparty/gtest/googletest/xcode/gtest.xcodeproj/project.pbxproj +0 -1135
- data/ext/rj_schema/rapidjson/thirdparty/gtest/travis.sh +0 -15
- data/ext/rj_schema/rapidjson/travis-doxygen.sh +0 -121
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
# Copyright 2013 Google Inc. All Rights Reserved.
|
|
2
|
-
#
|
|
3
|
-
# Redistribution and use in source and binary forms, with or without
|
|
4
|
-
# modification, are permitted provided that the following conditions are
|
|
5
|
-
# met:
|
|
6
|
-
#
|
|
7
|
-
# * Redistributions of source code must retain the above copyright
|
|
8
|
-
# notice, this list of conditions and the following disclaimer.
|
|
9
|
-
# * Redistributions in binary form must reproduce the above
|
|
10
|
-
# copyright notice, this list of conditions and the following disclaimer
|
|
11
|
-
# in the documentation and/or other materials provided with the
|
|
12
|
-
# distribution.
|
|
13
|
-
# * Neither the name of Google Inc. nor the names of its
|
|
14
|
-
# contributors may be used to endorse or promote products derived from
|
|
15
|
-
# this software without specific prior written permission.
|
|
16
|
-
#
|
|
17
|
-
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
18
|
-
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
19
|
-
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
20
|
-
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
21
|
-
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
22
|
-
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
23
|
-
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
24
|
-
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
25
|
-
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
26
|
-
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
27
|
-
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
28
|
-
|
|
29
|
-
"""Shared utilities for writing scripts for Google Test/Mock."""
|
|
30
|
-
|
|
31
|
-
__author__ = 'wan@google.com (Zhanyong Wan)'
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
import os
|
|
35
|
-
import re
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
# Matches the line from 'svn info .' output that describes what SVN
|
|
39
|
-
# path the current local directory corresponds to. For example, in
|
|
40
|
-
# a googletest SVN workspace's trunk/test directory, the output will be:
|
|
41
|
-
#
|
|
42
|
-
# URL: https://googletest.googlecode.com/svn/trunk/test
|
|
43
|
-
_SVN_INFO_URL_RE = re.compile(r'^URL: https://(\w+)\.googlecode\.com/svn(.*)')
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
def GetCommandOutput(command):
|
|
47
|
-
"""Runs the shell command and returns its stdout as a list of lines."""
|
|
48
|
-
|
|
49
|
-
f = os.popen(command, 'r')
|
|
50
|
-
lines = [line.strip() for line in f.readlines()]
|
|
51
|
-
f.close()
|
|
52
|
-
return lines
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
def GetSvnInfo():
|
|
56
|
-
"""Returns the project name and the current SVN workspace's root path."""
|
|
57
|
-
|
|
58
|
-
for line in GetCommandOutput('svn info .'):
|
|
59
|
-
m = _SVN_INFO_URL_RE.match(line)
|
|
60
|
-
if m:
|
|
61
|
-
project = m.group(1) # googletest or googlemock
|
|
62
|
-
rel_path = m.group(2)
|
|
63
|
-
root = os.path.realpath(rel_path.count('/') * '../')
|
|
64
|
-
return project, root
|
|
65
|
-
|
|
66
|
-
return None, None
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
def GetSvnTrunk():
|
|
70
|
-
"""Returns the current SVN workspace's trunk root path."""
|
|
71
|
-
|
|
72
|
-
_, root = GetSvnInfo()
|
|
73
|
-
return root + '/trunk' if root else None
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
def IsInGTestSvn():
|
|
77
|
-
project, _ = GetSvnInfo()
|
|
78
|
-
return project == 'googletest'
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
def IsInGMockSvn():
|
|
82
|
-
project, _ = GetSvnInfo()
|
|
83
|
-
return project == 'googlemock'
|
|
@@ -1,253 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env python
|
|
2
|
-
#
|
|
3
|
-
# Copyright 2009, Google Inc.
|
|
4
|
-
# All rights reserved.
|
|
5
|
-
#
|
|
6
|
-
# Redistribution and use in source and binary forms, with or without
|
|
7
|
-
# modification, are permitted provided that the following conditions are
|
|
8
|
-
# met:
|
|
9
|
-
#
|
|
10
|
-
# * Redistributions of source code must retain the above copyright
|
|
11
|
-
# notice, this list of conditions and the following disclaimer.
|
|
12
|
-
# * Redistributions in binary form must reproduce the above
|
|
13
|
-
# copyright notice, this list of conditions and the following disclaimer
|
|
14
|
-
# in the documentation and/or other materials provided with the
|
|
15
|
-
# distribution.
|
|
16
|
-
# * Neither the name of Google Inc. nor the names of its
|
|
17
|
-
# contributors may be used to endorse or promote products derived from
|
|
18
|
-
# this software without specific prior written permission.
|
|
19
|
-
#
|
|
20
|
-
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
21
|
-
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
22
|
-
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
23
|
-
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
24
|
-
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
25
|
-
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
26
|
-
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
27
|
-
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
28
|
-
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
29
|
-
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
30
|
-
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
31
|
-
|
|
32
|
-
"""fuse_gtest_files.py v0.2.0
|
|
33
|
-
Fuses Google Test source code into a .h file and a .cc file.
|
|
34
|
-
|
|
35
|
-
SYNOPSIS
|
|
36
|
-
fuse_gtest_files.py [GTEST_ROOT_DIR] OUTPUT_DIR
|
|
37
|
-
|
|
38
|
-
Scans GTEST_ROOT_DIR for Google Test source code, and generates
|
|
39
|
-
two files: OUTPUT_DIR/gtest/gtest.h and OUTPUT_DIR/gtest/gtest-all.cc.
|
|
40
|
-
Then you can build your tests by adding OUTPUT_DIR to the include
|
|
41
|
-
search path and linking with OUTPUT_DIR/gtest/gtest-all.cc. These
|
|
42
|
-
two files contain everything you need to use Google Test. Hence
|
|
43
|
-
you can "install" Google Test by copying them to wherever you want.
|
|
44
|
-
|
|
45
|
-
GTEST_ROOT_DIR can be omitted and defaults to the parent
|
|
46
|
-
directory of the directory holding this script.
|
|
47
|
-
|
|
48
|
-
EXAMPLES
|
|
49
|
-
./fuse_gtest_files.py fused_gtest
|
|
50
|
-
./fuse_gtest_files.py path/to/unpacked/gtest fused_gtest
|
|
51
|
-
|
|
52
|
-
This tool is experimental. In particular, it assumes that there is no
|
|
53
|
-
conditional inclusion of Google Test headers. Please report any
|
|
54
|
-
problems to googletestframework@googlegroups.com. You can read
|
|
55
|
-
http://code.google.com/p/googletest/wiki/GoogleTestAdvancedGuide for
|
|
56
|
-
more information.
|
|
57
|
-
"""
|
|
58
|
-
|
|
59
|
-
__author__ = 'wan@google.com (Zhanyong Wan)'
|
|
60
|
-
|
|
61
|
-
import os
|
|
62
|
-
import re
|
|
63
|
-
try:
|
|
64
|
-
from sets import Set as set # For Python 2.3 compatibility
|
|
65
|
-
except ImportError:
|
|
66
|
-
pass
|
|
67
|
-
import sys
|
|
68
|
-
|
|
69
|
-
# We assume that this file is in the scripts/ directory in the Google
|
|
70
|
-
# Test root directory.
|
|
71
|
-
DEFAULT_GTEST_ROOT_DIR = os.path.join(os.path.dirname(__file__), '..')
|
|
72
|
-
|
|
73
|
-
# Regex for matching '#include "gtest/..."'.
|
|
74
|
-
INCLUDE_GTEST_FILE_REGEX = re.compile(r'^\s*#\s*include\s*"(gtest/.+)"')
|
|
75
|
-
|
|
76
|
-
# Regex for matching '#include "src/..."'.
|
|
77
|
-
INCLUDE_SRC_FILE_REGEX = re.compile(r'^\s*#\s*include\s*"(src/.+)"')
|
|
78
|
-
|
|
79
|
-
# Where to find the source seed files.
|
|
80
|
-
GTEST_H_SEED = 'include/gtest/gtest.h'
|
|
81
|
-
GTEST_SPI_H_SEED = 'include/gtest/gtest-spi.h'
|
|
82
|
-
GTEST_ALL_CC_SEED = 'src/gtest-all.cc'
|
|
83
|
-
|
|
84
|
-
# Where to put the generated files.
|
|
85
|
-
GTEST_H_OUTPUT = 'gtest/gtest.h'
|
|
86
|
-
GTEST_ALL_CC_OUTPUT = 'gtest/gtest-all.cc'
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
def VerifyFileExists(directory, relative_path):
|
|
90
|
-
"""Verifies that the given file exists; aborts on failure.
|
|
91
|
-
|
|
92
|
-
relative_path is the file path relative to the given directory.
|
|
93
|
-
"""
|
|
94
|
-
|
|
95
|
-
if not os.path.isfile(os.path.join(directory, relative_path)):
|
|
96
|
-
print('ERROR: Cannot find %s in directory %s.' % (relative_path,
|
|
97
|
-
directory))
|
|
98
|
-
print('Please either specify a valid project root directory '
|
|
99
|
-
'or omit it on the command line.')
|
|
100
|
-
sys.exit(1)
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
def ValidateGTestRootDir(gtest_root):
|
|
104
|
-
"""Makes sure gtest_root points to a valid gtest root directory.
|
|
105
|
-
|
|
106
|
-
The function aborts the program on failure.
|
|
107
|
-
"""
|
|
108
|
-
|
|
109
|
-
VerifyFileExists(gtest_root, GTEST_H_SEED)
|
|
110
|
-
VerifyFileExists(gtest_root, GTEST_ALL_CC_SEED)
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
def VerifyOutputFile(output_dir, relative_path):
|
|
114
|
-
"""Verifies that the given output file path is valid.
|
|
115
|
-
|
|
116
|
-
relative_path is relative to the output_dir directory.
|
|
117
|
-
"""
|
|
118
|
-
|
|
119
|
-
# Makes sure the output file either doesn't exist or can be overwritten.
|
|
120
|
-
output_file = os.path.join(output_dir, relative_path)
|
|
121
|
-
if os.path.exists(output_file):
|
|
122
|
-
# TODO(wan@google.com): The following user-interaction doesn't
|
|
123
|
-
# work with automated processes. We should provide a way for the
|
|
124
|
-
# Makefile to force overwriting the files.
|
|
125
|
-
print('%s already exists in directory %s - overwrite it? (y/N) ' %
|
|
126
|
-
(relative_path, output_dir))
|
|
127
|
-
answer = sys.stdin.readline().strip()
|
|
128
|
-
if answer not in ['y', 'Y']:
|
|
129
|
-
print('ABORTED.')
|
|
130
|
-
sys.exit(1)
|
|
131
|
-
|
|
132
|
-
# Makes sure the directory holding the output file exists; creates
|
|
133
|
-
# it and all its ancestors if necessary.
|
|
134
|
-
parent_directory = os.path.dirname(output_file)
|
|
135
|
-
if not os.path.isdir(parent_directory):
|
|
136
|
-
os.makedirs(parent_directory)
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
def ValidateOutputDir(output_dir):
|
|
140
|
-
"""Makes sure output_dir points to a valid output directory.
|
|
141
|
-
|
|
142
|
-
The function aborts the program on failure.
|
|
143
|
-
"""
|
|
144
|
-
|
|
145
|
-
VerifyOutputFile(output_dir, GTEST_H_OUTPUT)
|
|
146
|
-
VerifyOutputFile(output_dir, GTEST_ALL_CC_OUTPUT)
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
def FuseGTestH(gtest_root, output_dir):
|
|
150
|
-
"""Scans folder gtest_root to generate gtest/gtest.h in output_dir."""
|
|
151
|
-
|
|
152
|
-
output_file = open(os.path.join(output_dir, GTEST_H_OUTPUT), 'w')
|
|
153
|
-
processed_files = set() # Holds all gtest headers we've processed.
|
|
154
|
-
|
|
155
|
-
def ProcessFile(gtest_header_path):
|
|
156
|
-
"""Processes the given gtest header file."""
|
|
157
|
-
|
|
158
|
-
# We don't process the same header twice.
|
|
159
|
-
if gtest_header_path in processed_files:
|
|
160
|
-
return
|
|
161
|
-
|
|
162
|
-
processed_files.add(gtest_header_path)
|
|
163
|
-
|
|
164
|
-
# Reads each line in the given gtest header.
|
|
165
|
-
for line in open(os.path.join(gtest_root, gtest_header_path), 'r'):
|
|
166
|
-
m = INCLUDE_GTEST_FILE_REGEX.match(line)
|
|
167
|
-
if m:
|
|
168
|
-
# It's '#include "gtest/..."' - let's process it recursively.
|
|
169
|
-
ProcessFile('include/' + m.group(1))
|
|
170
|
-
else:
|
|
171
|
-
# Otherwise we copy the line unchanged to the output file.
|
|
172
|
-
output_file.write(line)
|
|
173
|
-
|
|
174
|
-
ProcessFile(GTEST_H_SEED)
|
|
175
|
-
output_file.close()
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
def FuseGTestAllCcToFile(gtest_root, output_file):
|
|
179
|
-
"""Scans folder gtest_root to generate gtest/gtest-all.cc in output_file."""
|
|
180
|
-
|
|
181
|
-
processed_files = set()
|
|
182
|
-
|
|
183
|
-
def ProcessFile(gtest_source_file):
|
|
184
|
-
"""Processes the given gtest source file."""
|
|
185
|
-
|
|
186
|
-
# We don't process the same #included file twice.
|
|
187
|
-
if gtest_source_file in processed_files:
|
|
188
|
-
return
|
|
189
|
-
|
|
190
|
-
processed_files.add(gtest_source_file)
|
|
191
|
-
|
|
192
|
-
# Reads each line in the given gtest source file.
|
|
193
|
-
for line in open(os.path.join(gtest_root, gtest_source_file), 'r'):
|
|
194
|
-
m = INCLUDE_GTEST_FILE_REGEX.match(line)
|
|
195
|
-
if m:
|
|
196
|
-
if 'include/' + m.group(1) == GTEST_SPI_H_SEED:
|
|
197
|
-
# It's '#include "gtest/gtest-spi.h"'. This file is not
|
|
198
|
-
# #included by "gtest/gtest.h", so we need to process it.
|
|
199
|
-
ProcessFile(GTEST_SPI_H_SEED)
|
|
200
|
-
else:
|
|
201
|
-
# It's '#include "gtest/foo.h"' where foo is not gtest-spi.
|
|
202
|
-
# We treat it as '#include "gtest/gtest.h"', as all other
|
|
203
|
-
# gtest headers are being fused into gtest.h and cannot be
|
|
204
|
-
# #included directly.
|
|
205
|
-
|
|
206
|
-
# There is no need to #include "gtest/gtest.h" more than once.
|
|
207
|
-
if not GTEST_H_SEED in processed_files:
|
|
208
|
-
processed_files.add(GTEST_H_SEED)
|
|
209
|
-
output_file.write('#include "%s"\n' % (GTEST_H_OUTPUT,))
|
|
210
|
-
else:
|
|
211
|
-
m = INCLUDE_SRC_FILE_REGEX.match(line)
|
|
212
|
-
if m:
|
|
213
|
-
# It's '#include "src/foo"' - let's process it recursively.
|
|
214
|
-
ProcessFile(m.group(1))
|
|
215
|
-
else:
|
|
216
|
-
output_file.write(line)
|
|
217
|
-
|
|
218
|
-
ProcessFile(GTEST_ALL_CC_SEED)
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
def FuseGTestAllCc(gtest_root, output_dir):
|
|
222
|
-
"""Scans folder gtest_root to generate gtest/gtest-all.cc in output_dir."""
|
|
223
|
-
|
|
224
|
-
output_file = open(os.path.join(output_dir, GTEST_ALL_CC_OUTPUT), 'w')
|
|
225
|
-
FuseGTestAllCcToFile(gtest_root, output_file)
|
|
226
|
-
output_file.close()
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
def FuseGTest(gtest_root, output_dir):
|
|
230
|
-
"""Fuses gtest.h and gtest-all.cc."""
|
|
231
|
-
|
|
232
|
-
ValidateGTestRootDir(gtest_root)
|
|
233
|
-
ValidateOutputDir(output_dir)
|
|
234
|
-
|
|
235
|
-
FuseGTestH(gtest_root, output_dir)
|
|
236
|
-
FuseGTestAllCc(gtest_root, output_dir)
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
def main():
|
|
240
|
-
argc = len(sys.argv)
|
|
241
|
-
if argc == 2:
|
|
242
|
-
# fuse_gtest_files.py OUTPUT_DIR
|
|
243
|
-
FuseGTest(DEFAULT_GTEST_ROOT_DIR, sys.argv[1])
|
|
244
|
-
elif argc == 3:
|
|
245
|
-
# fuse_gtest_files.py GTEST_ROOT_DIR OUTPUT_DIR
|
|
246
|
-
FuseGTest(sys.argv[1], sys.argv[2])
|
|
247
|
-
else:
|
|
248
|
-
print(__doc__)
|
|
249
|
-
sys.exit(1)
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
if __name__ == '__main__':
|
|
253
|
-
main()
|
|
@@ -1,730 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env python
|
|
2
|
-
#
|
|
3
|
-
# Copyright 2006, Google Inc.
|
|
4
|
-
# All rights reserved.
|
|
5
|
-
#
|
|
6
|
-
# Redistribution and use in source and binary forms, with or without
|
|
7
|
-
# modification, are permitted provided that the following conditions are
|
|
8
|
-
# met:
|
|
9
|
-
#
|
|
10
|
-
# * Redistributions of source code must retain the above copyright
|
|
11
|
-
# notice, this list of conditions and the following disclaimer.
|
|
12
|
-
# * Redistributions in binary form must reproduce the above
|
|
13
|
-
# copyright notice, this list of conditions and the following disclaimer
|
|
14
|
-
# in the documentation and/or other materials provided with the
|
|
15
|
-
# distribution.
|
|
16
|
-
# * Neither the name of Google Inc. nor the names of its
|
|
17
|
-
# contributors may be used to endorse or promote products derived from
|
|
18
|
-
# this software without specific prior written permission.
|
|
19
|
-
#
|
|
20
|
-
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
21
|
-
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
22
|
-
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
23
|
-
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
24
|
-
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
25
|
-
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
26
|
-
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
27
|
-
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
28
|
-
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
29
|
-
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
30
|
-
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
31
|
-
|
|
32
|
-
"""gen_gtest_pred_impl.py v0.1
|
|
33
|
-
|
|
34
|
-
Generates the implementation of Google Test predicate assertions and
|
|
35
|
-
accompanying tests.
|
|
36
|
-
|
|
37
|
-
Usage:
|
|
38
|
-
|
|
39
|
-
gen_gtest_pred_impl.py MAX_ARITY
|
|
40
|
-
|
|
41
|
-
where MAX_ARITY is a positive integer.
|
|
42
|
-
|
|
43
|
-
The command generates the implementation of up-to MAX_ARITY-ary
|
|
44
|
-
predicate assertions, and writes it to file gtest_pred_impl.h in the
|
|
45
|
-
directory where the script is. It also generates the accompanying
|
|
46
|
-
unit test in file gtest_pred_impl_unittest.cc.
|
|
47
|
-
"""
|
|
48
|
-
|
|
49
|
-
__author__ = 'wan@google.com (Zhanyong Wan)'
|
|
50
|
-
|
|
51
|
-
import os
|
|
52
|
-
import sys
|
|
53
|
-
import time
|
|
54
|
-
|
|
55
|
-
# Where this script is.
|
|
56
|
-
SCRIPT_DIR = os.path.dirname(sys.argv[0])
|
|
57
|
-
|
|
58
|
-
# Where to store the generated header.
|
|
59
|
-
HEADER = os.path.join(SCRIPT_DIR, '../include/gtest/gtest_pred_impl.h')
|
|
60
|
-
|
|
61
|
-
# Where to store the generated unit test.
|
|
62
|
-
UNIT_TEST = os.path.join(SCRIPT_DIR, '../test/gtest_pred_impl_unittest.cc')
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
def HeaderPreamble(n):
|
|
66
|
-
"""Returns the preamble for the header file.
|
|
67
|
-
|
|
68
|
-
Args:
|
|
69
|
-
n: the maximum arity of the predicate macros to be generated.
|
|
70
|
-
"""
|
|
71
|
-
|
|
72
|
-
# A map that defines the values used in the preamble template.
|
|
73
|
-
DEFS = {
|
|
74
|
-
'today' : time.strftime('%m/%d/%Y'),
|
|
75
|
-
'year' : time.strftime('%Y'),
|
|
76
|
-
'command' : '%s %s' % (os.path.basename(sys.argv[0]), n),
|
|
77
|
-
'n' : n
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
return (
|
|
81
|
-
"""// Copyright 2006, Google Inc.
|
|
82
|
-
// All rights reserved.
|
|
83
|
-
//
|
|
84
|
-
// Redistribution and use in source and binary forms, with or without
|
|
85
|
-
// modification, are permitted provided that the following conditions are
|
|
86
|
-
// met:
|
|
87
|
-
//
|
|
88
|
-
// * Redistributions of source code must retain the above copyright
|
|
89
|
-
// notice, this list of conditions and the following disclaimer.
|
|
90
|
-
// * Redistributions in binary form must reproduce the above
|
|
91
|
-
// copyright notice, this list of conditions and the following disclaimer
|
|
92
|
-
// in the documentation and/or other materials provided with the
|
|
93
|
-
// distribution.
|
|
94
|
-
// * Neither the name of Google Inc. nor the names of its
|
|
95
|
-
// contributors may be used to endorse or promote products derived from
|
|
96
|
-
// this software without specific prior written permission.
|
|
97
|
-
//
|
|
98
|
-
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
99
|
-
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
100
|
-
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
101
|
-
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
102
|
-
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
103
|
-
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
104
|
-
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
105
|
-
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
106
|
-
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
107
|
-
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
108
|
-
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
109
|
-
|
|
110
|
-
// This file is AUTOMATICALLY GENERATED on %(today)s by command
|
|
111
|
-
// '%(command)s'. DO NOT EDIT BY HAND!
|
|
112
|
-
//
|
|
113
|
-
// Implements a family of generic predicate assertion macros.
|
|
114
|
-
|
|
115
|
-
#ifndef GTEST_INCLUDE_GTEST_GTEST_PRED_IMPL_H_
|
|
116
|
-
#define GTEST_INCLUDE_GTEST_GTEST_PRED_IMPL_H_
|
|
117
|
-
|
|
118
|
-
// Makes sure this header is not included before gtest.h.
|
|
119
|
-
#ifndef GTEST_INCLUDE_GTEST_GTEST_H_
|
|
120
|
-
# error Do not include gtest_pred_impl.h directly. Include gtest.h instead.
|
|
121
|
-
#endif // GTEST_INCLUDE_GTEST_GTEST_H_
|
|
122
|
-
|
|
123
|
-
// This header implements a family of generic predicate assertion
|
|
124
|
-
// macros:
|
|
125
|
-
//
|
|
126
|
-
// ASSERT_PRED_FORMAT1(pred_format, v1)
|
|
127
|
-
// ASSERT_PRED_FORMAT2(pred_format, v1, v2)
|
|
128
|
-
// ...
|
|
129
|
-
//
|
|
130
|
-
// where pred_format is a function or functor that takes n (in the
|
|
131
|
-
// case of ASSERT_PRED_FORMATn) values and their source expression
|
|
132
|
-
// text, and returns a testing::AssertionResult. See the definition
|
|
133
|
-
// of ASSERT_EQ in gtest.h for an example.
|
|
134
|
-
//
|
|
135
|
-
// If you don't care about formatting, you can use the more
|
|
136
|
-
// restrictive version:
|
|
137
|
-
//
|
|
138
|
-
// ASSERT_PRED1(pred, v1)
|
|
139
|
-
// ASSERT_PRED2(pred, v1, v2)
|
|
140
|
-
// ...
|
|
141
|
-
//
|
|
142
|
-
// where pred is an n-ary function or functor that returns bool,
|
|
143
|
-
// and the values v1, v2, ..., must support the << operator for
|
|
144
|
-
// streaming to std::ostream.
|
|
145
|
-
//
|
|
146
|
-
// We also define the EXPECT_* variations.
|
|
147
|
-
//
|
|
148
|
-
// For now we only support predicates whose arity is at most %(n)s.
|
|
149
|
-
// Please email googletestframework@googlegroups.com if you need
|
|
150
|
-
// support for higher arities.
|
|
151
|
-
|
|
152
|
-
// GTEST_ASSERT_ is the basic statement to which all of the assertions
|
|
153
|
-
// in this file reduce. Don't use this in your code.
|
|
154
|
-
|
|
155
|
-
#define GTEST_ASSERT_(expression, on_failure) \\
|
|
156
|
-
GTEST_AMBIGUOUS_ELSE_BLOCKER_ \\
|
|
157
|
-
if (const ::testing::AssertionResult gtest_ar = (expression)) \\
|
|
158
|
-
; \\
|
|
159
|
-
else \\
|
|
160
|
-
on_failure(gtest_ar.failure_message())
|
|
161
|
-
""" % DEFS)
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
def Arity(n):
|
|
165
|
-
"""Returns the English name of the given arity."""
|
|
166
|
-
|
|
167
|
-
if n < 0:
|
|
168
|
-
return None
|
|
169
|
-
elif n <= 3:
|
|
170
|
-
return ['nullary', 'unary', 'binary', 'ternary'][n]
|
|
171
|
-
else:
|
|
172
|
-
return '%s-ary' % n
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
def Title(word):
|
|
176
|
-
"""Returns the given word in title case. The difference between
|
|
177
|
-
this and string's title() method is that Title('4-ary') is '4-ary'
|
|
178
|
-
while '4-ary'.title() is '4-Ary'."""
|
|
179
|
-
|
|
180
|
-
return word[0].upper() + word[1:]
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
def OneTo(n):
|
|
184
|
-
"""Returns the list [1, 2, 3, ..., n]."""
|
|
185
|
-
|
|
186
|
-
return range(1, n + 1)
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
def Iter(n, format, sep=''):
|
|
190
|
-
"""Given a positive integer n, a format string that contains 0 or
|
|
191
|
-
more '%s' format specs, and optionally a separator string, returns
|
|
192
|
-
the join of n strings, each formatted with the format string on an
|
|
193
|
-
iterator ranged from 1 to n.
|
|
194
|
-
|
|
195
|
-
Example:
|
|
196
|
-
|
|
197
|
-
Iter(3, 'v%s', sep=', ') returns 'v1, v2, v3'.
|
|
198
|
-
"""
|
|
199
|
-
|
|
200
|
-
# How many '%s' specs are in format?
|
|
201
|
-
spec_count = len(format.split('%s')) - 1
|
|
202
|
-
return sep.join([format % (spec_count * (i,)) for i in OneTo(n)])
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
def ImplementationForArity(n):
|
|
206
|
-
"""Returns the implementation of n-ary predicate assertions."""
|
|
207
|
-
|
|
208
|
-
# A map the defines the values used in the implementation template.
|
|
209
|
-
DEFS = {
|
|
210
|
-
'n' : str(n),
|
|
211
|
-
'vs' : Iter(n, 'v%s', sep=', '),
|
|
212
|
-
'vts' : Iter(n, '#v%s', sep=', '),
|
|
213
|
-
'arity' : Arity(n),
|
|
214
|
-
'Arity' : Title(Arity(n))
|
|
215
|
-
}
|
|
216
|
-
|
|
217
|
-
impl = """
|
|
218
|
-
|
|
219
|
-
// Helper function for implementing {EXPECT|ASSERT}_PRED%(n)s. Don't use
|
|
220
|
-
// this in your code.
|
|
221
|
-
template <typename Pred""" % DEFS
|
|
222
|
-
|
|
223
|
-
impl += Iter(n, """,
|
|
224
|
-
typename T%s""")
|
|
225
|
-
|
|
226
|
-
impl += """>
|
|
227
|
-
AssertionResult AssertPred%(n)sHelper(const char* pred_text""" % DEFS
|
|
228
|
-
|
|
229
|
-
impl += Iter(n, """,
|
|
230
|
-
const char* e%s""")
|
|
231
|
-
|
|
232
|
-
impl += """,
|
|
233
|
-
Pred pred"""
|
|
234
|
-
|
|
235
|
-
impl += Iter(n, """,
|
|
236
|
-
const T%s& v%s""")
|
|
237
|
-
|
|
238
|
-
impl += """) {
|
|
239
|
-
if (pred(%(vs)s)) return AssertionSuccess();
|
|
240
|
-
|
|
241
|
-
""" % DEFS
|
|
242
|
-
|
|
243
|
-
impl += ' return AssertionFailure() << pred_text << "("'
|
|
244
|
-
|
|
245
|
-
impl += Iter(n, """
|
|
246
|
-
<< e%s""", sep=' << ", "')
|
|
247
|
-
|
|
248
|
-
impl += ' << ") evaluates to false, where"'
|
|
249
|
-
|
|
250
|
-
impl += Iter(n, """
|
|
251
|
-
<< "\\n" << e%s << " evaluates to " << v%s""")
|
|
252
|
-
|
|
253
|
-
impl += """;
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
// Internal macro for implementing {EXPECT|ASSERT}_PRED_FORMAT%(n)s.
|
|
257
|
-
// Don't use this in your code.
|
|
258
|
-
#define GTEST_PRED_FORMAT%(n)s_(pred_format, %(vs)s, on_failure)\\
|
|
259
|
-
GTEST_ASSERT_(pred_format(%(vts)s, %(vs)s), \\
|
|
260
|
-
on_failure)
|
|
261
|
-
|
|
262
|
-
// Internal macro for implementing {EXPECT|ASSERT}_PRED%(n)s. Don't use
|
|
263
|
-
// this in your code.
|
|
264
|
-
#define GTEST_PRED%(n)s_(pred, %(vs)s, on_failure)\\
|
|
265
|
-
GTEST_ASSERT_(::testing::AssertPred%(n)sHelper(#pred""" % DEFS
|
|
266
|
-
|
|
267
|
-
impl += Iter(n, """, \\
|
|
268
|
-
#v%s""")
|
|
269
|
-
|
|
270
|
-
impl += """, \\
|
|
271
|
-
pred"""
|
|
272
|
-
|
|
273
|
-
impl += Iter(n, """, \\
|
|
274
|
-
v%s""")
|
|
275
|
-
|
|
276
|
-
impl += """), on_failure)
|
|
277
|
-
|
|
278
|
-
// %(Arity)s predicate assertion macros.
|
|
279
|
-
#define EXPECT_PRED_FORMAT%(n)s(pred_format, %(vs)s) \\
|
|
280
|
-
GTEST_PRED_FORMAT%(n)s_(pred_format, %(vs)s, GTEST_NONFATAL_FAILURE_)
|
|
281
|
-
#define EXPECT_PRED%(n)s(pred, %(vs)s) \\
|
|
282
|
-
GTEST_PRED%(n)s_(pred, %(vs)s, GTEST_NONFATAL_FAILURE_)
|
|
283
|
-
#define ASSERT_PRED_FORMAT%(n)s(pred_format, %(vs)s) \\
|
|
284
|
-
GTEST_PRED_FORMAT%(n)s_(pred_format, %(vs)s, GTEST_FATAL_FAILURE_)
|
|
285
|
-
#define ASSERT_PRED%(n)s(pred, %(vs)s) \\
|
|
286
|
-
GTEST_PRED%(n)s_(pred, %(vs)s, GTEST_FATAL_FAILURE_)
|
|
287
|
-
|
|
288
|
-
""" % DEFS
|
|
289
|
-
|
|
290
|
-
return impl
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
def HeaderPostamble():
|
|
294
|
-
"""Returns the postamble for the header file."""
|
|
295
|
-
|
|
296
|
-
return """
|
|
297
|
-
|
|
298
|
-
#endif // GTEST_INCLUDE_GTEST_GTEST_PRED_IMPL_H_
|
|
299
|
-
"""
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
def GenerateFile(path, content):
|
|
303
|
-
"""Given a file path and a content string, overwrites it with the
|
|
304
|
-
given content."""
|
|
305
|
-
|
|
306
|
-
print 'Updating file %s . . .' % path
|
|
307
|
-
|
|
308
|
-
f = file(path, 'w+')
|
|
309
|
-
print >>f, content,
|
|
310
|
-
f.close()
|
|
311
|
-
|
|
312
|
-
print 'File %s has been updated.' % path
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
def GenerateHeader(n):
|
|
316
|
-
"""Given the maximum arity n, updates the header file that implements
|
|
317
|
-
the predicate assertions."""
|
|
318
|
-
|
|
319
|
-
GenerateFile(HEADER,
|
|
320
|
-
HeaderPreamble(n)
|
|
321
|
-
+ ''.join([ImplementationForArity(i) for i in OneTo(n)])
|
|
322
|
-
+ HeaderPostamble())
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
def UnitTestPreamble():
|
|
326
|
-
"""Returns the preamble for the unit test file."""
|
|
327
|
-
|
|
328
|
-
# A map that defines the values used in the preamble template.
|
|
329
|
-
DEFS = {
|
|
330
|
-
'today' : time.strftime('%m/%d/%Y'),
|
|
331
|
-
'year' : time.strftime('%Y'),
|
|
332
|
-
'command' : '%s %s' % (os.path.basename(sys.argv[0]), sys.argv[1]),
|
|
333
|
-
}
|
|
334
|
-
|
|
335
|
-
return (
|
|
336
|
-
"""// Copyright 2006, Google Inc.
|
|
337
|
-
// All rights reserved.
|
|
338
|
-
//
|
|
339
|
-
// Redistribution and use in source and binary forms, with or without
|
|
340
|
-
// modification, are permitted provided that the following conditions are
|
|
341
|
-
// met:
|
|
342
|
-
//
|
|
343
|
-
// * Redistributions of source code must retain the above copyright
|
|
344
|
-
// notice, this list of conditions and the following disclaimer.
|
|
345
|
-
// * Redistributions in binary form must reproduce the above
|
|
346
|
-
// copyright notice, this list of conditions and the following disclaimer
|
|
347
|
-
// in the documentation and/or other materials provided with the
|
|
348
|
-
// distribution.
|
|
349
|
-
// * Neither the name of Google Inc. nor the names of its
|
|
350
|
-
// contributors may be used to endorse or promote products derived from
|
|
351
|
-
// this software without specific prior written permission.
|
|
352
|
-
//
|
|
353
|
-
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
354
|
-
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
355
|
-
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
356
|
-
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
357
|
-
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
358
|
-
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
359
|
-
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
360
|
-
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
361
|
-
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
362
|
-
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
363
|
-
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
364
|
-
|
|
365
|
-
// This file is AUTOMATICALLY GENERATED on %(today)s by command
|
|
366
|
-
// '%(command)s'. DO NOT EDIT BY HAND!
|
|
367
|
-
|
|
368
|
-
// Regression test for gtest_pred_impl.h
|
|
369
|
-
//
|
|
370
|
-
// This file is generated by a script and quite long. If you intend to
|
|
371
|
-
// learn how Google Test works by reading its unit tests, read
|
|
372
|
-
// gtest_unittest.cc instead.
|
|
373
|
-
//
|
|
374
|
-
// This is intended as a regression test for the Google Test predicate
|
|
375
|
-
// assertions. We compile it as part of the gtest_unittest target
|
|
376
|
-
// only to keep the implementation tidy and compact, as it is quite
|
|
377
|
-
// involved to set up the stage for testing Google Test using Google
|
|
378
|
-
// Test itself.
|
|
379
|
-
//
|
|
380
|
-
// Currently, gtest_unittest takes ~11 seconds to run in the testing
|
|
381
|
-
// daemon. In the future, if it grows too large and needs much more
|
|
382
|
-
// time to finish, we should consider separating this file into a
|
|
383
|
-
// stand-alone regression test.
|
|
384
|
-
|
|
385
|
-
#include <iostream>
|
|
386
|
-
|
|
387
|
-
#include "gtest/gtest.h"
|
|
388
|
-
#include "gtest/gtest-spi.h"
|
|
389
|
-
|
|
390
|
-
// A user-defined data type.
|
|
391
|
-
struct Bool {
|
|
392
|
-
explicit Bool(int val) : value(val != 0) {}
|
|
393
|
-
|
|
394
|
-
bool operator>(int n) const { return value > Bool(n).value; }
|
|
395
|
-
|
|
396
|
-
Bool operator+(const Bool& rhs) const { return Bool(value + rhs.value); }
|
|
397
|
-
|
|
398
|
-
bool operator==(const Bool& rhs) const { return value == rhs.value; }
|
|
399
|
-
|
|
400
|
-
bool value;
|
|
401
|
-
};
|
|
402
|
-
|
|
403
|
-
// Enables Bool to be used in assertions.
|
|
404
|
-
std::ostream& operator<<(std::ostream& os, const Bool& x) {
|
|
405
|
-
return os << (x.value ? "true" : "false");
|
|
406
|
-
}
|
|
407
|
-
|
|
408
|
-
""" % DEFS)
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
def TestsForArity(n):
|
|
412
|
-
"""Returns the tests for n-ary predicate assertions."""
|
|
413
|
-
|
|
414
|
-
# A map that defines the values used in the template for the tests.
|
|
415
|
-
DEFS = {
|
|
416
|
-
'n' : n,
|
|
417
|
-
'es' : Iter(n, 'e%s', sep=', '),
|
|
418
|
-
'vs' : Iter(n, 'v%s', sep=', '),
|
|
419
|
-
'vts' : Iter(n, '#v%s', sep=', '),
|
|
420
|
-
'tvs' : Iter(n, 'T%s v%s', sep=', '),
|
|
421
|
-
'int_vs' : Iter(n, 'int v%s', sep=', '),
|
|
422
|
-
'Bool_vs' : Iter(n, 'Bool v%s', sep=', '),
|
|
423
|
-
'types' : Iter(n, 'typename T%s', sep=', '),
|
|
424
|
-
'v_sum' : Iter(n, 'v%s', sep=' + '),
|
|
425
|
-
'arity' : Arity(n),
|
|
426
|
-
'Arity' : Title(Arity(n)),
|
|
427
|
-
}
|
|
428
|
-
|
|
429
|
-
tests = (
|
|
430
|
-
"""// Sample functions/functors for testing %(arity)s predicate assertions.
|
|
431
|
-
|
|
432
|
-
// A %(arity)s predicate function.
|
|
433
|
-
template <%(types)s>
|
|
434
|
-
bool PredFunction%(n)s(%(tvs)s) {
|
|
435
|
-
return %(v_sum)s > 0;
|
|
436
|
-
}
|
|
437
|
-
|
|
438
|
-
// The following two functions are needed to circumvent a bug in
|
|
439
|
-
// gcc 2.95.3, which sometimes has problem with the above template
|
|
440
|
-
// function.
|
|
441
|
-
bool PredFunction%(n)sInt(%(int_vs)s) {
|
|
442
|
-
return %(v_sum)s > 0;
|
|
443
|
-
}
|
|
444
|
-
bool PredFunction%(n)sBool(%(Bool_vs)s) {
|
|
445
|
-
return %(v_sum)s > 0;
|
|
446
|
-
}
|
|
447
|
-
""" % DEFS)
|
|
448
|
-
|
|
449
|
-
tests += """
|
|
450
|
-
// A %(arity)s predicate functor.
|
|
451
|
-
struct PredFunctor%(n)s {
|
|
452
|
-
template <%(types)s>
|
|
453
|
-
bool operator()(""" % DEFS
|
|
454
|
-
|
|
455
|
-
tests += Iter(n, 'const T%s& v%s', sep=""",
|
|
456
|
-
""")
|
|
457
|
-
|
|
458
|
-
tests += """) {
|
|
459
|
-
return %(v_sum)s > 0;
|
|
460
|
-
}
|
|
461
|
-
};
|
|
462
|
-
""" % DEFS
|
|
463
|
-
|
|
464
|
-
tests += """
|
|
465
|
-
// A %(arity)s predicate-formatter function.
|
|
466
|
-
template <%(types)s>
|
|
467
|
-
testing::AssertionResult PredFormatFunction%(n)s(""" % DEFS
|
|
468
|
-
|
|
469
|
-
tests += Iter(n, 'const char* e%s', sep=""",
|
|
470
|
-
""")
|
|
471
|
-
|
|
472
|
-
tests += Iter(n, """,
|
|
473
|
-
const T%s& v%s""")
|
|
474
|
-
|
|
475
|
-
tests += """) {
|
|
476
|
-
if (PredFunction%(n)s(%(vs)s))
|
|
477
|
-
return testing::AssertionSuccess();
|
|
478
|
-
|
|
479
|
-
return testing::AssertionFailure()
|
|
480
|
-
<< """ % DEFS
|
|
481
|
-
|
|
482
|
-
tests += Iter(n, 'e%s', sep=' << " + " << ')
|
|
483
|
-
|
|
484
|
-
tests += """
|
|
485
|
-
<< " is expected to be positive, but evaluates to "
|
|
486
|
-
<< %(v_sum)s << ".";
|
|
487
|
-
}
|
|
488
|
-
""" % DEFS
|
|
489
|
-
|
|
490
|
-
tests += """
|
|
491
|
-
// A %(arity)s predicate-formatter functor.
|
|
492
|
-
struct PredFormatFunctor%(n)s {
|
|
493
|
-
template <%(types)s>
|
|
494
|
-
testing::AssertionResult operator()(""" % DEFS
|
|
495
|
-
|
|
496
|
-
tests += Iter(n, 'const char* e%s', sep=""",
|
|
497
|
-
""")
|
|
498
|
-
|
|
499
|
-
tests += Iter(n, """,
|
|
500
|
-
const T%s& v%s""")
|
|
501
|
-
|
|
502
|
-
tests += """) const {
|
|
503
|
-
return PredFormatFunction%(n)s(%(es)s, %(vs)s);
|
|
504
|
-
}
|
|
505
|
-
};
|
|
506
|
-
""" % DEFS
|
|
507
|
-
|
|
508
|
-
tests += """
|
|
509
|
-
// Tests for {EXPECT|ASSERT}_PRED_FORMAT%(n)s.
|
|
510
|
-
|
|
511
|
-
class Predicate%(n)sTest : public testing::Test {
|
|
512
|
-
protected:
|
|
513
|
-
virtual void SetUp() {
|
|
514
|
-
expected_to_finish_ = true;
|
|
515
|
-
finished_ = false;""" % DEFS
|
|
516
|
-
|
|
517
|
-
tests += """
|
|
518
|
-
""" + Iter(n, 'n%s_ = ') + """0;
|
|
519
|
-
}
|
|
520
|
-
"""
|
|
521
|
-
|
|
522
|
-
tests += """
|
|
523
|
-
virtual void TearDown() {
|
|
524
|
-
// Verifies that each of the predicate's arguments was evaluated
|
|
525
|
-
// exactly once."""
|
|
526
|
-
|
|
527
|
-
tests += ''.join(["""
|
|
528
|
-
EXPECT_EQ(1, n%s_) <<
|
|
529
|
-
"The predicate assertion didn't evaluate argument %s "
|
|
530
|
-
"exactly once.";""" % (i, i + 1) for i in OneTo(n)])
|
|
531
|
-
|
|
532
|
-
tests += """
|
|
533
|
-
|
|
534
|
-
// Verifies that the control flow in the test function is expected.
|
|
535
|
-
if (expected_to_finish_ && !finished_) {
|
|
536
|
-
FAIL() << "The predicate assertion unexpactedly aborted the test.";
|
|
537
|
-
} else if (!expected_to_finish_ && finished_) {
|
|
538
|
-
FAIL() << "The failed predicate assertion didn't abort the test "
|
|
539
|
-
"as expected.";
|
|
540
|
-
}
|
|
541
|
-
}
|
|
542
|
-
|
|
543
|
-
// true iff the test function is expected to run to finish.
|
|
544
|
-
static bool expected_to_finish_;
|
|
545
|
-
|
|
546
|
-
// true iff the test function did run to finish.
|
|
547
|
-
static bool finished_;
|
|
548
|
-
""" % DEFS
|
|
549
|
-
|
|
550
|
-
tests += Iter(n, """
|
|
551
|
-
static int n%s_;""")
|
|
552
|
-
|
|
553
|
-
tests += """
|
|
554
|
-
};
|
|
555
|
-
|
|
556
|
-
bool Predicate%(n)sTest::expected_to_finish_;
|
|
557
|
-
bool Predicate%(n)sTest::finished_;
|
|
558
|
-
""" % DEFS
|
|
559
|
-
|
|
560
|
-
tests += Iter(n, """int Predicate%%(n)sTest::n%s_;
|
|
561
|
-
""") % DEFS
|
|
562
|
-
|
|
563
|
-
tests += """
|
|
564
|
-
typedef Predicate%(n)sTest EXPECT_PRED_FORMAT%(n)sTest;
|
|
565
|
-
typedef Predicate%(n)sTest ASSERT_PRED_FORMAT%(n)sTest;
|
|
566
|
-
typedef Predicate%(n)sTest EXPECT_PRED%(n)sTest;
|
|
567
|
-
typedef Predicate%(n)sTest ASSERT_PRED%(n)sTest;
|
|
568
|
-
""" % DEFS
|
|
569
|
-
|
|
570
|
-
def GenTest(use_format, use_assert, expect_failure,
|
|
571
|
-
use_functor, use_user_type):
|
|
572
|
-
"""Returns the test for a predicate assertion macro.
|
|
573
|
-
|
|
574
|
-
Args:
|
|
575
|
-
use_format: true iff the assertion is a *_PRED_FORMAT*.
|
|
576
|
-
use_assert: true iff the assertion is a ASSERT_*.
|
|
577
|
-
expect_failure: true iff the assertion is expected to fail.
|
|
578
|
-
use_functor: true iff the first argument of the assertion is
|
|
579
|
-
a functor (as opposed to a function)
|
|
580
|
-
use_user_type: true iff the predicate functor/function takes
|
|
581
|
-
argument(s) of a user-defined type.
|
|
582
|
-
|
|
583
|
-
Example:
|
|
584
|
-
|
|
585
|
-
GenTest(1, 0, 0, 1, 0) returns a test that tests the behavior
|
|
586
|
-
of a successful EXPECT_PRED_FORMATn() that takes a functor
|
|
587
|
-
whose arguments have built-in types."""
|
|
588
|
-
|
|
589
|
-
if use_assert:
|
|
590
|
-
assrt = 'ASSERT' # 'assert' is reserved, so we cannot use
|
|
591
|
-
# that identifier here.
|
|
592
|
-
else:
|
|
593
|
-
assrt = 'EXPECT'
|
|
594
|
-
|
|
595
|
-
assertion = assrt + '_PRED'
|
|
596
|
-
|
|
597
|
-
if use_format:
|
|
598
|
-
pred_format = 'PredFormat'
|
|
599
|
-
assertion += '_FORMAT'
|
|
600
|
-
else:
|
|
601
|
-
pred_format = 'Pred'
|
|
602
|
-
|
|
603
|
-
assertion += '%(n)s' % DEFS
|
|
604
|
-
|
|
605
|
-
if use_functor:
|
|
606
|
-
pred_format_type = 'functor'
|
|
607
|
-
pred_format += 'Functor%(n)s()'
|
|
608
|
-
else:
|
|
609
|
-
pred_format_type = 'function'
|
|
610
|
-
pred_format += 'Function%(n)s'
|
|
611
|
-
if not use_format:
|
|
612
|
-
if use_user_type:
|
|
613
|
-
pred_format += 'Bool'
|
|
614
|
-
else:
|
|
615
|
-
pred_format += 'Int'
|
|
616
|
-
|
|
617
|
-
test_name = pred_format_type.title()
|
|
618
|
-
|
|
619
|
-
if use_user_type:
|
|
620
|
-
arg_type = 'user-defined type (Bool)'
|
|
621
|
-
test_name += 'OnUserType'
|
|
622
|
-
if expect_failure:
|
|
623
|
-
arg = 'Bool(n%s_++)'
|
|
624
|
-
else:
|
|
625
|
-
arg = 'Bool(++n%s_)'
|
|
626
|
-
else:
|
|
627
|
-
arg_type = 'built-in type (int)'
|
|
628
|
-
test_name += 'OnBuiltInType'
|
|
629
|
-
if expect_failure:
|
|
630
|
-
arg = 'n%s_++'
|
|
631
|
-
else:
|
|
632
|
-
arg = '++n%s_'
|
|
633
|
-
|
|
634
|
-
if expect_failure:
|
|
635
|
-
successful_or_failed = 'failed'
|
|
636
|
-
expected_or_not = 'expected.'
|
|
637
|
-
test_name += 'Failure'
|
|
638
|
-
else:
|
|
639
|
-
successful_or_failed = 'successful'
|
|
640
|
-
expected_or_not = 'UNEXPECTED!'
|
|
641
|
-
test_name += 'Success'
|
|
642
|
-
|
|
643
|
-
# A map that defines the values used in the test template.
|
|
644
|
-
defs = DEFS.copy()
|
|
645
|
-
defs.update({
|
|
646
|
-
'assert' : assrt,
|
|
647
|
-
'assertion' : assertion,
|
|
648
|
-
'test_name' : test_name,
|
|
649
|
-
'pf_type' : pred_format_type,
|
|
650
|
-
'pf' : pred_format,
|
|
651
|
-
'arg_type' : arg_type,
|
|
652
|
-
'arg' : arg,
|
|
653
|
-
'successful' : successful_or_failed,
|
|
654
|
-
'expected' : expected_or_not,
|
|
655
|
-
})
|
|
656
|
-
|
|
657
|
-
test = """
|
|
658
|
-
// Tests a %(successful)s %(assertion)s where the
|
|
659
|
-
// predicate-formatter is a %(pf_type)s on a %(arg_type)s.
|
|
660
|
-
TEST_F(%(assertion)sTest, %(test_name)s) {""" % defs
|
|
661
|
-
|
|
662
|
-
indent = (len(assertion) + 3)*' '
|
|
663
|
-
extra_indent = ''
|
|
664
|
-
|
|
665
|
-
if expect_failure:
|
|
666
|
-
extra_indent = ' '
|
|
667
|
-
if use_assert:
|
|
668
|
-
test += """
|
|
669
|
-
expected_to_finish_ = false;
|
|
670
|
-
EXPECT_FATAL_FAILURE({ // NOLINT"""
|
|
671
|
-
else:
|
|
672
|
-
test += """
|
|
673
|
-
EXPECT_NONFATAL_FAILURE({ // NOLINT"""
|
|
674
|
-
|
|
675
|
-
test += '\n' + extra_indent + """ %(assertion)s(%(pf)s""" % defs
|
|
676
|
-
|
|
677
|
-
test = test % defs
|
|
678
|
-
test += Iter(n, ',\n' + indent + extra_indent + '%(arg)s' % defs)
|
|
679
|
-
test += ');\n' + extra_indent + ' finished_ = true;\n'
|
|
680
|
-
|
|
681
|
-
if expect_failure:
|
|
682
|
-
test += ' }, "");\n'
|
|
683
|
-
|
|
684
|
-
test += '}\n'
|
|
685
|
-
return test
|
|
686
|
-
|
|
687
|
-
# Generates tests for all 2**6 = 64 combinations.
|
|
688
|
-
tests += ''.join([GenTest(use_format, use_assert, expect_failure,
|
|
689
|
-
use_functor, use_user_type)
|
|
690
|
-
for use_format in [0, 1]
|
|
691
|
-
for use_assert in [0, 1]
|
|
692
|
-
for expect_failure in [0, 1]
|
|
693
|
-
for use_functor in [0, 1]
|
|
694
|
-
for use_user_type in [0, 1]
|
|
695
|
-
])
|
|
696
|
-
|
|
697
|
-
return tests
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
def UnitTestPostamble():
|
|
701
|
-
"""Returns the postamble for the tests."""
|
|
702
|
-
|
|
703
|
-
return ''
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
def GenerateUnitTest(n):
|
|
707
|
-
"""Returns the tests for up-to n-ary predicate assertions."""
|
|
708
|
-
|
|
709
|
-
GenerateFile(UNIT_TEST,
|
|
710
|
-
UnitTestPreamble()
|
|
711
|
-
+ ''.join([TestsForArity(i) for i in OneTo(n)])
|
|
712
|
-
+ UnitTestPostamble())
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
def _Main():
|
|
716
|
-
"""The entry point of the script. Generates the header file and its
|
|
717
|
-
unit test."""
|
|
718
|
-
|
|
719
|
-
if len(sys.argv) != 2:
|
|
720
|
-
print __doc__
|
|
721
|
-
print 'Author: ' + __author__
|
|
722
|
-
sys.exit(1)
|
|
723
|
-
|
|
724
|
-
n = int(sys.argv[1])
|
|
725
|
-
GenerateHeader(n)
|
|
726
|
-
GenerateUnitTest(n)
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
if __name__ == '__main__':
|
|
730
|
-
_Main()
|