diff options
author | Eric Wong <e@80x24.org> | 2016-08-12 02:15:55 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2016-08-12 02:19:53 +0000 |
commit | b0f783fe601cfcaf89b30de461a540434f63b3ee (patch) | |
tree | 15ef236f068799dd574eb67add2afd5a809a253d | |
parent | 58a5bb3e18901237b1ca34ef8f03f696be27d305 (diff) | |
download | public-inbox-b0f783fe601cfcaf89b30de461a540434f63b3ee.tar.gz |
Oops. We will inevitably need to support multiple altids for a public-inbox one day.
-rw-r--r-- | lib/PublicInbox/Config.pm | 2 | ||||
-rw-r--r-- | t/config.t | 13 |
2 files changed, 14 insertions, 1 deletions
diff --git a/lib/PublicInbox/Config.pm b/lib/PublicInbox/Config.pm index cd885488..5eae1f1d 100644 --- a/lib/PublicInbox/Config.pm +++ b/lib/PublicInbox/Config.pm @@ -147,7 +147,7 @@ sub _fill { } foreach my $k (qw(altid)) { # TODO: more arrays if (defined(my $v = $self->{"$pfx.$k"})) { - $rv->{$k} = [ $v ]; + $rv->{$k} = ref($v) eq 'ARRAY' ? $v : [ $v ]; } } @@ -50,4 +50,17 @@ my $tmpdir = tempdir('pi-config-XXXXXX', TMPDIR => 1, CLEANUP => 1); }, "lookup matches expected output for test"); } + +{ + my $cfgpfx = "publicinbox.test"; + my @altid = qw(serial:gmane:file=a serial:enamg:file=b); + my $config = PublicInbox::Config->new({ + "$cfgpfx.address" => 'test@example.com', + "$cfgpfx.mainrepo" => '/path/to/non/existent', + "$cfgpfx.altid" => [ @altid ], + }); + my $ibx = $config->lookup_name('test'); + is_deeply($ibx->{altid}, [ @altid ]); +} + done_testing(); |