aboutsummaryrefslogtreecommitdiffstats
path: root/tests
AgeCommit message (Collapse)AuthorFilesLines
2015-01-27Fix generator bug when oneof is first field in a message.Petteri Aimonen2-37/+104
Added test case for the same. Update issue 142 Status: FixedInGit
2015-01-23Fix encoded_size #defines for oneof messages.Petteri Aimonen3-0/+65
The sizes are represented as EncodedSize() instances, which cause max() operation to sort them by address instead of value. This caused pretty much random item to be selected for the maximum. Update issue 141 Status: FixedInGit
2015-01-15Fix clang compiler warning in intsizes unit test.Petteri Aimonen1-13/+13
2015-01-15Release memory when overwriting oneof fields.Petteri Aimonen2-22/+105
Update issue 131 Status: FixedInGit
2015-01-11Add oneofs to AllTypes test casePetteri Aimonen12-2/+53
2015-01-04Actually make the protoc version check workPetteri Aimonen2-6/+10
2015-01-04Only run oneof test when protoc >= 2.6 is availablePetteri Aimonen2-15/+27
2015-01-04Implement support for oneofs (C unions).Petteri Aimonen4-0/+176
Basic test included, should probably add an oneof to the AllTypes test also. Update issue 131 Status: Started
2015-01-04Detect too large varint values when decoding.Petteri Aimonen2-3/+17
Because Issue #139 now allows limiting integer fields, it is good to check the values received from other protobuf libraries against the lower limits.
2015-01-04Add int_size option for generator.Petteri Aimonen3-0/+159
This allows overriding the integer field types to e.g. uint8_t for saving RAM. Update issue 139 Status: FixedInGit
2015-01-03Change PB_RETURN_ERROR() macro to avoid compiler warnings.Petteri Aimonen1-3/+0
Update issue 140 Status: FixedInGit
2014-12-27Fix build failure due to missing dependency in SConscriptPetteri Aimonen1-2/+2
2014-12-26Fix bug in backwards_compatibility test case.Petteri Aimonen1-4/+1
The memset() filled also the extensions field, which was just waiting for a crash to happen.
2014-12-26Add testcase for releasing memory in submessages/extensionsPetteri Aimonen3-0/+149
2014-12-26Move malloc support to tests/common directoryPetteri Aimonen5-73/+60
2014-12-26Move malloc_wrappers.c to tests/commonPetteri Aimonen7-7/+10
2014-12-22Verify build with protobuf-3.0.0, fix problems.Petteri Aimonen1-2/+2
Also updated descriptor.proto from protobuf-3.0.0.
2014-09-11Add a fuzz testing stub for ability to use external generators alsoPetteri Aimonen5-0/+209
2014-09-11Add a better fuzz test.Petteri Aimonen8-1/+565
Attempts to verify all the properties defined in the security model, while also being portable and able to run on many platforms.
2014-09-07Add test case for simulated io errors.Petteri Aimonen5-0/+203
Update issue 126 Status: FixedInGit
2014-09-07Add a few missing unit testsPetteri Aimonen3-0/+36
2014-09-07Code coverage results were ignoring the data from encode/decode unittests.Petteri Aimonen1-3/+3
Update issue 126 Status: Started
2014-08-28Fix cyclic messages support in generator. Beginnings of test.Petteri Aimonen4-0/+191
Update issue 130 Status: Started
2014-08-19Add #if guard for .pb.h version.Petteri Aimonen4-100/+367
The version in PB_PROTO_HEADER_VERSION can be bumped whenever there is a breaking change to the generated files, and it will then alert to the difference. Update issue 129 Status: FixedInGit
2014-08-18Rename poorly named identifier to avoid name conflicts.Petteri Aimonen1-1/+0
Update issue 106 Status: FixedInGit
2014-08-18Rename UNUSED() and STATIC_ASSERT() macros with PB_ prefix.Petteri Aimonen1-3/+3
This avoids possible namespace conflicts with other macros.
2014-08-18Change the _count fields to use pb_size_t datatype.Petteri Aimonen3-23/+23
Update issue 82 Status: FixedInGit
2014-08-10Fix windows build error in testsPetteri Aimonen1-2/+2
2014-08-10Switch pb_encode to use the common iterator logic in pb_common.cPetteri Aimonen1-0/+1
Update issue 128 Status: FixedInGit
2014-08-10Separate field iterator logic from pb_decode to pb_common.Petteri Aimonen19-29/+40
2014-08-04Generate #defines for initializing message structures.Petteri Aimonen4-4/+5
Usage like: MyMessage foo = MyMessage_init_default; MyMessage_init_default will initialize to default values defined in .proto. MyMessage_init_zero will initialize to null/zero values. Same results as {} or {0}, but will avoid compiler warnings by initializing everything explicitly. Update issue 79 Status: FixedInGit
2014-07-20Add skip_message option to generator.Petteri Aimonen2-3/+10
Update issue 121 Status: FixedInGit
2014-07-20Add support for inverted patterns in test framework.Petteri Aimonen1-3/+14
2014-07-20Fix problem with .options file and extension fields.Petteri Aimonen5-1/+33
The options for an extension field were being looked up under wrong name (MessageName instead of MessageName.fieldname). Fixed the problem and added regression test. Created a new subfolder for regression test cases. Update issue 125 Status: FixedInGit
2014-06-02Add unit tests for allocate_field().Petteri Aimonen1-0/+23
2014-05-17Fix bug in alltypes test case that made fuzzing difficult.Petteri Aimonen5-0/+7
2014-04-15Fix typos in scons command line optionsPetteri Aimonen1-2/+2
2014-04-15Remove -O0 from tests CFLAGS so that optimized builds can be tested alsoPetteri Aimonen1-4/+4
2014-04-09Fix bug in missing_fields test casePetteri Aimonen1-2/+5
2014-04-09Use -fsanitize=undefined when running tests with clangPetteri Aimonen1-3/+13
2014-04-05Add rule for building coverage summary using lcov.Petteri Aimonen6-18/+49
Also modified a few tests to be more compatible with coverage information, so that they use the same pb_encode/decode.c instead of making a copy.
2014-04-05Add a convenience function pb_get_encoded_size()Petteri Aimonen1-0/+9
There is minimal size penalty from this, and it is probably much more intuitive to use than PB_OSTREAM_SIZING itself. This has been suggested before also, but I ended up refusing it back them. Reconsidering it now, I see that an intuitive API is much better than any amount of documentation explaining a non-intuitive API. Update issue 16 Status: FixedInGit
2014-04-05Add a 'found' field to pb_extension_t.Petteri Aimonen2-0/+3
Update issue 112 Status: FixedInGit
2014-04-02Fix splint warnings, add splint test casePetteri Aimonen2-0/+49
2014-04-01Fix compile error when default value given for extension field.Petteri Aimonen1-1/+1
Update issue 111 Status: FixedInGit
2014-03-18Add stdlib.h to pb_syshdr.h for dynamic allocationPetteri Aimonen1-0/+2
2014-03-16Documentation updatesPetteri Aimonen1-3/+0
2014-03-15Finish the alltypes_pointer testcase, use valgrind if available.Petteri Aimonen4-168/+90
2014-03-15Get rid of pb_bytes_ptr_t, just allocate pb_bytes_array_t dynamically.Petteri Aimonen3-8/+10
This makes the internal logic much simpler, and also keeps the datatypes more similar between STATIC/POINTER cases. It will still be a bit cumbersome to use because of variable length array member. Macros PB_BYTES_ARRAY_T(n) and PB_BYTES_ARRAY_T_ALLOCSIZE(n) have been added to make life a bit easier. This has the drawback that it is no longer as easy to use externally allocated byte array as input for bytes field in pointer mode. However, this is still easy to do using callbacks, so it shouldn't be a large issue.
2014-03-12Add pb_release() functionPetteri Aimonen3-20/+81