--- /dev/null
+#!/usr/bin/perl
+
+# This file is part of Koha
+#
+# Koha is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# Koha is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Koha; if not, see <http://www.gnu.org/licenses>.
+
+use Modern::Perl;
+
+use Test::More tests => 1;
+
+use Koha::Database;
+use Koha::BackgroundJobs;
+use Koha::BackgroundJob::BatchCancelHold;
+
+use t::lib::Mocks;
+use t::lib::TestBuilder;
+
+my $schema = Koha::Database->new->schema;
+my $builder = t::lib::TestBuilder->new;
+
+subtest 'enqueue() tests' => sub {
+
+ plan tests => 3;
+
+ $schema->storage->txn_begin;
+
+ my $reason = 'Some reason';
+ my $hold_ids = [ 1, 2 ];
+
+ my $job_id = Koha::BackgroundJob::BatchCancelHold->new->enqueue( { hold_ids => $hold_ids }, reason => $reason );
+ my $job = Koha::BackgroundJobs->find($job_id)->_derived_class;
+
+ is( $job->size, scalar @{$hold_ids}, 'Size is correct' );
+ is( $job->status, 'new', 'Initial status set correctly' );
+ is( $job->queue, 'long_tasks', 'BatchUpdateItem should use the long_tasks queue' );
+
+ $schema->storage->txn_rollback;
+};
--- /dev/null
+#!/usr/bin/perl
+
+# This file is part of Koha
+#
+# Koha is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# Koha is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Koha; if not, see <http://www.gnu.org/licenses>.
+
+use Modern::Perl;
+
+use Test::More tests => 1;
+
+use Koha::Database;
+use Koha::BackgroundJobs;
+use Koha::BackgroundJob::BatchDeleteAuthority;
+
+use t::lib::Mocks;
+use t::lib::TestBuilder;
+
+my $schema = Koha::Database->new->schema;
+my $builder = t::lib::TestBuilder->new;
+
+subtest 'enqueue() tests' => sub {
+
+ plan tests => 3;
+
+ $schema->storage->txn_begin;
+
+ my $record_ids = [ 1, 2 ];
+
+ my $job_id = Koha::BackgroundJob::BatchDeleteAuthority->new->enqueue( { record_ids => $record_ids } );
+ my $job = Koha::BackgroundJobs->find($job_id)->_derived_class;
+
+ is( $job->size, scalar @{$record_ids}, 'Size is correct' );
+ is( $job->status, 'new', 'Initial status set correctly' );
+ is( $job->queue, 'long_tasks', 'BatchUpdateItem should use the long_tasks queue' );
+
+ $schema->storage->txn_rollback;
+};
--- /dev/null
+#!/usr/bin/perl
+
+# This file is part of Koha
+#
+# Koha is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# Koha is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Koha; if not, see <http://www.gnu.org/licenses>.
+
+use Modern::Perl;
+
+use Test::More tests => 1;
+
+use Koha::Database;
+use Koha::BackgroundJobs;
+use Koha::BackgroundJob::BatchDeleteBiblio;
+
+use t::lib::Mocks;
+use t::lib::TestBuilder;
+
+my $schema = Koha::Database->new->schema;
+my $builder = t::lib::TestBuilder->new;
+
+subtest 'enqueue() tests' => sub {
+
+ plan tests => 3;
+
+ $schema->storage->txn_begin;
+
+ my $record_ids = [ 1, 2 ];
+
+ my $job_id = Koha::BackgroundJob::BatchDeleteBiblio->new->enqueue( { record_ids => $record_ids } );
+ my $job = Koha::BackgroundJobs->find($job_id)->_derived_class;
+
+ is( $job->size, scalar @{$record_ids}, 'Size is correct' );
+ is( $job->status, 'new', 'Initial status set correctly' );
+ is( $job->queue, 'long_tasks', 'BatchUpdateItem should use the long_tasks queue' );
+
+ $schema->storage->txn_rollback;
+};
--- /dev/null
+#!/usr/bin/perl
+
+# This file is part of Koha
+#
+# Koha is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# Koha is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Koha; if not, see <http://www.gnu.org/licenses>.
+
+use Modern::Perl;
+
+use Test::More tests => 1;
+
+use Koha::Database;
+use Koha::BackgroundJobs;
+use Koha::BackgroundJob::BatchDeleteItem;
+
+use t::lib::Mocks;
+use t::lib::TestBuilder;
+
+my $schema = Koha::Database->new->schema;
+my $builder = t::lib::TestBuilder->new;
+
+subtest 'enqueue() tests' => sub {
+
+ plan tests => 3;
+
+ $schema->storage->txn_begin;
+
+ my $record_ids = [ 1, 2 ];
+
+ my $job_id = Koha::BackgroundJob::BatchDeleteItem->new->enqueue( { record_ids => $record_ids } );
+ my $job = Koha::BackgroundJobs->find($job_id)->_derived_class;
+
+ is( $job->size, scalar @{$record_ids}, 'Size is correct' );
+ is( $job->status, 'new', 'Initial status set correctly' );
+ is( $job->queue, 'long_tasks', 'BatchUpdateItem should use the long_tasks queue' );
+
+ $schema->storage->txn_rollback;
+};
--- /dev/null
+#!/usr/bin/perl
+
+# This file is part of Koha
+#
+# Koha is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# Koha is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Koha; if not, see <http://www.gnu.org/licenses>.
+
+use Modern::Perl;
+
+use Test::More tests => 1;
+
+use Koha::Database;
+use Koha::BackgroundJobs;
+use Koha::BackgroundJob::BatchUpdateAuthority;
+
+use t::lib::Mocks;
+use t::lib::TestBuilder;
+
+my $schema = Koha::Database->new->schema;
+my $builder = t::lib::TestBuilder->new;
+
+subtest 'enqueue() tests' => sub {
+
+ plan tests => 5;
+
+ $schema->storage->txn_begin;
+
+ # FIXME: Should be an exception
+ my $job_id = Koha::BackgroundJob::BatchUpdateAuthority->new->enqueue();
+ is( $job_id, undef, 'Nothing enqueued if missing params' );
+
+ # FIXME: Should be an exception
+ $job_id = Koha::BackgroundJob::BatchUpdateAuthority->new->enqueue( { record_ids => undef } );
+ is( $job_id, undef, "Nothing enqueued if missing 'mmtid' param" );
+
+ my $record_ids = [ 1, 2 ];
+
+ $job_id = Koha::BackgroundJob::BatchUpdateAuthority->new->enqueue( { record_ids => $record_ids, mmtid => 'thing' } );
+ my $job = Koha::BackgroundJobs->find($job_id)->_derived_class;
+
+ is( $job->size, scalar @{$record_ids}, 'Size is correct' );
+ is( $job->status, 'new', 'Initial status set correctly' );
+ is( $job->queue, 'long_tasks', 'BatchUpdateItem should use the long_tasks queue' );
+
+ $schema->storage->txn_rollback;
+};
--- /dev/null
+#!/usr/bin/perl
+
+# This file is part of Koha
+#
+# Koha is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# Koha is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Koha; if not, see <http://www.gnu.org/licenses>.
+
+use Modern::Perl;
+
+use Test::More tests => 1;
+
+use Koha::Database;
+use Koha::BackgroundJobs;
+use Koha::BackgroundJob::BatchUpdateBiblio;
+
+use t::lib::Mocks;
+use t::lib::TestBuilder;
+
+my $schema = Koha::Database->new->schema;
+my $builder = t::lib::TestBuilder->new;
+
+subtest 'enqueue() tests' => sub {
+
+ plan tests => 5;
+
+ $schema->storage->txn_begin;
+
+ # FIXME: Should be an exception
+ my $job_id = Koha::BackgroundJob::BatchUpdateBiblio->new->enqueue();
+ is( $job_id, undef, 'Nothing enqueued if missing params' );
+
+ # FIXME: Should be an exception
+ $job_id = Koha::BackgroundJob::BatchUpdateBiblio->new->enqueue( { record_ids => undef } );
+ is( $job_id, undef, "Nothing enqueued if missing 'mmtid' param" );
+
+ my $record_ids = [ 1, 2 ];
+
+ $job_id = Koha::BackgroundJob::BatchUpdateBiblio->new->enqueue( { record_ids => $record_ids, mmtid => 'thing' } );
+ my $job = Koha::BackgroundJobs->find($job_id)->_derived_class;
+
+ is( $job->size, scalar @{$record_ids}, 'Size is correct' );
+ is( $job->status, 'new', 'Initial status set correctly' );
+ is( $job->queue, 'long_tasks', 'BatchUpdateItem should use the long_tasks queue' );
+
+ $schema->storage->txn_rollback;
+};
--- /dev/null
+#!/usr/bin/perl
+
+# This file is part of Koha
+#
+# Koha is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# Koha is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Koha; if not, see <http://www.gnu.org/licenses>.
+
+use Modern::Perl;
+
+use Test::More tests => 1;
+use Test::Exception;
+
+use Koha::Database;
+use Koha::BackgroundJobs;
+use Koha::BackgroundJob::BatchUpdateBiblioHoldsQueue;
+
+use t::lib::Mocks;
+use t::lib::TestBuilder;
+
+my $schema = Koha::Database->new->schema;
+my $builder = t::lib::TestBuilder->new;
+
+subtest 'enqueue() tests' => sub {
+
+ plan tests => 5;
+
+ $schema->storage->txn_begin;
+
+ my $biblio_ids = [ 1, 2 ];
+
+ throws_ok
+ { Koha::BackgroundJob::BatchUpdateBiblioHoldsQueue->new->enqueue() }
+ 'Koha::Exceptions::MissingParameter',
+ "Exception thrown if 'biblio_ids' param is missing";
+
+ like( "$@", qr/Missing biblio_ids parameter is mandatory/, 'Expected exception message' );
+
+ my $job_id = Koha::BackgroundJob::BatchUpdateBiblioHoldsQueue->new->enqueue( { biblio_ids => $biblio_ids } );
+ my $job = Koha::BackgroundJobs->find($job_id)->_derived_class;
+
+ is( $job->size, scalar @{$biblio_ids}, 'Size is correct' );
+ is( $job->status, 'new', 'Initial status set correctly' );
+ is( $job->queue, 'default', 'BatchUpdateItem should use the default queue' );
+
+ $schema->storage->txn_rollback;
+};
--- /dev/null
+#!/usr/bin/perl
+
+# This file is part of Koha
+#
+# Koha is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# Koha is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Koha; if not, see <http://www.gnu.org/licenses>.
+
+use Modern::Perl;
+
+use Test::More tests => 1;
+
+use Koha::Database;
+use Koha::BackgroundJobs;
+use Koha::BackgroundJob::BatchUpdateItem;
+
+use t::lib::Mocks;
+use t::lib::TestBuilder;
+
+my $schema = Koha::Database->new->schema;
+my $builder = t::lib::TestBuilder->new;
+
+subtest 'enqueue() tests' => sub {
+
+ plan tests => 3;
+
+ $schema->storage->txn_begin;
+
+ my $record_ids = [ 1, 2 ];
+
+ my $job_id = Koha::BackgroundJob::BatchUpdateItem->new->enqueue( { record_ids => $record_ids } );
+ my $job = Koha::BackgroundJobs->find($job_id)->_derived_class;
+
+ is( $job->size, scalar @{$record_ids}, 'Size is correct' );
+ is( $job->status, 'new', 'Initial status set correctly' );
+ is( $job->queue, 'long_tasks', 'BatchUpdateItem should use the long_tasks queue' );
+
+ $schema->storage->txn_rollback;
+};
--- /dev/null
+#!/usr/bin/perl
+
+# This file is part of Koha
+#
+# Koha is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# Koha is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Koha; if not, see <http://www.gnu.org/licenses>.
+
+use Modern::Perl;
+
+use Test::More tests => 1;
+
+use Koha::Database;
+use Koha::BackgroundJobs;
+use Koha::BackgroundJob::CreateEHoldingsFromBiblios;
+
+use t::lib::Mocks;
+use t::lib::TestBuilder;
+
+my $schema = Koha::Database->new->schema;
+my $builder = t::lib::TestBuilder->new;
+
+subtest 'enqueue() tests' => sub {
+
+ plan tests => 5;
+
+ $schema->storage->txn_begin;
+
+ # FIXME: Should be an exception
+ my $job_id = Koha::BackgroundJob::CreateEHoldingsFromBiblios->new->enqueue();
+ is( $job_id, undef, 'Nothing enqueued if missing params' );
+
+ # FIXME: Should be an exception
+ $job_id = Koha::BackgroundJob::CreateEHoldingsFromBiblios->new->enqueue( { record_ids => undef } );
+ is( $job_id, undef, "Nothing enqueued if missing 'package_id' param" );
+
+ my $record_ids = [ 1, 2 ];
+
+ $job_id = Koha::BackgroundJob::CreateEHoldingsFromBiblios->new->enqueue( { record_ids => $record_ids, package_id => 'thing' } );
+ my $job = Koha::BackgroundJobs->find($job_id)->_derived_class;
+
+ is( $job->size, scalar @{$record_ids}, 'Size is correct' );
+ is( $job->status, 'new', 'Initial status set correctly' );
+ is( $job->queue, 'long_tasks', 'BatchUpdateItem should use the long_tasks queue' );
+
+ $schema->storage->txn_rollback;
+};
--- /dev/null
+#!/usr/bin/perl
+
+# This file is part of Koha
+#
+# Koha is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# Koha is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Koha; if not, see <http://www.gnu.org/licenses>.
+
+use Modern::Perl;
+
+use Test::More tests => 1;
+
+use Koha::Database;
+use Koha::BackgroundJobs;
+use Koha::BackgroundJob::MARCImportCommitBatch;
+
+use t::lib::Mocks;
+use t::lib::TestBuilder;
+
+my $schema = Koha::Database->new->schema;
+my $builder = t::lib::TestBuilder->new;
+
+subtest 'enqueue() tests' => sub {
+
+ plan tests => 3;
+
+ $schema->storage->txn_begin;
+
+ my $import_batch = $builder->build_object({ class => 'Koha::ImportBatches' });
+ # Add two records
+ $builder->build_object({ class => 'Koha::Import::Records', value => { import_batch_id => $import_batch->id } });
+ $builder->build_object({ class => 'Koha::Import::Records', value => { import_batch_id => $import_batch->id } });
+
+ my $job_id = Koha::BackgroundJob::MARCImportCommitBatch->new->enqueue( { import_batch_id => $import_batch->id } );
+ my $job = Koha::BackgroundJobs->find($job_id)->_derived_class;
+
+ is( $job->size, 2, 'Size is correct' );
+ is( $job->status, 'new', 'Initial status set correctly' );
+ is( $job->queue, 'long_tasks', 'BatchUpdateItem should use the long_tasks queue' );
+
+ $schema->storage->txn_rollback;
+};
--- /dev/null
+#!/usr/bin/perl
+
+# This file is part of Koha
+#
+# Koha is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# Koha is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Koha; if not, see <http://www.gnu.org/licenses>.
+
+use Modern::Perl;
+
+use Test::More tests => 1;
+
+use Koha::Database;
+use Koha::BackgroundJobs;
+use Koha::BackgroundJob::MARCImportRevertBatch;
+
+use t::lib::Mocks;
+use t::lib::TestBuilder;
+
+my $schema = Koha::Database->new->schema;
+my $builder = t::lib::TestBuilder->new;
+
+subtest 'enqueue() tests' => sub {
+
+ plan tests => 3;
+
+ $schema->storage->txn_begin;
+
+ my $import_batch = $builder->build_object({ class => 'Koha::ImportBatches' });
+ # Add two records
+ $builder->build_object({ class => 'Koha::Import::Records', value => { import_batch_id => $import_batch->id } });
+ $builder->build_object({ class => 'Koha::Import::Records', value => { import_batch_id => $import_batch->id } });
+
+ my $job_id = Koha::BackgroundJob::MARCImportRevertBatch->new->enqueue( { import_batch_id => $import_batch->id } );
+ my $job = Koha::BackgroundJobs->find($job_id)->_derived_class;
+
+ is( $job->size, 2, 'Size is correct' );
+ is( $job->status, 'new', 'Initial status set correctly' );
+ is( $job->queue, 'long_tasks', 'BatchUpdateItem should use the long_tasks queue' );
+
+ $schema->storage->txn_rollback;
+};
--- /dev/null
+#!/usr/bin/perl
+
+# This file is part of Koha
+#
+# Koha is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# Koha is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Koha; if not, see <http://www.gnu.org/licenses>.
+
+use Modern::Perl;
+
+use Test::More tests => 1;
+
+use Koha::Database;
+use Koha::BackgroundJobs;
+use Koha::BackgroundJob::StageMARCForImport;
+
+use t::lib::Mocks;
+use t::lib::TestBuilder;
+
+my $schema = Koha::Database->new->schema;
+my $builder = t::lib::TestBuilder->new;
+
+subtest 'enqueue() tests' => sub {
+
+ plan tests => 3;
+
+ $schema->storage->txn_begin;
+
+ my $job_id = Koha::BackgroundJob::StageMARCForImport->new->enqueue();
+ my $job = Koha::BackgroundJobs->find($job_id)->_derived_class;
+
+ is( $job->size, 0, 'Size is correct' );
+ is( $job->status, 'new', 'Initial status set correctly' );
+ is( $job->queue, 'long_tasks', 'BatchUpdateItem should use the long_tasks queue' );
+
+ $schema->storage->txn_rollback;
+};
--- /dev/null
+#!/usr/bin/perl
+
+# This file is part of Koha
+#
+# Koha is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# Koha is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Koha; if not, see <http://www.gnu.org/licenses>.
+
+use Modern::Perl;
+
+use Test::More tests => 1;
+
+use Koha::Database;
+use Koha::BackgroundJobs;
+use Koha::BackgroundJob::UpdateElasticIndex;
+
+use t::lib::Mocks;
+use t::lib::TestBuilder;
+
+my $schema = Koha::Database->new->schema;
+my $builder = t::lib::TestBuilder->new;
+
+subtest 'enqueue() tests' => sub {
+
+ plan tests => 5;
+
+ $schema->storage->txn_begin;
+
+ # FIXME: Should be an exception
+ my $job_id = Koha::BackgroundJob::UpdateElasticIndex->new->enqueue();
+ is( $job_id, undef, 'Nothing enqueued if missing params' );
+
+ # FIXME: Should be an exception
+ $job_id = Koha::BackgroundJob::UpdateElasticIndex->new->enqueue( { record_ids => undef } );
+ is( $job_id, undef, "Nothing enqueued if missing 'record_server' param" );
+
+ my $record_ids = [ 1, 2 ];
+
+ $job_id = Koha::BackgroundJob::UpdateElasticIndex->new->enqueue( { record_ids => $record_ids, record_server => 'thing' } );
+ my $job = Koha::BackgroundJobs->find($job_id)->_derived_class;
+
+ is( $job->size, 1, 'Size is correct' );
+ is( $job->status, 'new', 'Initial status set correctly' );
+ is( $job->queue, 'default', 'BatchUpdateItem should use the default queue' );
+
+ $schema->storage->txn_rollback;
+};