#!/usr/bin/perl use strict; use warnings; use Carp; use Test::More; use Test::LongString; use Data::Dumper; use lib 't'; use TestData; BEGIN { plan tests => 23; } BEGIN { use_ok( 'API::Plesk::Methods' ); } # construct_request_xml is_string( API::Plesk::Methods::construct_request_xml( 'client-template', 'get', 111 ), "111", 'construct_request_xml' ); is_string( API::Plesk::Methods::construct_request_xml( 'client-template', 'get' ), '', 'construct_request_xml' ); ok( ! API::Plesk::Methods::construct_request_xml('test'), 'construct_request_xml' ); # Generate_settings_block is_string( API::Plesk::Methods::generate_settings_block('permission'), '', 'blank permission query to generate_settings_block' ); is_string( API::Plesk::Methods::generate_settings_block ('limit'), '', 'blank limit query to generate_settings_block' ); is_string( API::Plesk::Methods::generate_settings_block( 'limit', key1 => 'value1', key2 => 'value2', ), 'key1value1' . 'key2value2' . '', 'limit query to generate_settings_block' ); # Generate_limits_block is_string( API::Plesk::Methods::generate_settings_block('limit'), '', 'test auto generated generate_limits_block sub' ); # Generate_permissions_block is_string( API::Plesk::Methods::generate_settings_block('permission'), '', 'test auto generated generate_permissions_block sub' ); # Generate_gen_infos is_string( API::Plesk::Methods::generate_info_block('gen_info'), '', 'test generate_gen_infos_block (blank)' ); is_string( API::Plesk::Methods::generate_info_block('gen_info', name => 'Pavel'), 'Pavel', 'test generate_gen_infos_block ( name => Pavel )' ); # Generate_datasets_block is_string( API::Plesk::Methods::generate_info_block('dataset'), '', 'test generate_datasets_block ( blank )' ); is_string( API::Plesk::Methods::generate_info_block('dataset', name => 'Pavel'), 'Pavel', 'test generate_datasets_block ( name => Pavel )' ); # Create_filter is_string( API::Plesk::Methods::create_filter( login_field_name => 'login', login => 'userlogin' ), 'userlogin', 'create_filter( userlogin ) check' ); is_string( API::Plesk::Methods::create_filter( id => '12345' ), '12345', 'create_filter( id ) check' ); is( API::Plesk::Methods::create_filter( login_field_name => 'login', all => 1 ), '', 'create_filter( blank ) check' ); # Create_node test is_string( API::Plesk::Methods::create_node('name', 'Pavel'), 'Pavel', 'create_node test' ); is_string( API::Plesk::Methods::create_node('name'), '', 'create_node blank value test' ); # xml_extract_values is_deeply( API::Plesk::Methods::xml_extract_values('value'), { key => 'value' }, 'test xml_extract_values extract one value' ); is_deeply( API::Plesk::Methods::xml_extract_values('value value2 '), { key => 'value', key2 => 'value2' }, 'test xml_extract_values extract multiple values' ); # check_required_keys ok( ! API::Plesk::Methods::check_required_keys("aaa", "bbb"), 'blank query to check_required_keys' ); ok( API::Plesk::Methods::check_required_keys( { key1 => 'val1', key2 => 'val2' }, ['key1', 'key2'] ), 'query (with all required fields) to check_required_keys' ); ok( ! API::Plesk::Methods::check_required_keys( { key1 => 'val1', key2 => 'val2' }, ['key1', 'key3'] ), 'query (without all required fields) to check_required_keys' );