Data-AnyXfer
view release on metacpan or search on metacpan
t/elastic/serverdefinition.t view on Meta::CPAN
use Modern::Perl;
use Test::Most;
use Test::Deep;
use aliased 'Data::AnyXfer::Elastic::ServerDefinition';
use constant TEST_SERVERS_FILE => './t/data/servers.json';
# Basic server definition
my %ExampleDefinition = (
name => 'testserver',
env => 'production',
installed_version => '7.1',
standalone_nodes => [qw/localhost:9200/],
cluster_nodes => [],
silos => [qw/public_data/],
);
# Expected values for servers.json test file
my %ExpectedDefinition1 = (
name => 'prodserver',
env => 'production',
silos => [qw/public_data private_data/],
standalone_nodes => [
'http://test-es-1.example.com:9200',
'http://test-es-2.example.com:9200',
'http://test-es-3.example.com:9200'
],
cluster_nodes => [
'http://test-es-1.example.com:9201',
'http://test-es-2.example.com:9201',
'http://test-es-3.example.com:9201'
],
installed_version => '6.4.0'
);
my %ExpectedDefinition2 = (
name => 'testserver',
env => 'testing',
silos => [qw/public_data private_data/],
standalone_nodes => ['http://localhost:9200'],
cluster_nodes => ['http://localhost:9201'],
installed_version => '6.4.0'
);
# BASIC CONSTRUCTION
{
note('Basic Construction');
dies_ok {
ServerDefinition->new;
} qr/Missing required arguments.*/;
my $def;
dies_ok {
$def = ServerDefinition
->new(@ExampleDefinition{qw/name env installed_version/});
( run in 2.815 seconds using v1.01-cache-2.11-cpan-99c4e6809bf )