aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/test
AgeCommit message (Collapse)Author
2012-02-21erts: Fallback to blocking upgrade when tracing is enabledSverker Eriksson
2012-02-21test: Force emulator/test/mtx_SUITE to rebuild NIF librarySverker Eriksson
This will prevent test to fail when switching between opt and debug emulator.
2012-02-21test: Safe purging in code_parallel_load_SUITESverker Eriksson
erlang:purge_module/1 is brutal and causes core dump if old code is still executing, especially on debug VM.
2012-02-21test: many_load_distributed_only_onceBjörn-Egil Dahlberg
2012-02-21test: parallel_load_check_purge_repeatBjörn-Egil Dahlberg
* test trivial non-blocking code loading (smoke test)
2012-02-08bif_SUITE: Test for suitable "shadowed by erl_bif_types" commentsBjörn Gustavsson
2012-02-08bif_SUITE: Add test to ensure that all guard BIFs have type infoBjörn Gustavsson
2012-02-08Replace autoimport_SUITE with bif_SUITE:auto_imports/1Björn Gustavsson
erts/test/autoimport_SUITE tested that auto-import information in erl_internal:bif/2 was consistent with the documentation. It did it by scanning erlang.xml. Since the documentation is now based on the specs in erlang.erl, we should now test consistency of the specs and erl_internal:bif/2. Since anyone that adds a new BIF runs the emulator test suite, it makes sense to do this test in bif_SUITE in the emulator test suite.
2012-02-08bif_SUITE: Add test case for specs and BIF stubsBjörn Gustavsson
Rename the existing types/1 test case to erl_bif_types/1 to make it clearer what it does. Also no longer test for missing type information for BIFs (since it has become optional), but only check that the information provided seems to be consistent. Introduce the specs/1 test case to ensure that all BIFs have specs. Also introduce improper_bif_stubs/1 to check for proper stubs. Since the BEAM loader will now silently allow stubs for BIFs, we want to be particular about exactly what a stub look like, so that an Erlang function is not unintentionally overridden by a BIF.
2012-02-07Merge branch 'dgud/sched-work-time/OTP-9858' into maintPatrik Nyblom
* dgud/sched-work-time/OTP-9858: emulator: Document and test scheduler_wall_time Implement statistics(scheduler_wall_time)
2012-02-06emulator: Document and test scheduler_wall_timeDan Gudmundsson
2012-01-26trace_port_SUITE: Skip test cases if 'lists' is native-compiledBjörn Gustavsson
2012-01-26call_trace_SUITE: Skip test cases if libraries are native-compiledBjörn Gustavsson
Skip test cases that trace lists or filename if those modules are native-compiled. While we are at it, also eliminate two compilation warnings.
2012-01-11Merge branch 'sverk/nif_SUITE-skip-threading' into maintSverker Eriksson
* sverk/nif_SUITE-skip-threading: erts: Add missing cleanup to nif_SUITE:threading erts: Skip nif_SUITE:threading if not supported
2012-01-03test: system_profile profiler pid is not profiledBjörn-Egil Dahlberg
2012-01-03Remove line macros in system_profile_SUITEBjörn-Egil Dahlberg
2011-12-27Include wakeup pipe in /dev/poll poll-set also on non-SMPRickard Green
I/O events could potentially be delayed for ever when enabling kernel-poll on a non-SMP runtime system executing on Solaris. When also combined with async-threads the runtime system hung before completing the boot phase. This bug was introduced in erts-5.9/OTP-R15B.
2011-12-19erts: Add missing cleanup to nif_SUITE:threadingSverker Eriksson
2011-12-19erts: Skip nif_SUITE:threading if not supportedSverker Eriksson
2011-12-09Update copyright yearsBjörn-Egil Dahlberg
2011-12-09Merge branch 'raimo/64-bit-driver-api/OTP-9795'Björn Gustavsson
* raimo/64-bit-driver-api/OTP-9795: (22 commits) driver_SUITE.erl: Fix sys info drivers emulator test drivers: Conform to updated driver API runtime_tools's drivers: Conform to updated driver API ws's xwe_driver.c: Conform to updated driver API megaco's flex scanner: Conform to updated driver API seq_trace_SUITE_data/echo_drv.c: Conform to updated driver API erl_interface tests: Conform port_call_drv.c updated driver API erl_drv_thread_SUITE_data/testcase_driver.c: Conform to updated driver API float_SUITE_data/fp_drv.c: Conform to updated driver API port_SUITE_data/*_drv.c: Conform to updated driver API port_bif_SUITE_data/control_drv.c: Conform to updated driver API send_term_SUITE_data/send_term_drv.c: Conform to updated driver API system_profile_SUITE_data/echo_drv.c: Conform to updated driver API trace_port_SUITE_data/echo_drv.c: Conform to updated driver API Remove support for old drivers without ERL_DRV_EXTENDED_MARKER built-in drivers: Add ERL_DRV_EXTENDED_MARKER and version numbers Bump driver version to 2.0 erl_driver.h: Enlarge type on return value from call erl_driver.h: Enlarge types on driver callbacks output, control and call erl_driver.h: Enlarge types in driver output functions ... Conflicts: erts/emulator/test/driver_SUITE_data/monitor_drv.c erts/emulator/test/driver_SUITE_data/timer_drv.c
2011-12-09driver_SUITE.erl: Fix sys info driversRaimo Niskanen
2011-12-09emulator test drivers: Conform to updated driver APIRaimo Niskanen
2011-12-09erl_drv_thread_SUITE_data/testcase_driver.c: Conform to updated driver APIBjörn Gustavsson
2011-12-09float_SUITE_data/fp_drv.c: Conform to updated driver APIBjörn Gustavsson
While at it, include <string.h> to eliminate warnings.
2011-12-09port_SUITE_data/*_drv.c: Conform to updated driver APIBjörn Gustavsson
While at it, eliminate compilation warnings. Eliminate the control callback if it is not used.
2011-12-09port_bif_SUITE_data/control_drv.c: Conform to updated driver APIBjörn Gustavsson
Also include <string.h> to include a prototype for memcpy().
2011-12-09send_term_SUITE_data/send_term_drv.c: Conform to updated driver APIBjörn Gustavsson
2011-12-09system_profile_SUITE_data/echo_drv.c: Conform to updated driver APIBjörn Gustavsson
While at it, also eliminate all compiler warnings. Also remove the control callback since it is not actually used.
2011-12-09trace_port_SUITE_data/echo_drv.c: Conform to updated driver APIBjörn Gustavsson
While at it, also eliminate all compiler warnings.
2011-12-08Merge branch 'rickard/generic-thr-queue/OTP-9632'Rickard Green
* rickard/generic-thr-queue/OTP-9632: Give elements of lock-free queues some time to be deallocated Fix cleanup of elements in lock-free queues
2011-12-08Merge branch 'sverk/misc-valgrind-fixes'Sverker Eriksson
* sverk/misc-valgrind-fixes: erts: Suppress valgrind warning about syscall sendmsg erts: Fix memory leak in test drivers erts: Small fix in inet_drv.c:sctp_set_opts
2011-12-08Merge branch 'egil/file-info-opt-utc/OTP-7687'Björn-Egil Dahlberg
* egil/file-info-opt-utc/OTP-7687: (39 commits) Remove time_t specific test in prim_file_SUITE Update prim_file.beam and prim_zip.beam Add types for posixtime_to_universaltime and the reverse Set BASEYEAR to 1902 Set lower limit of years handled to 1601 Emulate localtime, gmtime and mktime to enable negative time_t Document file:*_file_info/2 Fix compiler warning in unix_efile.c Change name of bif universaltime_to_seconds/1 Change options to prim_file:*_file_info/* Remove dead code Catch errors from prim_file:*_file_info Testcase for utc <-> seconds conversion Fix negative time in seconds_to_universaltime/1 Remove OS taint from datetime conversion Add utc <-> seconds conversions bifs Let prim_file validate ctime in file_info Teach #file_info spec unix epochs for file times Add file_info_opt tests in prim_file_SUITE unix_efile: Zero is a valid number in utime ... Conflicts: erts/emulator/beam/erl_time_sup.c erts/emulator/sys/win32/erl_win_sys.h erts/emulator/sys/win32/sys_time.c
2011-12-08Change name of bif universaltime_to_seconds/1Björn-Egil Dahlberg
* erlang:universaltime_to_seconds/1 changed to erlang:universaltime_to_posixtime/1 * erlang:seconds_to_universaltime/1 changed to erlang:posixtime_to_universaltime/1 Let prim_file.erl reflect these changes.
2011-12-08Testcase for utc <-> seconds conversionBjörn-Egil Dahlberg
2011-12-07Give elements of lock-free queues some time to be deallocatedRickard Green
2011-12-07erts: Fix memory leak in test driversSverker Eriksson
2011-12-07Merge branch 'sverk/packet_size-http/OTP-9389'Sverker Eriksson
* sverk/packet_size-http/OTP-9389: erts: Remove truncation of http packet parsing and return error instead honor packet_size for http packet parsing to fix OTP-9389
2011-12-07Merge branch 'bjorn/erts/code-loading/OTP-9720'Björn Gustavsson
* bjorn/erts/code-loading/OTP-9720: BEAM loader: Fix bug that allowed loading of more than two versions Add code_SUITE:versions/1
2011-12-07Add code_SUITE:versions/1Björn Gustavsson
We did not have test case that ensures that the loader refuses to load a module if there already exists old code for the module.
2011-12-06Unlink test-proc instead of ensuring that it has died before stopping nodeRickard Green
Unlink the test-proc instead of monitoring it and waiting for it to terminate before stopping the node. This since an unlink is faster, simpler and in this case more stable.
2011-12-06Ensure test-proc is dead before stopping nodeRickard Green
2011-12-06Give slow machines more time to compute resultRickard Green
2011-12-06Allow more CPU time in waiting test-casesRickard Green
2011-12-06erts: Remove truncation of http packet parsing and return error insteadSverker Eriksson
This is a slight modification of previous commit by Steve Vinoski For backward compatibility of old users of decode_packet, I think it's enough to return error instead of keeping the old line truncation behaviour.
2011-12-05Skip thread_mseg_alloc_cache_clean() when no mseg_allocRickard Green
2011-12-05honor packet_size for http packet parsing to fix OTP-9389Steve Vinoski
Allow applications to use a packet_size setting on a socket to control acceptable HTTP header line length. This gives them the ability to accept HTTP headers larger than the default settings allow, but also lets them avoid DOS attacks by accepting header lines only up to whatever length they wish to allow. Without this change, if an HTTP request/response line or header arrives on a socket in http, http_bin, httph, or httph_bin parsing mode, and the request/response line or header is too long to fit into a default inet_drv buffer of 1460 bytes, an unexpected error occurs. These problems were described and discussed on erlang-questions in June 2011 in this thread: http://erlang.org/pipermail/erlang-questions/2011-June/059563.html In the original code, no buffer reallocation occurs to enlarge the buffer, even if packet_size or line_length are set in a way that should allow the HTTP data to be parsed properly. The only available workaround was to collect headers and parse them using erlang:decode_packet, but that approach has drawbacks such as having to collect all HTTP header data before it can be handed to decode_packet for correct parsing, and also requiring each and every Erlang web server developer/maintainer to add the workaround to his or her web server. Change the packet parser to honor the packet_size setting for HTTP parsing. If packet_size is set, and an HTTP request/response or header line exceeds the default 1460 byte TCP buffer limit, return an indication to tcp_remain that it should realloc the buffer to enlarge it to packet_size. Also fix the HTTP parsing code to properly honor line_length by truncating any HTTP request/response or header lines that exceed that setting. For backward compatibility, default behavior is unchanged; if an application wants to be able to accept long HTTP header lines, it must set packet_size to an appropriate value. Buffer reallocation occurs only when needed, so the original default buffer size in the code is still the default. Make the line mode parsing honor packet_size as well, for consistency. Add new regression tests to the emulator decode_packet suite and also to the kernel gen_tcp_misc suite. The documentation for packet_size in inet:setopts/2 is already sufficient. Many thanks to Sverker Eriksson for his guidance on how to best fix this bug and also for reviewing a number of patch attempts prior to this one.
2011-12-02sensitive_SUITE: Fix spuriously failing recv_trace/1Björn Gustavsson
Only three messages are guaranteed to be in message queue of the tracer process. The second {trace_delivered,_,_} message may or may not be there.
2011-12-02Iron out bugs in Win64 found in daily buildsPatrik Nyblom
Almost all uses of the 'long' datatype is removed from VM and tests Emulator test now runs w/o drivers crashing Nasty abs bug fixed in VM as well as type errors in allocator debug functions Still one allocator test that fails, domain knowledge is needed to fix that. Fix type inconsistency in beam_load causing crashes
2011-11-29big_SUITE: Eliminate use of tuple funBjörn Gustavsson
It seems that a tuple fun was used only because erl_eval:expr/3 did not support passing in a real fun at the time that the test case was originally written.