about summary refs log tree commit homepage
path: root/t/config.t
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2017-06-23 20:23:07 +0000
committerEric Wong <e@80x24.org>2017-06-23 22:28:46 +0000
commit1a8eb0a43c68e64b77fdd3c4ebd977a1ab88e71b (patch)
treed60151d9613f6603b4cca5f62410eaac2a344dba /t/config.t
parentbde2d8c8de65a4d6b06e8d7365f504f2d8db90a6 (diff)
downloadpublic-inbox-1a8eb0a43c68e64b77fdd3c4ebd977a1ab88e71b.tar.gz
We will also treat all known list addresses as non-obfuscated.

By setting publicinbox.noObfuscate in ~/.public-inbox/config,
this will allow users to disable address obfuscation on a
per-domain or per-address basis.
Diffstat (limited to 't/config.t')
-rw-r--r--t/config.t28
1 files changed, 28 insertions, 0 deletions
diff --git a/t/config.t b/t/config.t
index 437f1d14..353dac69 100644
--- a/t/config.t
+++ b/t/config.t
@@ -86,4 +86,32 @@ my $tmpdir = tempdir('pi-config-XXXXXX', TMPDIR => 1, CLEANUP => 1);
         is($ibx->{nntpserver}, 'news.alt.example.com','per-inbox NNTP server');
 }
 
+# no obfuscate domains
+{
+        my $pfx = "publicinbox.test";
+        my $pfx2 = "publicinbox.foo";
+        my %h = (
+                "$pfx.address" => 'test@example.com',
+                "$pfx.mainrepo" => '/path/to/non/existent',
+                "$pfx2.address" => 'foo@example.com',
+                "$pfx2.mainrepo" => '/path/to/foo',
+                lc("publicinbox.noObfuscate") =>
+                        'public-inbox.org @example.com z@EXAMPLE.com',
+                "$pfx.obfuscate" => 'true', # :<
+        );
+        my %tmp = %h;
+        my $cfg = PublicInbox::Config->new(\%tmp);
+        my $ibx = $cfg->lookup_name('test');
+        my $re = $ibx->{-no_obfuscate_re};
+        like('meta@public-inbox.org', $re,
+                'public-inbox.org address not to be obfuscated');
+        like('t@example.com', $re, 'example.com address not to be obfuscated');
+        unlike('t@example.comM', $re, 'example.comM address does not match');
+        is_deeply($ibx->{-no_obfuscate}, {
+                        'test@example.com' => 1,
+                        'foo@example.com' => 1,
+                        'z@example.com' => 1,
+                }, 'known addresses populated');
+}
+
 done_testing();