summaryrefslogtreecommitdiff
path: root/testing
AgeCommit message (Collapse)Author
2020-05-02Add a check that we don't have any unused functions.iphydf
This check puts all of our code in a C++ anonymous namespace, which is effectively making all functions `static`. This allows the compiler to determine that a function is unused, so we can delete it.
2020-04-27Add execution trace option for debugging.iphydf
Use `cmake -DEXECUTION_TRACE=ON` to use it.
2020-04-05Make afl_toxsave.c a bit more portable; fix memleak.iphydf
malloc.h doesn't exist on most platforms, and certainly not in stdc. No functions from malloc.h are actually used here, and stdlib.h is enough.
2020-03-24Add basic test adapter for AFLsudden6
2020-03-14Use spdx license identifier instead of GPL blurb.iphydf
2020-03-12Use rules_cc instead of native cc_library rules.iphydf
2020-03-02Remove testing/av_test.c.iphydf
It's a maintenance burden. Nobody uses this. It depends on an ancient version of opencv that less and less systems actually have.
2020-03-02Upgrade bazel to 2.1.1.iphydf
Removed av_test, because it depends on an ancient opencv that starts to really not exist on modern systems anymore.
2018-10-20Make saving and loading the responsibility of Tox rather than Messengerzugz (tox)
2018-10-16Use `bool` for IPv6 flag in test programs and `DHT_bootstrap`.iphydf
2018-10-09Consistently use camel case enum names.iphydf
Including in tests and implementation files.
2018-09-19Fix typosyangfl
2018-09-06Ignore "unused-result" warning in super_donators code.iphydf
2018-09-03Avoid use of global mutable state in mono_time on win32.iphydf
This uses a trick to get read-write access to `this` from a `const` member function, similar to C++ `mutable`, but uglier.
2018-08-30Include necessary opencv2 header on OSX.iphydf
opencv2 is deprecated and homebrew ships with opencv3 now.
2018-08-26Update copyright to 2018.iphydf
2018-08-26Add some tests for `ping_array`.iphydf
No timeout test here yet, because we don't yet have the ability to manipulate time at will, so we would have to actually sleep.
2018-08-20handle libsodium dependency of misc_tools correctly for autotoolszugz (tox)
2018-08-19make Mono_Time an argument to current_time_monotoniczugz (tox)
2018-08-19Add save file generator, save compatibility test, and generate a save fileendoffile78
2018-08-17Set `_POSIX_C_SOURCE` to 200112L. We need it for C99 compat.iphydf
It is invalid to compile an XPG3, XPG4, XPG4v2, or XPG5 application using c99. The same is true for POSIX.1-1990, POSIX.2-1992, POSIX.1b, and POSIX.1c applications. Likewise, it is invalid to compile an XPG6 or a POSIX.1-2001 application with anything other than a c99 or later compiler. Therefore, Solaris libc forces an error in both cases.
2018-08-16Use per-instance `Mono_Time` for Messenger and onion.iphydf
2018-08-16Reduce the number of times `unix_time_update` is called.iphydf
Reduced by, e.g.: * `file_transfer_test`: 33% of the `clock_gettime` calls. * `tox_many_test`: 53% of the `clock_gettime` calls. Other tests will see similar improvements. Real world applications will be closer to 40-50% improvement, since tox_many_test has 100 nodes, while file_transfer_test has 2 nodes.
2018-08-15Fix possible resource leaks in testcrypto-universe
2018-08-13Fix some printf format specifiers.iphydf
2018-08-12Add simple deterministic random number generator for testszugz (tox)
2018-08-12Assert that we don't divide by 0 in random_testing.cc.iphydf
This is always true due to the condition function, but if we introduce a bug that makes the condition not be applied, this causes undefined behaviour.
2018-08-12Fix a few warnings from clang.iphydf
Also remove the use of a VLA in a context where there can be unbounded memory allocations.
2018-07-22Run Clang global static analysis on Travis.iphydf
This uses a single .cc file containing almost all the code in the repository to perform whole program analysis.
2018-07-21Avoid implementations in .h files or #including .c files.iphydf
Also, avoid the need for putting `_XOPEN_SOURCE` in every test file.
2018-07-09Factor out time keeping code into its own module: mono_time.c.iphydf
It turns out, `unix_time` is also monotonic, and is used as such, so I've renamed the new functions to `mono_time_*`. 2018-07-08: ``` 00:01 <@irungentoo> the idea used to be that the unix_time() function could go backward in time but I think I might have started using it like if it could not after I changed it so that it would never go back in time ```
2018-07-05Make tox.c unambiguously parseable.iphydf
Rules: 1. Constants are uppercase names: THE_CONSTANT. 2. SUE[1] types start with an uppercase letter and have at least one lowercase letter in it: The_Type, THE_Type. 3. Function types end in "_cb": tox_friend_connection_cb. 4. Variable and function names are all lowercase: the_function. This makes it easier for humans reading the code to determine what an identifier means. I'm not convinced by the enum type name change, but I don't know a better rule. Currently, a lot of enum types are spelled like constants, which is confusing. [1] struct/union/enum
2018-07-04Add `#include <cstdio>` for `std::printf`.iphydf
2018-06-29Remove broken conference tests.iphydf
These display some idea, but the tests are not implemented correctly. We will need to implement the idea correctly later, but for now we can't use these.
2018-06-24Use clang-format for C++ code.iphydf
`clang-format -style='{BasedOnStyle: Google, ColumnLimit: 100}'`
2018-06-24Add new Circle CI configuration.iphydf
This one has ASAN enabled, unlike Travis.
2018-06-23Add random testing program.iphydf
This can be used as a random stress test for toxcore. Adjust the weights to make certain actions more or less likely.
2018-04-17Improve network error reporting on WindowsMaxim Biro
Windows doesn't report network errors though errno, it has its own facilities.
2018-03-16Move struct DHT_Friend into DHT.c.iphydf
2018-03-16Remove the use of the 'hh' format specifier.iphydf
It's not supported in mingw. See https://github.com/TokTok/c-toxcore/issues/786.
2018-02-24Fix a bunch of compiler warnings and remove suppressions.iphydf
2018-02-11Improve video key frame sending.zoff99
This change does not include the addition of VP9. We do that in a separate pull request. Changes: * fix the video bug (video frames larger than 65KBytes) by sending full frame length in alternate header field * improve video frame reconstruction logic with slots * configure video encoder and decoder to be multihtreaded * set error resilience flags on video codec * change encoder and decoder softdeadline
2018-02-08Remove csrc from the RTPHeader struct.iphydf
This is not used by anything in the code, so we shouldn't have it in the header.
2018-02-06Move tox_shell program to the toxins repository.iphydf
https://github.com/TokTok/toxins/tree/master/tox_shell
2018-02-06Move irc_syncbot to the toxins repository.iphydf
2018-02-05Move the tox_sync tool to the toxins repository.iphydf
2018-01-30Use nullptr as NULL pointer constant instead of NULL or 0.iphydf
This changes only code, no string literals or comments.
2018-01-28Avoid clashes with "build" directories on case-insensitive file systems.iphydf
2018-01-28Make audio/video bit rates "properties"xhe
follow TokTok#731. This commit completely removed all things in namespace bit_rate, and deprecated functions are to be added back in another commit. set_xxx() is treadted as a property of namespace audio&video, same as bit_rate change event. toxav_basic_test is fixed, either.
2018-01-26Fix out of bounds read in error case in messenger_test.iphydf
Also got rid of two VLAs. They are overused a bit in toxcore. In irc_syncbot, the array was uninitialised and then filled by a recv system call. This can cause uninitialised reads if recv doesn't fill the entire array. It could not cause out of bounds read directly, because a NUL-terminator was in place, but both cases are undefined behaviour.