#!/usr/bin/perl use strict; use warnings; use FindBin qw($Bin); use lib qq($Bin/lib); use JMX::Jmx4Perl::Alias; use Data::Dumper; use Test::More tests => 10; BEGIN { use_ok("JMX::Jmx4Perl"); } # Use a new handler directory &JMX::Jmx4Perl::_register_handlers("ProductTest"); my $jmx4perl = new JMX::Jmx4Perl(url => "localhost"); my @res = $jmx4perl->resolve_alias("memory:heap"); ok(@res && $res[0] eq "resolved_name" && $res[1] eq "resolved_attr","Resolved alias properly"); $jmx4perl = new JMX::Jmx4Perl(url => "localhost", product => "Test2"); my @alias = $jmx4perl->resolve_alias("memory:heap"); ok(@alias && $alias[0] eq "resolved2_name" && $alias[1] eq "resolved2_attr","Resolved alias properly"); @alias = $jmx4perl->resolve_alias("MEMORY_GC"); ok(@alias && $alias[0] eq "memory2_name" && $alias[1] eq "gc2_op","Resolved operation alias properly"); is($JMX::Jmx4Perl::PRODUCT_HANDLER_ORDERING[0],"test2","Test ordering"); is($JMX::Jmx4Perl::PRODUCT_HANDLER_ORDERING[1],"test1","Test ordering"); $jmx4perl = new JMX::Jmx4Perl(url => "localhost"); @res = $jmx4perl->resolve_alias(SERVER_NAME); is($res[0],"server","Check for alias resolving by closure"); is($res[1],"name","Check for alias resolving by closure"); my $code = $jmx4perl->resolve_alias(SERVER_ADDRESS); is(ref($code),"CODE","Check for code based resolving"); is($code->(),"127.0.0.1","Check for code based resolving");