diff options
author | Hans Bolinder <[email protected]> | 2012-03-20 13:31:20 +0100 |
---|---|---|
committer | Hans Bolinder <[email protected]> | 2012-03-20 13:31:20 +0100 |
commit | 837047b4c9b0f1ac4bcb8e27fb0db36ccc317385 (patch) | |
tree | d287bac6007f35b645d30ca300740d4c65b5798e /lib/stdlib/test | |
parent | 75c1050ae68d6914cf9be4f7e7267c0c4b12f157 (diff) | |
download | otp-837047b4c9b0f1ac4bcb8e27fb0db36ccc317385.tar.gz otp-837047b4c9b0f1ac4bcb8e27fb0db36ccc317385.tar.bz2 otp-837047b4c9b0f1ac4bcb8e27fb0db36ccc317385.zip |
Correct a minor bug in qlc's testsuite
Diffstat (limited to 'lib/stdlib/test')
-rw-r--r-- | lib/stdlib/test/qlc_SUITE.erl | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/lib/stdlib/test/qlc_SUITE.erl b/lib/stdlib/test/qlc_SUITE.erl index 50a76cdfb5..1e74ad7727 100644 --- a/lib/stdlib/test/qlc_SUITE.erl +++ b/lib/stdlib/test/qlc_SUITE.erl @@ -1,7 +1,7 @@ %% %% %CopyrightBegin% %% -%% Copyright Ericsson AB 2004-2011. All Rights Reserved. +%% Copyright Ericsson AB 2004-2012. All Rights Reserved. %% %% The contents of this file are subject to the Erlang Public License, %% Version 1.1, (the "License"); you may not use this file except in @@ -7927,15 +7927,23 @@ run_test(Config, Extra, {cres, Body, Opts, ExpectedCompileReturn}) -> ok end, + wait_for_expected(R, Before, SourceFile, true), + code:purge(Mod); +run_test(Config, Extra, Body) -> + run_test(Config, Extra, {cres,Body,[]}). + +wait_for_expected(R, Before, SourceFile, Wait) -> Ms = erlang:process_info(self(),messages), After = {get(), pps(), ets:all(), Ms}, - code:purge(Mod), case {R, After} of - {ok, Before} -> ok; - _ -> expected({ok,Before}, {R,After}, SourceFile) - end; -run_test(Config, Extra, Body) -> - run_test(Config, Extra, {cres,Body,[]}). + {ok, Before} -> + ok; + _ when Wait -> + timer:sleep(1000), + wait_for_expected(R, Before, SourceFile, false); + _ -> + expected({ok,Before}, {R,After}, SourceFile) + end. unload_pt() -> erlang:garbage_collect(), % get rid of references to qlc_pt... |