"lei import" behavior will may change w.r.t. keyword
handling. Use separate $HOME between different test_lei
to ensure isolation between the tests.
require_git(2.6, 1) or skip('git 2.6+ required for lei test', 2);
require_mods(qw(json DBD::SQLite Search::Xapian), 2);
require PublicInbox::Config;
require_git(2.6, 1) or skip('git 2.6+ required for lei test', 2);
require_mods(qw(json DBD::SQLite Search::Xapian), 2);
require PublicInbox::Config;
local %ENV = %ENV;
delete $ENV{XDG_DATA_HOME};
delete $ENV{XDG_CONFIG_HOME};
local %ENV = %ENV;
delete $ENV{XDG_DATA_HOME};
delete $ENV{XDG_CONFIG_HOME};
$lei_opt = { 1 => \$lei_out, 2 => \$lei_err };
my ($daemon_pid, $for_destroy, $daemon_xrd);
my $tmpdir = $test_opt->{tmpdir};
$lei_opt = { 1 => \$lei_out, 2 => \$lei_err };
my ($daemon_pid, $for_destroy, $daemon_xrd);
my $tmpdir = $test_opt->{tmpdir};
+ File::Path::mkpath($tmpdir) if (defined $tmpdir && !-d $tmpdir);
($tmpdir, $for_destroy) = tmpdir unless $tmpdir;
state $persist_xrd = $ENV{TEST_LEI_DAEMON_PERSIST_DIR};
SKIP: {
($tmpdir, $for_destroy) = tmpdir unless $tmpdir;
state $persist_xrd = $ENV{TEST_LEI_DAEMON_PERSIST_DIR};
SKIP: {
-test_lei(sub {
- ok(lei(qw(import -F), $mbox, $fn), 'imported mbox');
- ok(lei(qw(q s:x)), 'lei q works') or diag $lei_err;
+test_lei({tmpdir => "$tmpdir/using -F"}, sub {
+ lei_ok(qw(import -F), $mbox, $fn, \'imported mbox');
+ lei_ok(qw(q s:x), \'lei q works') or diag $lei_err;
my $res = json_utf8->decode($lei_out);
my $x = $res->[0];
is($x->{'s'}, 'x', 'subject imported') or diag $lei_out;
my $res = json_utf8->decode($lei_out);
my $x = $res->[0];
is($x->{'s'}, 'x', 'subject imported') or diag $lei_out;
is($res->[1], undef, 'only one result');
});
is($res->[1], undef, 'only one result');
});
+test_lei({tmpdir => "$tmpdir/using TYPE: prefix"}, sub {
lei_ok('import', "$mbox:$fn", \'imported mbox:/path') or diag $lei_err;
lei_ok(qw(q s:x), \'lei q works') or diag $lei_err;
my $res = json_utf8->decode($lei_out);
lei_ok('import', "$mbox:$fn", \'imported mbox:/path') or diag $lei_err;
lei_ok(qw(q s:x), \'lei q works') or diag $lei_err;
my $res = json_utf8->decode($lei_out);