| -module(recon_lib_SUITE). |
| -include_lib("common_test/include/ct.hrl"). |
| -compile(export_all). |
| |
| all() -> [scheduler_usage_diff, sublist_top_n, term_to_pid]. |
| |
| scheduler_usage_diff(_Config) -> |
| {Active0, Total0} = {1000, 2000}, |
| SchedStat0 = {1, Active0, Total0}, |
| % No active or total time has elapsed. Make sure we don't divide by zero. |
| [{1, 0.0}] = recon_lib:scheduler_usage_diff([SchedStat0], [SchedStat0]), |
| % Total time has elapsed, but no active time. Make sure we get 0 usage back. |
| SchedStat1 = {1, Active0, Total0 * 2}, |
| [{1, 0.0}] = recon_lib:scheduler_usage_diff([SchedStat0], [SchedStat1]), |
| % Check for 100% usage |
| SchedStat2 = {1, Active0 + 1000, Total0 + 1000}, |
| [{1, 1.0}] = recon_lib:scheduler_usage_diff([SchedStat0], [SchedStat2]). |
| |
| sublist_top_n(_Config) -> |
| L0 = [1,1,2,4,5,6,0,8,7,4,5,2,1,8,agbg,{t},3,[bah],"te",<<"bin">>,23.0, 23], |
| L = [{make_ref(), Val, [{meta,data}]} || Val <- L0], |
| %% former sort function used prior to integraton of sublist_top_n |
| Sorted = lists:usort(fun({_,A,_},{_,B,_}) -> A > B end, L), |
| [begin |
| Sub = (catch lists:sublist(Sorted, N)), |
| ct:pal("Sub ~p: ~p", [N, Sub]), |
| Sub = (catch recon_lib:sublist_top_n_attrs(L, N)) |
| end || N <- lists:seq(0, length(L)+1)], |
| ok. |
| |
| term_to_pid(_Config) -> |
| Pid = self(), |
| Pid = recon_lib:term_to_pid(Pid), |
| List = pid_to_list(Pid), |
| Pid = recon_lib:term_to_pid(List), |
| Binary = list_to_binary(List), |
| Pid = recon_lib:term_to_pid(Binary), |
| Name = foo, |
| register(Name, Pid), |
| Pid = recon_lib:term_to_pid(Name), |
| yes = global:register_name(Name, Pid), |
| Pid = recon_lib:term_to_pid({global, Name}), |
| Sublist = lists:sublist(List, 2, length(List)-2), |
| Ints = [ element(1, string:to_integer(T)) || T <- string:tokens(Sublist, ".")], |
| Triple = list_to_tuple(Ints), |
| Pid = recon_lib:term_to_pid(Triple), |
| ok. |