stable to default

This commit is contained in:
Simon MacMullen 2015-01-09 13:14:23 +00:00
commit 3afc96688f
3 changed files with 38 additions and 5 deletions

View File

@ -2,7 +2,7 @@ RELEASABLE:=true
DEPS:=rabbitmq-server rabbitmq-erlang-client eldap-wrapper
ifeq ($(shell nc -z localhost 389 && echo true),true)
WITH_BROKER_TEST_COMMANDS:=eunit:test(rabbit_auth_backend_ldap_test,[verbose])
WITH_BROKER_TEST_COMMANDS:=eunit:test([rabbit_auth_backend_ldap_unit_test,rabbit_auth_backend_ldap_test],[verbose])
WITH_BROKER_TEST_CONFIG:=$(PACKAGE_DIR)/etc/rabbit-test
else
$(warning Not running LDAP tests; no LDAP server found on localhost)

View File

@ -25,7 +25,9 @@ fill(Fmt, [{K, V} | T]) ->
Var = [[$\\, $$, ${] ++ atom_to_list(K) ++ [$}]],
fill(re:replace(Fmt, Var, [to_repl(V)], [global]), T).
to_repl(V) when is_atom(V) ->
atom_to_list(V);
to_repl(V) ->
V.
to_repl(V) when is_atom(V) -> atom_to_list(V);
to_repl([]) -> [];
to_repl([$\\ | T]) -> [$\\, $\\ | to_repl(T)];
to_repl([$& | T]) -> [$\\, $& | to_repl(T)];
to_repl([H | T]) -> [H | to_repl(T)].

View File

@ -0,0 +1,31 @@
%% The contents of this file are subject to the Mozilla Public License
%% Version 1.1 (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.mozilla.org/MPL/
%%
%% Software distributed under the License is distributed on an "AS IS"
%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
%% the License for the specific language governing rights and
%% limitations under the License.
%%
%% The Original Code is RabbitMQ
%%
%% The Initial Developer of the Original Code is GoPivotal, Inc.
%% Copyright (c) 2007-2014 GoPivotal, Inc. All rights reserved.
%%
-module(rabbit_auth_backend_ldap_unit_test).
-include_lib("eunit/include/eunit.hrl").
fill_test() ->
F = fun(Fmt, Args, Res) ->
?assertEqual(Res, rabbit_auth_backend_ldap_util:fill(Fmt, Args))
end,
F("x${username}x", [{username, "ab"}], "xabx"),
F("x${username}x", [{username, ""}], "xx"),
F("x${username}x", [{fusername, "ab"}], "x${username}x"),
F("x${usernamex", [{username, "ab"}], "x${usernamex"),
F("x${username}x", [{username, "a\\b"}], "xa\\bx"),
F("x${username}x", [{username, "a&b"}], "xa&bx"),
ok.