From dbb5c6253f9e1d9371be2c883a324fea1119c61f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B6rn=20Gustavsson?=
Date: Thu, 26 Jan 2012 15:53:52 +0100
Subject: call_trace_SUITE: Skip test cases if libraries are native-compiled
Skip test cases that trace lists or filename if those modules are
native-compiled.
While we are at it, also eliminate two compilation warnings.
---
erts/emulator/test/call_trace_SUITE.erl | 57 +++++++++++++++++++++------------
1 file changed, 37 insertions(+), 20 deletions(-)
(limited to 'erts')
diff --git a/erts/emulator/test/call_trace_SUITE.erl b/erts/emulator/test/call_trace_SUITE.erl
index 3e2bee06d1..7030ebed3f 100644
--- a/erts/emulator/test/call_trace_SUITE.erl
+++ b/erts/emulator/test/call_trace_SUITE.erl
@@ -165,10 +165,14 @@ worker_loop() ->
worker_foo(_Arg) ->
ok.
-basic(doc) ->
- "Basic test of the call tracing (we trace one process).";
-basic(suite) -> [];
-basic(Config) when is_list(Config) ->
+%% Basic test of the call tracing (we trace one process).
+basic(_Config) ->
+ case test_server:is_native(lists) of
+ true -> {skip,"lists is native"};
+ false -> basic()
+ end.
+
+basic() ->
?line start_tracer(),
?line trace_info(self(), flags),
?line trace_info(self(), tracer),
@@ -263,9 +267,15 @@ foo() -> foo0.
foo(X) -> X+1.
foo(X, Y) -> X+Y.
-flags(doc) -> "Test flags (arity, timestamp) for call_trace/3. "
- "Also, test the '{tracer,Pid}' option.";
-flags(Config) when is_list(Config) ->
+%% Test flags (arity, timestamp) for call_trace/3.
+%% Also, test the '{tracer,Pid}' option.
+flags(_Config) ->
+ case test_server:is_native(filename) of
+ true -> {skip,"filename is native"};
+ false -> flags()
+ end.
+
+flags() ->
?line Tracer = start_tracer_loop(),
?line trace_pid(self(), true, [call,{tracer,Tracer}]),
@@ -428,9 +438,14 @@ pam_foo(A, B) ->
{ok,A,B}.
-change_pam(doc) -> "Test changing PAM programs for a function.";
-change_pam(suite) -> [];
-change_pam(Config) when is_list(Config) ->
+%% Test changing PAM programs for a function.
+change_pam(_Config) ->
+ case test_server:is_native(lists) of
+ true -> {skip,"lists is native"};
+ false -> change_pam()
+ end.
+
+change_pam() ->
?line start_tracer(),
?line Self = self(),
@@ -468,10 +483,11 @@ change_pam_trace(Prog) ->
{match_spec,Prog} = trace_info({erlang,process_info,2}, match_spec),
ok.
-return_trace(doc) -> "Test the new return trace.";
-return_trace(suite) -> [];
-return_trace(Config) when is_list(Config) ->
- return_trace().
+return_trace(_Config) ->
+ case test_server:is_native(lists) of
+ true -> {skip,"lists is native"};
+ false -> return_trace()
+ end.
return_trace() ->
X = {save,me},
@@ -521,7 +537,7 @@ return_trace() ->
?line {match_spec,Prog2} = trace_info({erlang,atom_to_list,1}, match_spec),
?line lists:seq(2, 7),
- ?line atom_to_list(non_literal(nisse)),
+ ?line _ = atom_to_list(non_literal(nisse)),
?line expect({trace,Self,return_from,{lists,seq,2},[2,3,4,5,6,7]}),
?line expect({trace,Self,return_from,{erlang,atom_to_list,1},"nisse"}),
@@ -539,10 +555,11 @@ return_trace() ->
nasty() ->
exit(good_bye).
-exception_trace(doc) -> "Test the new exception trace.";
-exception_trace(suite) -> [];
-exception_trace(Config) when is_list(Config) ->
- exception_trace().
+exception_trace(_Config) ->
+ case test_server:is_native(lists) of
+ true -> {skip,"lists is native"};
+ false -> exception_trace()
+ end.
exception_trace() ->
X = {save,me},
@@ -600,7 +617,7 @@ exception_trace() ->
trace_info({erlang,atom_to_list,1}, match_spec),
?line lists:seq(2, 7),
- ?line atom_to_list(non_literal(nisse)),
+ ?line _ = atom_to_list(non_literal(nisse)),
?line expect({trace,Self,return_from,{lists,seq,2},[2,3,4,5,6,7]}),
?line expect({trace,Self,return_from,{erlang,atom_to_list,1},"nisse"}),
--
cgit v1.2.3
From 2c8422734af6d0415f8efe60d5dfdceae36c2862 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B6rn=20Gustavsson?=
Date: Thu, 26 Jan 2012 16:00:00 +0100
Subject: trace_port_SUITE: Skip test cases if 'lists' is native-compiled
---
erts/emulator/test/trace_port_SUITE.erl | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
(limited to 'erts')
diff --git a/erts/emulator/test/trace_port_SUITE.erl b/erts/emulator/test/trace_port_SUITE.erl
index 0026da4979..b0ce6f81db 100644
--- a/erts/emulator/test/trace_port_SUITE.erl
+++ b/erts/emulator/test/trace_port_SUITE.erl
@@ -77,7 +77,8 @@ end_per_testcase(_Func, Config) ->
call_trace(doc) -> "Test sending call trace messages to a port.";
call_trace(Config) when is_list(Config) ->
- case test_server:is_native(?MODULE) of
+ case test_server:is_native(?MODULE) orelse
+ test_server:is_native(lists) of
true ->
{skip,"Native code"};
false ->
@@ -128,7 +129,8 @@ bs_sum_c(<<>>, Acc) -> Acc.
return_trace(doc) -> "Test the new return trace.";
return_trace(Config) when is_list(Config) ->
- case test_server:is_native(?MODULE) of
+ case test_server:is_native(?MODULE) orelse
+ test_server:is_native(lists) of
true ->
{skip,"Native code"};
false ->
--
cgit v1.2.3
From 7ec7e60aea883bbc7d09e7dd6b68061ee8c6b15b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B6rn=20Gustavsson?=
Date: Thu, 2 Feb 2012 09:24:52 +0100
Subject: erlang.xml: Fix a few typos and grammatical errors
---
erts/doc/src/erlang.xml | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
(limited to 'erts')
diff --git a/erts/doc/src/erlang.xml b/erts/doc/src/erlang.xml
index 8c01d77721..a21021d864 100644
--- a/erts/doc/src/erlang.xml
+++ b/erts/doc/src/erlang.xml
@@ -215,9 +215,9 @@
representation of Atom. If Encoding
is latin1, there will be one byte for each character
in the text representation. If Encoding is utf8 or
- unicode, the characters will encoded using UTF-8
+ unicode, the characters will be encoded using UTF-8
(meaning that characters from 16#80 up to 0xFF will be
- encode in two bytes).
+ encoded in two bytes).
Currently, atom_to_binary(Atom, latin1) can
never fail because the text representation of an atom can only contain
@@ -268,7 +268,7 @@
If PosLen in any way references outside the binary, a badarg exception is raised.
- Start is zero-based, i.e:
+ Start is zero-based, i.e.:
1> Bin = <<1,2,3>>
2> binary_part(Bin,{0,2}).
@@ -773,9 +773,9 @@ false
turned off, nothing happens.
Once demonitor(MonitorRef) has returned it is
guaranteed that no {'DOWN', MonitorRef, _, _, _} message
- due to the monitor will be placed in the callers message queue
+ due to the monitor will be placed in the caller's message queue
in the future. A {'DOWN', MonitorRef, _, _, _} message
- might have been placed in the callers message queue prior to
+ might have been placed in the caller's message queue prior to
the call, though. Therefore, in most cases, it is advisable
to remove such a 'DOWN' message from the message queue
after monitoring has been stopped.
@@ -818,7 +818,7 @@ false
flush
-
Remove (one) {_, MonitorRef, _, _, _} message,
- if there is one, from the callers message queue after
+ if there is one, from the caller's message queue after
monitoring has been stopped.
Calling demonitor(MonitorRef, [flush])
is equivalent to the following, but more efficient:
@@ -847,7 +847,7 @@ false
The monitor was not found and could not be removed.
This probably because someone already has placed a
'DOWN' message corresponding to this monitor
- in the callers message queue.
+ in the caller's message queue.
@@ -7090,7 +7090,7 @@ true
Id has no effect on the caller in the future (unless
the link is setup again). If caller is trapping exits, an
{'EXIT', Id, _} message due to the link might have
- been placed in the callers message queue prior to the call,
+ been placed in the caller's message queue prior to the call,
though. Note, the {'EXIT', Id, _} message can be the
result of the link, but can also be the result of Id
calling exit/2. Therefore, it may be
--
cgit v1.2.3