summaryrefslogtreecommitdiff
path: root/tests/tests.c
AgeCommit message (Collapse)Author
2011-12-22Sync with internal Google development.Joshua Haberman
This breaks the open-source build, will follow up with a change to fix it.
2011-11-23Refinement of upb_bytesrc interface.Joshua Haberman
Added a upb_byteregion that tracks a region of the input buffer; decoders use this instead of using a upb_bytesrc directly. upb_byteregion is also used as the way of passing a string to a upb_handlers callback. This symmetry makes decoders compose better; if you want to take a parsed string and decode it as something else, you can take the string directly from the callback and feed it as input to another parser. A commented-out version of a pinning interface is present; I decline to actually implement it (and accept its extra complexity) until/unless it is clear that it is actually a win. But it is included as a proof-of-concept, to show that it fits well with the existing interface.
2011-11-19Changes to get upb compiling inside Google.Joshua Haberman
2011-09-09Add failing unit testHunter Morris
This might actually just bring to light my misuse of the upb_fielddef functions. The test assertions are fine, but an assertion in upb/upb.h fails: ./upb/upb.h:181: upb_value_getptr: Assertion `val.type == 33' failed.
2011-09-04Const invasion: large parts of upb made const-correct.Joshua Haberman
2011-08-31Header cleanup, clarify/correct comments for interfaces.Joshua Haberman
2011-08-27Refined upb_status.Joshua Haberman
2011-08-27Add packed field support (untested).Joshua Haberman
2011-08-04More work on Lua extension, and consequent core refactoring.Joshua Haberman
2011-07-16Get rid of upb_symtabtxn.Joshua Haberman
This type was nothing but a map of defs. We can as easily just pass an array of defs into upb_symtab_add().
2011-07-15Directory restructure.Joshua Haberman
Includes are now via upb/foo.h. Files specific to the protobuf format are now in upb/pb (the core library is concerned with message definitions, handlers, and byte streams, but knows nothing about any particular serializationf format).
2011-07-14Major refactoring: upb_string is gone in favor of upb_strref.Joshua Haberman
2011-06-17Major refactoring: abandon upb_msg, add upb_accessors.Joshua Haberman
Next on the chopping block is upb_string.
2011-05-21Make all handlers objects refcounted.Joshua Haberman
I'm realizing that basically all upb objects will need to be refcounted to be sharable across languages, but *not* messages which are on their way out so we can get out of the business of data representations. Things which must be refcounted: - encoders, decoders - handlers objects - defs
2011-05-20Add startseq/endseq handlers.Joshua Haberman
Startseq/endseq handlers are called at the beginning and end of a sequence of repeated values. Protobuf does not really have direct support for this (repeated primitive fields do not delimit "begin" and "end" of the sequence) but we can infer them from the bytestream. The benefit of supporting them explicitly is that they get their own stack frame and closure, so we can avoid having to find the array's address over and over and deciding if we need to initialize it. This will also pave the way for better support of JSON, which does have explicit "startseq/endseq" markers: [].
2011-05-10Vastly improved/simplified the upb_handlers API.Joshua Haberman
2011-05-08Documentation, some type renaming, nix unknown handler for now.Joshua Haberman
2011-05-08Split upb_stream -> upb_bytestream/upb_handlers.Joshua Haberman
2011-04-01First rough version of the JIT.Joshua Haberman
It can successfully parse SpeedMessage1. Preliminary results: 750MB/s on Core2 2.4GHz. This number is 2.5x proto2. This isn't apples-to-apples, because proto2 is parsing to a struct and we are just doing stream parsing, but for apps that are currently using proto2, this is the improvement they would see if they could move to stream-based processing. Unfortunately perf-regression-test.py is broken, and I'm not 100% sure why. It would be nice to fix it first (to ensure that there are no performance regressions for the table-based decoder) but I'm really impatient to get the JIT checked in.
2011-02-22Major work on Lua extension and default values.Joshua Haberman
Default values are now supported, and the Lua extension can now create and modify individual protobuf objects.
2011-02-10Add (but do not activate) an SSE varint decoder.Joshua Haberman
2011-02-06All tests pass again, valgrind-clean! Next up: benchmarks.Joshua Haberman
2010-01-15Remove struct keyword from all types, use typedef instead.Joshua Haberman
2010-01-15upb_parser -> upb_decoderJoshua Haberman
2010-01-05Ported/fixed tests to new data types.Joshua Haberman
2010-01-01Bugfixes: descriptorgen works without leaks!Joshua Haberman
2009-12-06Truly fixed type cyclic refcounting.Joshua Haberman
2009-12-05Add a test for circularly-linked descriptors.Joshua Haberman
The test currently triggers valgrind-detected memory errors.
2009-12-05Make defs refcounted, rename upb_context->upbsymtab.Joshua Haberman
There is currently a memory leak when type definitions form cycles. This will need to be dealt with.
2009-11-14Changed parse API to know about msgdefs.Joshua Haberman
This should make it both easier to use and easier to optimize, in exchange for a small amount of generality. In practice, any remotely normal case is still very natural.
2009-11-14Refactoring: split defs into their own file, move private parsing funcs out ↵Joshua Haberman
of .h file.
2009-09-26Use a status object for errors so a message can be returned.Joshua Haberman
Also delay deletion of subfields until the entire message is deleted.
2009-08-28Incremental improvements to cbparser, and a test.Joshua Haberman
2009-08-15Finish upb_context thread-safety.Joshua Haberman
2009-08-15Add refcounting and thread-safety to message definitions.Joshua Haberman
2009-08-03Fix tests (and src) such that all tests pass again.Joshua Haberman
2009-08-01Added a proper prototype for upb_serialize.Joshua Haberman
2009-07-25Move parsing functions to header file in anticipation of code generation ↵Joshua Haberman
(want them inlined).
2009-07-23upb is fully self-hosting (except for text->descriptor)!Joshua Haberman
2009-07-21Fix tests and the build (though a few tests are failing).Joshua Haberman
2009-07-17Enhanced testing.Joshua Haberman
2009-07-08Directory restructuring.Joshua Haberman
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback