diff --git a/gajumaru-core/test/src/gmt.erl b/gajumaru-core/test/src/gmt.erl index 6dfb698..f0f4155 100644 --- a/gajumaru-core/test/src/gmt.erl +++ b/gajumaru-core/test/src/gmt.erl @@ -241,7 +241,8 @@ gaju_format() -> JavaResults = string:split(trim(unicode:characters_to_list(ResContent)), "\n", all), length(Cases) =:= length(JavaResults) andalso compare_results(Cases, JavaResults); {error, Reason} -> - io:format("Failed to read Java results from: ~tp (Reason: ~tp)~nRaw Output: ~ts~n", [JavaResPath, Reason, RawOut]), + Format = "Failed to read Java results from: ~tp (Reason: ~tp)~nRaw Output: ~ts~n", + io:format(Format, [JavaResPath, Reason, RawOut]), false end. @@ -268,13 +269,15 @@ gen_case(amount) -> Style = random_style(), Sep = lists:nth(rand:uniform(2), [$,, $_]), Span = rand:uniform(4), - {amount, Style, Unit, Sep, Span, Pucks, hz_format:amount(Unit, hz_style(Style, Sep, Span), Pucks)}; + Amount = hz_format:amount(Unit, hz_style(Style, Sep, Span), Pucks), + {amount, Style, Unit, Sep, Span, Pucks, Amount}; gen_case(approx) -> Pucks = random_pucks(12), Sep = lists:nth(rand:uniform(2), [$,, $_]), Span = rand:uniform(2) + 2, Prec = rand:uniform(18), - {approx, us, gaju, Sep, Span, Pucks, Prec, hz_format:approx_amount({Sep, Span}, Prec, Pucks)}. + Approx = hz_format:approx_amount({Sep, Span}, Prec, Pucks), + {approx, us, gaju, Sep, Span, Pucks, Prec, Approx}. random_pucks(MaxBytes) -> Bytes = rand:bytes(rand:uniform(MaxBytes)), @@ -289,11 +292,17 @@ random_unit() -> hz_style(us, Sep, Span) -> {Sep, Span}; hz_style(Style, _, _) -> Style. -serialize_case({amount, Style, Unit, Sep, Span, Pucks, _Expected}) -> - io_lib:format("amount|~ts|~ts|~c|~b|~b", [string:uppercase(atom_to_list(Style)), string:uppercase(atom_to_list(Unit)), Sep, Span, Pucks]); -serialize_case({approx, Style, Unit, Sep, Span, Pucks, Prec, _Expected}) -> - io_lib:format("approx|~ts|~ts|~c|~b|~b|~b", [string:uppercase(atom_to_list(Style)), string:uppercase(atom_to_list(Unit)), Sep, Span, Pucks, Prec]); -serialize_case({read, Input, _Expected}) -> +serialize_case({amount, Style, Unit, Sep, Span, Pucks, _}) -> + FStyle = string:uppercase(atom_to_list(Style)), + FUnit = string:uppercase(atom_to_list(Unit)), + Stuff = [FStyle, FUnit, Sep, Span, Pucks], + io_lib:format("amount|~ts|~ts|~c|~b|~b", Stuff); +serialize_case({approx, Style, Unit, Sep, Span, Pucks, Prec, _}) -> + FStyle = string:uppercase(atom_to_list(Style)), + FUnit = string:uppercase(atom_to_list(Unit)), + Stuff = [FStyle, FUnit, Sep, Span, Pucks, Prec], + io_lib:format("approx|~ts|~ts|~c|~b|~b|~b", Stuff); +serialize_case({read, Input, _}) -> InputStr = unicode:characters_to_list(Input), io_lib:format("read|~ts", [InputStr]).