Great idea.
We need to have performance tests and boundary tests, too.
Could you write a script for that? I would like to see how AE performs in extreme conditions. Especially, when the underlying NXT infrastructure make transition to the next block.
I'm in talk with l8orrie, maybe we could use the base of his FreeRider to create a tool that performs some automatic tests, including "special cases" and performance tests. Maybe even use it for continuous regression tests of the complete NXT core?
Here are 7 test cases, i posted again.
a) a ask order match multi bid orders(1-1,1-3 have tested ,1-100+ haven't tested
e.g. bid orders:
quantity 1,price 1
quantity 1,price 2
quantity 1,price 3
...
quantity 1,price 100
ask order
quantity 1000,price 100
b) reverse case a ,1 bid order match 100+ haven't tested
c) more bid orders(100+,1K+,10K+) want only a ask order at the same time
e.g.
e.g. bid orders:
user a: quantity 10,price 100
user b: quantity 10,price 100
user b: quantity 10,price 101
...
user zz: quantity 10,price 100
ask order
quantity 10,price 100
in this case, b should win, if b.price=100,whose.chain long would be win.
d) reverse case c
e) 100+ user Issue same asset at the same time
i think whose.chain long would be win.
f)in case a-e, some of them cacel orders:ask orders,bid orders, and check balance is ok or not.(NRS balance is ok or not)
g) after order match ,check hold asset qty is right or not.
btw l launched a extremely test, place 10 orders at same in 10 threads.