diff options
Diffstat (limited to 'lib/kernel/test/esock_misc/esock_iow_lib.erl')
-rw-r--r-- | lib/kernel/test/esock_misc/esock_iow_lib.erl | 123 |
1 files changed, 123 insertions, 0 deletions
diff --git a/lib/kernel/test/esock_misc/esock_iow_lib.erl b/lib/kernel/test/esock_misc/esock_iow_lib.erl new file mode 100644 index 0000000000..6fc1365dca --- /dev/null +++ b/lib/kernel/test/esock_misc/esock_iow_lib.erl @@ -0,0 +1,123 @@ +%% +%% %CopyrightBegin% +%% +%% Copyright Ericsson AB 2020-2020. All Rights Reserved. +%% +%% Licensed under the Apache License, Version 2.0 (the "License"); +%% you may not use this file except in compliance with the License. +%% You may obtain a copy of the License at +%% +%% http://www.apache.org/licenses/LICENSE-2.0 +%% +%% Unless required by applicable law or agreed to in writing, software +%% distributed under the License is distributed on an "AS IS" BASIS, +%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +%% See the License for the specific language governing permissions and +%% limitations under the License. +%% +%% %CopyrightEnd% +%% + +-module(esock_iow_lib). + +-export([ + format_counters/1, format_counters/2, format_counters/3, + iprint/1, iprint/2, + eprint/1, eprint/2, + f/2, + fts/0, fts/1 + ]). + + +%% --------------------------------------------------------------------- + +format_counters(Counters) -> + format_counters(traffic, Counters). + +format_counters(Type, Counters) when (Type =:= listen) orelse (Type =:= traffic) -> + format_counters(" ", Type, Counters). + +format_counters(Prefix, traffic, Counters) -> + ReadByte = proplists:get_value(read_byte, Counters, -1), + ReadFails = proplists:get_value(read_fails, Counters, -1), + ReadPkg = proplists:get_value(read_pkg, Counters, -1), + ReadPkgMax = proplists:get_value(read_pkg_max, Counters, -1), + ReadTries = proplists:get_value(read_tries, Counters, -1), + ReadWaits = proplists:get_value(read_waits, Counters, -1), + WriteByte = proplists:get_value(write_byte, Counters, -1), + WriteFails = proplists:get_value(write_fails, Counters, -1), + WritePkg = proplists:get_value(write_pkg, Counters, -1), + WritePkgMax = proplists:get_value(write_pkg_max, Counters, -1), + WriteTries = proplists:get_value(write_tries, Counters, -1), + WriteWaits = proplists:get_value(write_waits, Counters, -1), + f("~n~sNumber Of Read Bytes: ~p" + "~n~sNumber Of Read Fails: ~p" + "~n~sNumber Of Read Packages: ~p" + "~n~sNumber Of Read Tries: ~p" + "~n~sNumber Of Read Waits: ~p" + "~n~sMax Read Package Size: ~p" + "~n~sNumber Of Write Bytes: ~p" + "~n~sNumber Of Write Fails: ~p" + "~n~sNumber Of Write Packages: ~p" + "~n~sNumber Of Write Tries: ~p" + "~n~sNumber Of Write Waits: ~p" + "~n~sMax Write Package Size: ~p", + [Prefix, ReadByte, + Prefix, ReadFails, + Prefix, ReadPkg, + Prefix, ReadTries, + Prefix, ReadWaits, + Prefix, ReadPkgMax, + Prefix, WriteByte, + Prefix, WriteFails, + Prefix, WritePkg, + Prefix, WriteTries, + Prefix, WriteWaits, + Prefix, WritePkgMax]); + +format_counters(Prefix, listen, Counters) -> + AccSuccess = proplists:get_value(acc_success, Counters, -1), + AccFails = proplists:get_value(acc_fails, Counters, -1), + AccTries = proplists:get_value(acc_tries, Counters, -1), + AccWaits = proplists:get_value(acc_waits, Counters, -1), + f("~n~sNumber Of Successful Accepts: ~p" + "~n~sNumber Of Failed Accepts: ~p" + "~n~sNumber Of Accept Attempts: ~p" + "~n~sNumber Of Accept Waits: ~p", + [Prefix, AccSuccess, + Prefix, AccFails, + Prefix, AccTries, + Prefix, AccWaits]). + +%% --------------------------------------------------------------------- + +iprint(F) -> + iprint(F, []). + +iprint(F, A) -> + print("INFO", F, A). + +eprint(F) -> + iprint(F, []). + +eprint(F, A) -> + print("ERROR", F, A). + +print(Pre, F, A) -> + io:format("*** ~s *** ~s ~n" ++ F ++ "~n~n", [Pre, fts() | A]). + + +f(F, A) -> + lists:flatten(io_lib:format(F, A)). + + +ts() -> + os:timestamp(). + +fts() -> + fts(ts()). + +fts({_N1, _N2, N3} = TS) -> + {_Date, Time} = calendar:now_to_local_time(TS), + {Hour,Min,Sec} = Time, + f("~.2.0w:~.2.0w:~.2.0w.4~w", [Hour, Min, Sec, round(N3/1000)]). |