In specs, seed random number generator with clock time by default

This commit is contained in:
Max Brunsfeld 2015-12-10 21:01:27 -08:00
parent a3fdd7f20e
commit 51998ac5bb
3 changed files with 16 additions and 3 deletions

View file

@ -27,7 +27,7 @@ function run_tests {
local cmd="out/Debug/${target}"
shift
while getopts "df:ghpv" option; do
while getopts "df:s:ghpv" option; do
case ${option} in
h)
usage
@ -48,6 +48,9 @@ function run_tests {
v)
args+=("--reporter=spec")
;;
s)
export TREE_SITTER_SEED=${OPTARG}
;;
esac
done

View file

@ -108,8 +108,6 @@ string random_words(size_t count) {
START_TEST
describe("Languages", [&]() {
srand(0);
for (const auto &pair : languages) {
describe(("The " + pair.first + " parser").c_str(), [&]() {
TSDocument *doc;
@ -117,6 +115,7 @@ describe("Languages", [&]() {
before_each([&]() {
doc = ts_document_make();
ts_document_set_language(doc, pair.second);
// ts_document_set_debugger(doc, log_debugger_make(true));
});
after_each([&]() {

View file

@ -1,5 +1,16 @@
#include "runtime/runtime_spec_helper.h"
int main(int argc, char *argv[]) {
int seed;
const char *seed_env = getenv("TREE_SITTER_SEED");
if (seed_env) {
seed = atoi(seed_env);
} else {
seed = time(nullptr);
}
printf("Random seed: %d\n", seed);
srand(seed);
return bandit::run(argc, argv);
}