+{
+ for my $t (qw(TRUE true yes on 1 +1 -1 13 0x1 0x12 0X5)) {
+ is(PublicInbox::Config::git_bool($t), 1, "$t is true");
+ is(xqx([qw(git -c), "test.val=$t",
+ qw(config --bool test.val)]),
+ "true\n", "$t matches git-config behavior");
+ }
+ for my $f (qw(FALSE false no off 0 +0 +000 00 0x00 0X0)) {
+ is(PublicInbox::Config::git_bool($f), 0, "$f is false");
+ is(xqx([qw(git -c), "test.val=$f",
+ qw(config --bool test.val)]),
+ "false\n", "$f matches git-config behavior");
+ }
+ is(PublicInbox::Config::git_bool('bogus'), undef,
+ 'bogus is undef');
+}
+
+SKIP: {
+ require_git('1.8.5', 2) or
+ skip 'git 1.8.5+ required for --url-match', 2;
+ my $f = "$tmpdir/urlmatch";
+ open my $fh, '>', $f or BAIL_OUT $!;
+ print $fh <<EOF or BAIL_OUT $!;
+[imap "imap://*.example.com"]
+ pollInterval = 9
+EOF
+ close $fh or BAIL_OUT;
+ local $ENV{PI_CONFIG} = $f;
+ my $cfg = PublicInbox::Config->new;
+ my $url = 'imap://mail.example.com/INBOX';
+ is($cfg->urlmatch('imap.pollInterval', $url), 9, 'urlmatch hit');
+ is($cfg->urlmatch('imap.idleInterval', $url), undef, 'urlmatch miss');
+};
+
+