Petteri Aimonen
fe0bf121eb
Add test case for package names defined in .proto file.
2014-02-12 19:22:01 +02:00
Petteri Aimonen
057165966c
Add AllTypes decoding test with callbacks.
...
Update issue 99
Status: FixedInGit
2014-02-10 21:00:26 +02:00
Petteri Aimonen
235219a295
Add AllTypes encoding test for callbacks (issue #99 )
...
Still need to do the decoding side.
2014-02-09 19:28:50 +02:00
Petteri Aimonen
d3ed0744d0
Extreme negative integer constants are a bit nasty to define in C, just avoid the trouble in tests for now.
2014-02-05 17:56:37 +02:00
Petteri Aimonen
a2f8112166
Add proper suffixes for integer default values.
...
Update issue 102
Status: FixedInGit
2014-02-04 20:24:44 +02:00
Petteri Aimonen
5efeb392e0
Add strict-aliasing GCC warnings for core
2014-02-04 20:11:52 +02:00
Petteri Aimonen
18e71bbfe2
Fix bundled protoc detection in scons script
2013-12-29 22:08:13 +02:00
Petteri Aimonen
125b49bf24
Fix spaces in paths on Windows also
2013-12-29 21:36:06 +02:00
Petteri Aimonen
da8210b947
Fix handling spaces in directory name
2013-12-29 21:16:38 +02:00
Petteri Aimonen
10ef575d46
Fix build on Windows
2013-12-29 20:53:39 +02:00
Petteri Aimonen
ae7b9a3bd3
Fix path change: compat/ -> extra/
2013-12-29 20:41:36 +02:00
Petteri Aimonen
b1cb035373
Small fix for previous
2013-12-29 20:26:58 +02:00
Petteri Aimonen
6d0e0695d0
Check for supported GCC CCFLAGS when building tests.
2013-12-29 20:26:58 +02:00
Petteri Aimonen
1fc90ab4c4
Add a SCons tool for nanopb protos.
...
This tool script is useful both for building the tests and also for use in other applications.
2013-12-29 20:26:58 +02:00
Petteri Aimonen
f4146edf01
Bring alltypes_pointer testcase up to date
2013-12-29 18:44:58 +02:00
Petteri Aimonen
8da15d8b80
Improve alltypes_pointer test case
2013-12-29 18:35:57 +02:00
Petteri Aimonen
25516b0591
Organize allocation logic in generator, add pb_bytes_ptr_t.
...
Allocation decision is now made before the field data type is decided.
This way the data type decisions can more cleanly account for the allocation
type, i.e. FT_DEFAULT logic etc.
Added pb_bytes_ptr_t for pointer-allocated bytes-fields. There is no point
generating separate structs for these, as they would all be of the same type.
2013-12-29 18:35:57 +02:00
Martin Donath
4ae3b2e566
Generating and encoding messages with dynamic allocaiton
2013-12-29 18:35:57 +02:00
Petteri Aimonen
ed93db08dc
Fix problem with decode_legacy test case on Windows.
2013-12-21 18:08:04 +02:00
Petteri Aimonen
cd9004089f
Add test for extreme integer values (INT32_MAX etc.) in AllTypes.
2013-12-21 12:41:20 +02:00
Petteri Aimonen
9cc19a5e99
Modify the alltypes test to check re-encoding through protoc.
...
This way we can verify that the message is encoded exactly the same way
as the official protobuf implementation would do it.
2013-12-21 12:14:20 +02:00
Petteri Aimonen
5813144246
Make tests build in a separate folder, add to gitignore
2013-11-13 22:10:42 +02:00
Petteri Aimonen
dcdd7f98fd
Generate #define tags for extension fields also.
...
Update issue 93
Status: FixedInGit
2013-11-02 22:05:49 +02:00
Petteri Aimonen
287207841d
Remove the NANOPB_INTERNALS functions from public API.
...
These have been deprecated since nanopb-0.1.6 (some since 0.1.3).
Equivalent functions with better interface are available in the API.
Update issue 91
Status: FixedInGit
2013-10-29 16:32:47 +02:00
Petteri Aimonen
ed564186e1
Detect invalid sizes when encoding bytes fields.
2013-10-24 21:45:39 +03:00
Petteri Aimonen
49bd3f35a0
Generate message size #defines also for messages defined in multiple files.
...
Add testcase for the same.
2013-10-23 21:01:11 +03:00
Petteri Aimonen
e83fbd18d3
Check array max size when encoding.
...
Update issue 90
Status: FixedInGit
2013-10-20 21:42:00 +03:00
Petteri Aimonen
388d4de833
Add #defines for the maximum encoded message size.
...
Update issue 89
Status: FixedInGit
2013-09-26 10:23:37 +03:00
Petteri Aimonen
59cba0beea
Expand extra_fields test to cover field skipping in case of streams.
2013-09-11 17:33:50 +03:00
Petteri Aimonen
152c2c910c
Disable warning about uint64_t (long long)
2013-09-11 16:51:53 +03:00
Petteri Aimonen
2b72815036
Fix build error when path contains spaces
2013-09-11 16:45:52 +03:00
Petteri Aimonen
9f93d39f72
Add tests for different compilation options
2013-09-11 14:55:56 +03:00
Petteri Aimonen
d395768c8d
Windows build fixes
2013-09-11 13:42:56 +03:00
Petteri Aimonen
b9f14bddf7
Make all the tests ANSI C compatible.
2013-09-11 13:16:20 +03:00
Petteri Aimonen
e2e9980627
Move the rest of the tests to scons
2013-09-10 22:34:54 +03:00
Petteri Aimonen
0bbcb7b367
Compiler options for GCC, clang and tcc
2013-09-10 20:54:29 +03:00
Petteri Aimonen
f04ab838ab
Build fixes for Windows/Visual C++
2013-09-10 17:53:07 +03:00
Petteri Aimonen
e681dd0d75
Add an example pb_syshdr.h file for platforms without C99.
...
This allows building the tests easily on Visual C++ in C mode.
Also add checks to pb.h that the defined integer types are of
the proper sizes. This may prevent some difficult to debug problems
later..
2013-09-10 12:39:39 +03:00
Petteri Aimonen
4dccf28ba9
Convert more test cases to scons
2013-09-10 11:34:57 +03:00
Petteri Aimonen
262c62676c
Start moving the tests into subfolders. Transition to SCons for build system for the tests.
...
Only a few tests updated so far. Have to include all the rest before merging to mainline.
Update issue 63
Status: Started
2013-09-08 17:52:03 +03:00
Petteri Aimonen
d7f3a74388
Handle unsupported extension field types more gracefully.
...
Previously the generator would stop with NotImplementedException as
soon as a required or repeated extension field is found. New behaviour
is to just ignore the unsupported field and note that in a comment
in the generated file.
Furthermore, allow skipping of extension fields using the generator
option (nanopb).type = FT_IGNORE.
Update issue 83
Status: FixedInGit
2013-09-08 11:05:20 +03:00
Petteri Aimonen
ba40cacd3c
Finish the testcase for extensions
2013-07-22 19:00:04 +03:00
Petteri Aimonen
0343e2bcfe
Add test case for extensions decoding
2013-07-17 19:29:06 +03:00
Petteri Aimonen
7c5e184c26
Implement generator support for extension fields (no encoder/decoder support yet)
2013-07-17 00:06:54 +03:00
Petteri Aimonen
a01856f4ab
Add test case for extra fields in AllTypes
2013-07-16 11:07:34 +03:00
Petteri Aimonen
bb985e9927
Add pb_decode_delimited and pb_encode_delimited wrapper functions.
...
Update issue 74
Status: FixedInGit
2013-07-06 16:16:00 +03:00
Petteri Aimonen
d2063ff0b6
Handle unterminated strings when encoding.
...
If the null terminator is not present, string will be limited to the
data size of the field.
If you are still using the pb_enc_string (deprecated since 0.1.3) from
callbacks, now would be an excellent time to stop. The pb_field_t for
the callback will not contain proper data_size. Use pb_encode_string()
instead.
Update issue 68
Status: FixedInGit
2013-04-14 09:46:39 +03:00
Petteri Aimonen
9939910833
Fix bug with empty strings in repeated string callbacks.
...
Fix suggested by Henrik Carlgren. Added also unit test for the bug.
Update issue 73
Status: FixedInGit
2013-04-14 09:26:42 +03:00
Petteri Aimonen
214b0eae8a
Change the callback function to use void**.
...
NOTE: This change breaks backwards-compatibility by default.
If you have old callback functions, you can define PB_OLD_CALLBACK_STYLE
to retain the old behaviour.
If you want to convert your old callbacks to new signature, you need
to do the following:
1) Change decode callback argument to void **arg
and encode callback argument to void * const *arg.
2) Change any reference to arg into *arg.
The rationale for making the new behaviour the default is that it
simplifies the common case of "allocate some memory in decode callback".
Update issue 69
Status: FixedInGit
2013-04-02 19:55:21 +03:00
Petteri Aimonen
0352647118
Implement error message support for the encoder side.
...
Update issue 7
Status: FixedInGit
2013-03-09 14:49:15 +02:00