From 17303e17116415e7758e96530814b0a6f3f9a93f Mon Sep 17 00:00:00 2001 From: Anders Svensson Date: Thu, 16 Jan 2014 12:19:42 +0100 Subject: Compiler suite fix An error when expecting success wasn't regarded as failure when compiling dictionaries. --- lib/diameter/test/diameter_compiler_SUITE.erl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'lib/diameter/test') diff --git a/lib/diameter/test/diameter_compiler_SUITE.erl b/lib/diameter/test/diameter_compiler_SUITE.erl index ed369e8af3..cc423d5bc6 100644 --- a/lib/diameter/test/diameter_compiler_SUITE.erl +++ b/lib/diameter/test/diameter_compiler_SUITE.erl @@ -1,7 +1,7 @@ %% %% %CopyrightBegin% %% -%% Copyright Ericsson AB 2010-2013. All Rights Reserved. +%% Copyright Ericsson AB 2010-2014. All Rights Reserved. %% %% The contents of this file are subject to the Erlang Public License, %% Version 1.1, (the "License"); you may not use this file except in @@ -397,7 +397,7 @@ replace({E, Mods}, Bin) -> case {E, parse(B, [{include, here()}]), Mods} of {ok, {ok, Dict}, _} -> Dict; - {_, {error, S}, _} -> + {_, {error, S}, _} when E /= ok -> S end. -- cgit v1.2.3 From 3f79e7bd7e743ffd40b624caf680aef2bdb15dc7 Mon Sep 17 00:00:00 2001 From: Anders Svensson Date: Thu, 16 Jan 2014 12:57:43 +0100 Subject: Don't format diameter_make:codec/2 errors Instead, add diameter_make:format_error/1 to allow the caller to format if desired, which is what applications like compiler and yecc do. Use this to check that the expected error is the one actually generated in the compiler suite. --- lib/diameter/test/diameter_compiler_SUITE.erl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'lib/diameter/test') diff --git a/lib/diameter/test/diameter_compiler_SUITE.erl b/lib/diameter/test/diameter_compiler_SUITE.erl index cc423d5bc6..0b053219cd 100644 --- a/lib/diameter/test/diameter_compiler_SUITE.erl +++ b/lib/diameter/test/diameter_compiler_SUITE.erl @@ -397,8 +397,8 @@ replace({E, Mods}, Bin) -> case {E, parse(B, [{include, here()}]), Mods} of {ok, {ok, Dict}, _} -> Dict; - {_, {error, S}, _} when E /= ok -> - S + {_, {error, {E,_} = T}, _} when E /= ok -> + diameter_make:format_error(T) end. re({RE, Repl}, Bin) -> -- cgit v1.2.3 From 2b802628b59b7208b1c936309807f86745a3b6a0 Mon Sep 17 00:00:00 2001 From: Anders Svensson Date: Thu, 16 Jan 2014 13:17:33 +0100 Subject: Ensure that Grouped AVP's are fully defined in dictionaries The case in which an AVP was defined as having type Grouped in @avp_types without a corresponding specification in @grouped was missing. --- lib/diameter/test/diameter_compiler_SUITE.erl | 3 +++ 1 file changed, 3 insertions(+) (limited to 'lib/diameter/test') diff --git a/lib/diameter/test/diameter_compiler_SUITE.erl b/lib/diameter/test/diameter_compiler_SUITE.erl index 0b053219cd..df4dde6240 100644 --- a/lib/diameter/test/diameter_compiler_SUITE.erl +++ b/lib/diameter/test/diameter_compiler_SUITE.erl @@ -138,6 +138,9 @@ {grouped_avp_not_defined, "Failed-AVP *.*", ""}, + {grouped_avp_not_grouped, + "Failed-AVP ::=.*\n.*}", + ""}, {grouped_vendor_id_without_flag, "(Failed-AVP .*)>", "\\1 668>"}, -- cgit v1.2.3