aboutsummaryrefslogtreecommitdiffstats
path: root/lib/stdlib/test
AgeCommit message (Collapse)Author
2015-01-17Prevent zip:zip_open/1,2 from leaking portsDaniel White
The case was discovered where a parent process would exit before closing the zip file. The result was that a port would be left open indefinitely, as the small zip server would not detect this condition. By comparison, the file module will close the associated port when the parent exits for any reason. This change would make the zip module more consistent with the semantics of similar modules. This change is breaking for any callers expecting to pass the handle to another process for processing (assuming it exits).
2014-12-29Merge branch 'lemenkov/use_os_getenv_2'Marcus Arendt
* lemenkov/use_os_getenv_2: fix missing include Start using os:getenv/2 fun Introduce os:getenv/2
2014-12-16Merge branch 'sverk/ets-take-2/OTP-12309'Sverker Eriksson
* sverk/ets-take-2/OTP-12309: erts: Optimize ets:lookup and ets:take for bags Implement ets:take/2
2014-12-15Start using os:getenv/2 funPeter Lemenkov
See #535 Signed-off-by: Peter Lemenkov <[email protected]>
2014-11-26Merge branch 'maint'Dan Gudmundsson
2014-11-26Merge branch 'dgud/testcasecuddling' into maintDan Gudmundsson
* dgud/testcasecuddling: stdlib: Fix timing issue in testcase
2014-11-20Merge branch 'maint'Henrik Nord
2014-11-20Merge branch 'legoscia/io-message-queue-optimisation' into maintHenrik Nord
* legoscia/io-message-queue-optimisation: Optimise io requests for long message queues
2014-11-20stdlib: remove the last traces of Mnemosyne RulesHans Bolinder
Robert has OK'ed the removal of the token ':-'.
2014-11-18Merge branch 'maint'Hans Nilsson
2014-11-18erl_tar: Extend api to define own storage media access functions.Hans Nilsson
The reason for this is a requirement on enabling ssh_sftp to write a tar file on the server. This new api function is used by ssh_sftp:open_tar/3,4.
2014-11-17Merge branch 'maint'Björn Gustavsson
* maint: Fix miscompilation when module contains multiple named funs Fix locations of shadowing warnings in ms_transform
2014-11-17Merge branch 'nox/stdlib/ms_transform-locate-shadow-warning/OTP-12264' into ↵Björn Gustavsson
maint * nox/stdlib/ms_transform-locate-shadow-warning/OTP-12264: Fix locations of shadowing warnings in ms_transform
2014-11-13Merge branch 'hb/stdlib/fix_qlc_test'Hans Bolinder
* hb/stdlib/fix_qlc_test: stdlib: fix a bug in qlc_SUITE.erl
2014-11-11Merge branch 'maint'Peter Andersson
2014-11-10Merge branch 'capflam/remove_empty_parts_in_binary_split'Bruce Yinhe
OTP-12301 * capflam/remove_empty_parts_in_binary_split: Add 'trim_all' option to binary:split/3
2014-11-07Add stack trace for gen_server exit in ERROR REPORTSiri Hansen
If a callback function was terminated with exit/1, there would be no stack trace in the ERROR REPORT produced by gen_server. This has been corrected. The actual exit reason for the process is not changed.
2014-11-06Merge branch 'siri/sup-spec-maps/OTP-11043'Siri Hansen
* siri/sup-spec-maps/OTP-11043: Update emacs skeleton for supervisor to use maps Update dialyzer test with maps in supervisor properties Add documentation of maps in supervisor flags and child specs Add test of maps in supervisor flags and child specs New function supervisor:get_childspec/2 Allow maps for supervisor flags and child specs Rebase supervisor Add more tests of supervisor
2014-11-06Add test of maps in supervisor flags and child specsSiri Hansen
2014-10-29Add 'trim_all' option to binary:split/3Christopher Faulet
This option can be set to remove _ALL_ empty parts of the result of a call to binary:split/3.
2014-10-24Merge branch 'siri/test-upgrade'Siri Hansen
* siri/test-upgrade: Add upgrade test in stdlib_SUITE [ct] Add ct_release_tests.erl Specify tar-file as basename in upgrade_SUITE
2014-10-23stdlib: fix a bug in qlc_SUITE.erlHans Bolinder
2014-10-23Merge branch 'maint'Hans Bolinder
* maint: Fix rare race condition in Dets
2014-10-23Fix rare race condition in DetsHans Bolinder
The correction is due to the the evil testcase dets_SUITE:simultaneous_open(). If the process repairing a Dets file is killed (should normally never happen), and another process tries to repair the file, a temporary file from the first process could live on for a while, even after a successful call to file:delete(). This has only been seen on W-nd-ows, where it is a known problem. There are other ways to deal with the problem (rename the file; use some other filename), but we continue using one certain filename in order to be as backwards compatible as possible.
2014-10-20Add upgrade test in stdlib_SUITESiri Hansen
...using ct_release_test:upgrade/4
2014-10-08Add more tests of supervisorSiri Hansen
Add tests of code_change/3 and error handling of supervisor flags.
2014-10-03Merge branch 'egil/maps/variable-keys/OTP-12218'Björn-Egil Dahlberg
* egil/maps/variable-keys/OTP-12218: (22 commits) compiler: Update test for Maps aliasing compiler: Properly support Map aliasing compiler: Refactor Map pairs aliasing compiler: Fix harmless need_heap error for Maps stdlib: Update Map tests stdlib: Use environment bindings for Maps keys in erl_eval matching debugger: Update Map tests compiler: Update Map tests compiler: Fix v3_core Maps pair chains compiler: Use expressions in core patterns compiler: Use variables in Map cerl inliner compiler: Reintroduce binary limit for Map keys compiler: Shameless v3_core hack for variables compiler: Use variables in Map beam assmebler compiler: Use variables in Map kernel pass compiler: Use variables in Map core pass compiler: Normalize unary ops on Maps key literals stdlib: Update Map tests stdlib: erl_lint Map key variables compiler: Maps are always patterns never values in matching ...
2014-10-02Merge branch 'siri/filename-join-2/OTP-12158'Siri Hansen
* siri/filename-join-2/OTP-12158: Fix handling of single dot in filename:join/2
2014-10-01Merge branch 'maint'Björn-Egil Dahlberg
2014-10-01Merge branch 'ap/attribute_fun_arity_in_map/OTP-12213' into maintBjörn-Egil Dahlberg
* ap/attribute_fun_arity_in_map/OTP-12213: stdlib: Test Map attributes via erl_pp stdlib: erl_parse abstract Maps stdlib: Refactor ?line in erl_pp_SUITE:misc_attrs stdlib: Refactor Maps farity attributes Allow Name/Arity syntax in maps inside attributes
2014-10-01Merge branch 'maint'Marcus Arendt
2014-10-01Merge branch 'capflam/filelib_wildcard_fix' into maintMarcus Arendt
* capflam/filelib_wildcard_fix: Fix filelib:wildcard/2 when 'Cwd' ends with a dot
2014-09-30stdlib: Test Map attributes via erl_ppBjörn-Egil Dahlberg
2014-09-30stdlib: Refactor ?line in erl_pp_SUITE:misc_attrsBjörn-Egil Dahlberg
2014-09-30Merge branch 'maint'Henrik Nord
2014-09-25Fix handling of single dot in filename:join/2Siri Hansen
The reference manual says that filename:join(A,B) is equivalent to filename:join([A,B]). In some rare cases this turns out not to be true: 1> filename:join("/a/.","b"). "/a/./b" 2> filename:join(["/a/.","b"]). "/a/b" In general, filename:join/1,2 removes single dots from the resulting path, except dots that occur at the beginning or end of the path. The problem above occurs when the first argument to join/2 ends with a dot, then it is not removed even if the second argument differs from an empty string and thus the dot ends up in "the middle" of the path. This commit corrects this problem. A single dot is now only kept if it occurs at the very beginning or the very end of the resulting path. Test of filename:join/1,2 are added in filename_SUITE. In addition, filelib_SUITE is updated with more tests of filelib:wildcard/2 since this failed when the given current directory (second argument) ended with a dot.
2014-09-25Do not test appup of core apps for upgrade from current vsnSiri Hansen
The appup tests for kernel, stdlib and sasl tests that the appup file allows upgrade from the previous and current major release to the current release. If, in the current release, the application version was not changed compared to the previous release, then we would still test that the appup supported the upgrade (i.e. from current release to current release). This is now changed, in order to avoid test failures on patch releases where kernel, stdlib and sasl are not changed.
2014-09-24stdlib: Fix timing issue in testcaseDan Gudmundsson
Another error message is generated when the process exits, ignore it.
2014-09-22Merge branch 'nox/fix-exporting-rules/OTP-12186'Marcus Arendt
* nox/fix-exporting-rules/OTP-12186: Rewrite merge of clause variable tables (in case, try, etc)
2014-09-19Optimise io requests for long message queuesMagnus Henoch
Ensure that the monitor reference is present in all receive clauses, so that the compiler optimisation kicks in and the run time won't depend on the length of the message queue of the calling process. Remove the 'EXIT' clause, as its presence breaks the optimisation, and that case is handled by the 'DOWN' clause anyway. The test io_SUITE:io_with_huge_message_queue is an adaptation of gen_server_SUITE:call_with_huge_message_queue.
2014-09-04Merge branch 'maint'Björn-Egil Dahlberg
2014-09-04Merge branch 'egil/maps-with-doc-tests/OTP-12137' into maintBjörn-Egil Dahlberg
* egil/maps-with-doc-tests/OTP-12137: stdlib: Test maps:with/2 stdlib: Document maps:with/2
2014-09-01Merge branch 'maint'Marcus Arendt
2014-09-01Merge branch 'nox/erl_scan-fix-column-tracking' into maintMarcus Arendt
* nox/erl_scan-fix-column-tracking: Properly track column numbers in erl_scan
2014-08-28Merge branch 'maint'Dan Gudmundsson
2014-08-28Merge branch 'dgud/stdlib/format_status_terminate/OTP-11967' into maintDan Gudmundsson
* dgud/stdlib/format_status_terminate/OTP-11967: stdlib: Call format_status even if terminate callback crashes
2014-08-26stdlib: Update Map testsBjörn-Egil Dahlberg
2014-08-26stdlib: Test maps:with/2Björn-Egil Dahlberg
2014-08-22stdlib: Update Map testsBjörn-Egil Dahlberg
2014-08-02Rewrite merge of clause variable tables (in case, try, etc)Anthony Ramine
erl_lint:icrt_export/4 has been rewritten to make the code really follow the scoping rules of Erlang, and not just in most situations by accident. * The function should not depend on calling unused_vars/3 because that function does not return variables which begins with an underscore, something that only matters when emitting warnings. This could cause a compiler crash if such a variable was reused afterwards. * The variable tables from each clause are first merged together, lists:merge/1 is safe to use because they are orddicts and thus already sorted. This list is then traversed parallelly to the old variable table, again taking advantage of their sorted order. * The function does not emit warnings itself, there is no need to pass around the lint state. In the same vein, vtunsafe/3 has been rewritten to do more things by itself, given that all of its calls were similar. Finally, compiled-out code has been removed. * This reverts the code in 9ce148b1059e4da746a11f1d80a653340216c468, which fixed the compiler crash and made erl_lint remember unsafe variables, but forget about unused variables in the process. * Other places of the code which relied on the old clunky behaviour were also updated: unused and unsafe old variables are forgotten when merging fun clauses and boolean shortcircuiting operators do not rely on icrt_export/3 anymore.