summaryrefslogtreecommitdiff
path: root/test
AgeCommit message (Collapse)Author
2018-08-31mbuf: new moduleRichard Braun
2018-08-25cbuf: make empty reads succeedRichard Braun
Getting an error when reading 0 bytes is surprising compared to common read interfaces.
2018-08-14Change the way unused arguments are handledRichard Braun
Use the __unused macro when declaring unused arguments in function definitions. Use main(void) instead of main(argc, argv) where appropriate.
2018-07-19shell: support multiple shell instancesRichard Braun
2018-02-23Replace "llsync" with "rcu"Richard Braun
2018-01-11test_fmt_sprintf: refactor and fixRichard Braun
Reported by Gabriel Ganne.
2018-01-04Slightly change the list interfacesRichard Braun
This change breaks API compatibility.
2018-01-04Move sources to new src/ directoryRichard Braun
2018-01-04error: remove and use errno.h directlyRichard Braun
2018-01-04test_shell: use the SHELL_REGISTER_CMDS macroRichard Braun
2018-01-04Make the copyright notice fit on 80 columnsRichard Braun
2018-01-04error: replace error_die with error_checkRichard Braun
2017-10-07Change the license to MITRichard Braun
Not a real change, it's just that MIT license seems to be the most popular permissive license.
2017-09-04rbtree: new rbtree_replace_slot functionRichard Braun
2017-09-04avltree: new avltree_replace_slot functionRichard Braun
2017-09-02test/test_fmt_sscanf: remove assert.h inclusionRichard Braun
2017-07-25error: fix namespaceRichard Braun
2017-07-24cbuf: update interfaceRichard Braun
Rename cbuf_push and cbuf_pop to cbuf_pushb and cbuf_pop respectively, and add the new cbuf_push and cbuf_pop functions, that provide the same services as the old functions, on buffers rather than single bytes.
2017-07-24slist: simplify slist_insert_afterRichard Braun
Improve the efficiency of slist_insert_after by forbidding the prev pointer to be NULL. This effectively delegates the check to the caller.
2017-07-24hlist: new moduleRichard Braun
2017-07-23slist: new moduleRichard Braun
2017-06-23test_fmt_sscanf: fix hex integers conversion testsRichard Braun
2017-06-23fmt: fix character conversion reportingRichard Braun
2017-06-23test_fmt_sscanf: fix pointer conversion testRichard Braun
The %p format expects a pointer to a pointer to void.
2017-06-17cbuf: implement buffered reads and writesRichard Braun
This change brings an interface for fast buffered accesses to the content of a circular buffer, and also an interface to write into a circular buffer at custom locations, in exchange for a small interface break of cbuf_read.
2017-06-11fmt: fix 0 and octal integer parsingRichard Braun
2017-06-09fmt: new moduleRichard Braun
2017-02-08plist: update APIRichard Braun
2017-02-04test/test_plist: silence GCC warningRichard Braun
2017-02-04test/test_plist: new testRichard Braun
2017-01-26rdxtree: make key allocation optionalRichard Braun
2017-01-12Replace unsigned long with uintptr_t for integer/pointer conversionsRichard Braun
2016-12-09Force brackets around one-line conditional statementsRichard Braun
2016-10-25check: new moduleRichard Braun
This module defines a single check macro that acts as a non conditional assert. It is intended for test code only.
2015-05-14rdxtree: fix tree walking overflowRichard Braun
This change also allows directly using the iterator key from within a foreach loop so a new rdxtree_iter_key() function is introduced.
2015-05-14rdxtree: fix blunderRichard Braun
2015-05-03rdxtree: support lockless tree walkingRichard Braun
2015-04-08rdxtree: introduce the rdxtree_key_t type for 32/64-bits keysRichard Braun
2015-03-12shell: new moduleRichard Braun
2013-07-05test_rdxtree: use 64-bit keysRichard Braun
In addition, add a test with a key larger than 32 bits.
2013-07-05rdxtree: change definition of rdxtree_bm_tRichard Braun
When the radix value is 6, always typedef to unsigned long long.
2013-06-07test_rdxtree: new tests covering node creation failuresRichard Braun
2013-06-07test_rdxtree: more lookup testsRichard Braun
2013-06-07test_rdxtree: more removal testsRichard Braun
2013-06-07test_rdxtree: test insert with allocation and slotRichard Braun
2013-06-07test_rdxtree: test insert with slotRichard Braun
2013-06-07test_rdxtree: test insertion on busy keyRichard Braun
2013-06-07rdxtree: encode pointer type in entry addressRichard Braun
Entry addresses are odd if they refer to an internal tree node. This change is required for the upcoming lockless concurrent code.
2013-06-07rdxtree: rename slots to entriesRichard Braun
A slot is actually a pointer to an entry. Improve clarity by using the proper terminology.
2013-06-07Remove non data-structure codeRichard Braun
The primary purpose of this project was testing code in userspace before pushing it to the x15 microkernel. The xprintf and phys modules were included quite some time ago now, along with the mem module which is also present in the GNU Mach microkernel. The secondary goal of this project was to create good implementations of commonly used data structures, mainly the doubly linked list and the red-black tree, under a BSD license so that they're reusable in proprietary projects I have to work on. Such generic code remains in this repository.