I am currently working on developing binding tester for my rust bindings.
As I was trying to get a better understanding of how binding tester works, I wrote a very simple program that does nothing more than just print out the operation key-values that binding tester adds for the rust program to execute. It does not modify the database in any way. The working code is here.
Upon running the program using bindingtester.py
, for some reason, it reports that the tests ran successfully, even though it was running a dummy program.
Here is the output of the invocation.
./bindingtester-630/bindingtester/bindingtester.py --test-name api rust --num-ops 2 --concurrency 3
Creating test at API version 630
Generating api test at seed 2432741821 with 2 op(s) and 3 concurrent tester(s)...
Inserting test into database...
Running tester '/home/rajiv/zfs/learning/foundation-db/dev-env/fdb/fdb-stacktester/bindingtester-630/bindingtester/../../../target/debug/fdb-stacktester test_spec 630'...
KeyValue { key: Key(b"\x01test_spec\0\x14"), value: Value(b"\x02PUSH\0\x01thread_spec0\0") }
KeyValue { key: Key(b"\x01test_spec\0\x15\x01"), value: Value(b"\x02START_THREAD\0") }
KeyValue { key: Key(b"\x01test_spec\0\x15\x02"), value: Value(b"\x02PUSH\0\x01thread_spec1\0") }
KeyValue { key: Key(b"\x01test_spec\0\x15\x03"), value: Value(b"\x02START_THREAD\0") }
KeyValue { key: Key(b"\x01test_spec\0\x15\x04"), value: Value(b"\x02PUSH\0\x01thread_spec2\0") }
KeyValue { key: Key(b"\x01test_spec\0\x15\x05"), value: Value(b"\x02START_THREAD\0") }
Reading results from '('tester_output', 'workspace')'...
Reading results from '('tester_output', 'stack')'...
Test with seed 2432741821 and concurrency 3 had 0 incorrect result(s) and 0 error(s) at API version 630
Completed api test with random seed 2432741821 and 2 operations
I was a bit surprised to see that it reported 0 incorrect result(s) and 0 error(s)
I was wondering if I was making any mistake in my invocation or use of bindingtester.py
?