Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:Ledest:erlang:25
erlang
3141-otp_SUITE-Update-tests-for-non-recommended...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 3141-otp_SUITE-Update-tests-for-non-recommended-functions.patch of Package erlang
From c089382b5bb889371a9452f8b4f7314711e371b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Gustavsson?= <bjorn@erlang.org> Date: Fri, 17 Feb 2023 06:28:16 +0100 Subject: [PATCH] otp_SUITE: Update tests for non-recommended functions * There are no longer any calls to the `size/1` function in any OTP application. `size/1` is not formally deprecated, but its use is not recommended, and we should not use it in OTP code. From now on, use of `size/1` in any OTP application will cause the `otp_SUITE:call_to_size_1/1` test to fail. * The only uses of the deprecated `now/0` function is from the `et` application. From now on, `otp_SUITE:call_to_now_0/1` will forbid calls to `now/0` from any other application than `et`. --- erts/test/otp_SUITE.erl | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/erts/test/otp_SUITE.erl b/erts/test/otp_SUITE.erl index 7552dc80b3..1eccb59875 100644 --- a/erts/test/otp_SUITE.erl +++ b/erts/test/otp_SUITE.erl @@ -218,17 +218,13 @@ call_to_deprecated(Config) when is_list(Config) -> {comment,integer_to_list(length(DeprecatedCalls))++" calls to deprecated functions"}. call_to_size_1(Config) when is_list(Config) -> - %% Applications that do not call erlang:size/1: - Apps = [asn1,compiler,debugger,kernel,observer,parsetools, - runtime_tools,stdlib,tools], + %% Forbid the use of erlang:size/1 in all applications. + Apps = all_applications(Config), not_recommended_calls(Config, Apps, {erlang,size,1}). call_to_now_0(Config) when is_list(Config) -> - %% Applications that do not call erlang:now/1: - Apps = [asn1,common_test,compiler,debugger,dialyzer, - kernel,mnesia,observer,parsetools,reltool, - runtime_tools,sasl,stdlib,syntax_tools, - tools], + %% Forbid the use of erlang:now/1 in all applications except et. + Apps = all_applications(Config) -- [et], not_recommended_calls(Config, Apps, {erlang,now,0}). not_recommended_calls(Config, Apps0, MFA) -> @@ -281,9 +277,14 @@ not_recommended_calls(Config, Apps0, MFA) -> {comment, Mess} end; _ -> - ct:fail({length(CallsToMFA),calls_to_size_1}) + ct:fail({length(CallsToMFA),calls_to,MFA}) end. +all_applications(Config) -> + Server = proplists:get_value(xref_server, Config), + {ok,AllApplications} = xref:q(Server, "A"), + AllApplications. + is_present_application(Name, Server) -> Q = io_lib:format("~w : App", [Name]), case xref:q(Server, lists:flatten(Q)) of -- 2.35.3
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor