diff options
author | Björn Gustavsson <[email protected]> | 2012-10-12 12:16:14 +0200 |
---|---|---|
committer | Björn Gustavsson <[email protected]> | 2012-10-26 11:28:40 +0200 |
commit | 640666b329df0ab6a22af1cde1293df2ef63b88c (patch) | |
tree | 34f062dbbb6379518c981860547e2fe0b331061a /erts/example/matrix_nif.erl | |
parent | a8b2ba096dc48a29af52fd68070089d4bbb37483 (diff) | |
download | otp-640666b329df0ab6a22af1cde1293df2ef63b88c.tar.gz otp-640666b329df0ab6a22af1cde1293df2ef63b88c.tar.bz2 otp-640666b329df0ab6a22af1cde1293df2ef63b88c.zip |
test_server: Refactor run_test_case_msgloop()
Keeping all state as separate function arguments does not make it
easy to add more pieces of data to the state. Case in point is the
CurrConf argument where up to three separate items have been
shoehorned in.
Instead of the arguments, introduce a state record to hold all of the
different pieces of state (taking care to separate the former CurrConf
variable into separate fields in the record).
While at it, fix a bug. The name of the currently executing test
case (module and function) used to be stored in a tuple in the CurrConf
variable, and it would only be available after 'set_curr_conf' message
has been received. Depending on timing, it was possible in rare
circumstances for an EXIT signal to arrive before the 'set_curr_conf'
message. Avoid this problem by putting the current test case
name into the record from the beginning. That also means that we
can eliminate the workaround of getting the currently executing test case
from the stack trace using the get_mf/1.
Diffstat (limited to 'erts/example/matrix_nif.erl')
0 files changed, 0 insertions, 0 deletions