<s> import json <EOL> import mock <EOL> from tests . unit . customizations . emr import EMRBaseAWSCommandParamsTest as BaseAWSCommandParamsTest <EOL> INSTALL_HIVE_STEP = { <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' , <EOL> '<STR_LIT>' , '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , '<STR_LIT>' ] , <EOL> '<STR_LIT>' : <EOL> ( '<STR_LIT>' <EOL> '<STR_LIT>' ) <EOL> } , <EOL> '<STR_LIT:Name>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' <EOL> } <EOL> INSTALL_HIVE_SITE_STEP = { <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , '<STR_LIT>' ] , <EOL> '<STR_LIT>' : <EOL> ( '<STR_LIT>' <EOL> '<STR_LIT>' ) <EOL> } , <EOL> '<STR_LIT:Name>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' <EOL> } <EOL> INSTALL_PIG_STEP = { <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' , <EOL> '<STR_LIT>' , '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , '<STR_LIT>' ] , <EOL> '<STR_LIT>' : <EOL> ( '<STR_LIT>' <EOL> '<STR_LIT>' ) <EOL> } , <EOL> '<STR_LIT:Name>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' <EOL> } <EOL> class TestInstallApplications ( BaseAWSCommandParamsTest ) : <EOL> prefix = ( '<STR_LIT>' <EOL> '<STR_LIT>' ) <EOL> def test_install_hive_site ( self ) : <EOL> cmdline = ( self . prefix + '<STR_LIT>' <EOL> '<STR_LIT>' ) <EOL> result = { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ INSTALL_HIVE_STEP , INSTALL_HIVE_SITE_STEP ] <EOL> } <EOL> self . assert_params_for_cmd ( cmdline , result ) <EOL> cmdline = ( self . prefix + '<STR_LIT>' <EOL> '<STR_LIT>' ) <EOL> self . assert_params_for_cmd ( cmdline , result ) <EOL> def test_install_hive_and_pig ( self ) : <EOL> cmdline = self . prefix + '<STR_LIT>' <EOL> result = { '<STR_LIT>' : '<STR_LIT>' , '<STR_LIT>' : [ INSTALL_HIVE_STEP , <EOL> INSTALL_PIG_STEP ] } <EOL> self . assert_params_for_cmd ( cmdline , result ) <EOL> def test_install_pig_with_profile_region ( self ) : <EOL> self . driver . session . set_config_variable ( '<STR_LIT>' , '<STR_LIT>' ) <EOL> cmdline = self . prefix + '<STR_LIT>' <EOL> PIG_STEP = json . dumps ( INSTALL_PIG_STEP ) . replace ( '<STR_LIT>' , '<STR_LIT>' ) <EOL> result = { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ json . loads ( PIG_STEP ) ] } <EOL> self . assert_params_for_cmd ( cmdline , result ) <EOL> def test_install_impala_error ( self ) : <EOL> cmdline = self . prefix + '<STR_LIT>' <EOL> expected_error_msg = "<STR_LIT>" + "<STR_LIT>" + "<STR_LIT>" <EOL> result = self . run_cmd ( cmdline , <NUM_LIT:255> ) <EOL> self . assertEqual ( result [ <NUM_LIT:1> ] , expected_error_msg ) <EOL> def test_install_unknown_app_error ( self ) : <EOL> cmdline = self . prefix + '<STR_LIT>' <EOL> expected_error_msg = "<STR_LIT>" + "<STR_LIT>" + "<STR_LIT>" <EOL> result = self . run_cmd ( cmdline , <NUM_LIT:255> ) <EOL> self . assertEqual ( result [ <NUM_LIT:1> ] , expected_error_msg ) <EOL> @ mock . patch ( '<STR_LIT>' <EOL> '<STR_LIT>' ) <EOL> def test_unsupported_command_on_release_based_cluster_error ( <EOL> self , grl_patch ) : <EOL> grl_patch . return_value = '<STR_LIT>' <EOL> cmdline = ( self . prefix + '<STR_LIT>' <EOL> '<STR_LIT>' ) <EOL> expected_error_msg = ( "<STR_LIT>" <EOL> "<STR_LIT>" ) <EOL> result = self . run_cmd ( cmdline , <NUM_LIT:255> ) <EOL> self . assertEqual ( result [ <NUM_LIT:1> ] , expected_error_msg ) <EOL> if __name__ == "<STR_LIT:__main__>" : <EOL> unittest . main ( ) </s>
