Amazon-DynamoDB
view release on metacpan or search on metacpan
t/05-batch-write.t view on Meta::CPAN
#!perl
use strict;
use warnings;
use lib ('lib', './t');
use Test::Most;
use Test::Differences;
use TestSettings;
use Data::Dumper;
unless ( $ENV{'AMAZON_DYNAMODB_EXPENSIVE_TESTS'} ) {
plan skip_all => 'Testing this module for real costs money.';
} else {
plan tests => 2417;
}
bail_on_fail;
my $ddb = TestSettings::get_ddb();
my $table_name = TestSettings::random_table_name();
my $create = $ddb->create_table(TableName => $table_name,
ReadCapacityUnits => 2,
WriteCapacityUnits => 2,
AttributeDefinitions => {
user_id => 'N',
},
KeySchema => ['user_id'],
);
ok($create->is_done, "Create request was completed");
my $wait = $ddb->wait_for_table_status(TableName => $table_name);
ok($wait->is_done, "Created table is ready");
ok($ddb->batch_write_item(
RequestItems => {
$table_name => [
{
PutRequest => {
Item => {
user_id => 3000,
name => "Test batch write",
}
}
}
]
})->is_done, "Batch write item successfully completed");
my $returned_item;
ok($ddb->get_item(sub {
my $i = shift;
$returned_item = $i;
},
ConsistentRead => 'true',
TableName => $table_name,
Key => {
user_id => 3000
},
)->is_done, "get item completed successfully");
ok(defined($returned_item), "Returned item is defined");
( run in 1.070 second using v1.01-cache-2.11-cpan-39bf76dae61 )