@@ -3,6 +3,7 @@
 import pytest
 
 from jungle import cli
+from jungle.common import create_session
 
 
 def _get_sorted_server_names_from_output(output, separator='\t'):
@@ -138,36 +139,39 @@ def test_get_tag_value(tags, key, expected):
 
 
 @pytest.mark.parametrize('inst_name, use_inst_id, username, keyfile, port, ssh_options, '
-                         'use_gateway, gateway_username, expected', [
+                         'use_gateway, gateway_username, profile_name, expected', [
                              ('ssh_server', False, 'ubuntu', 'key.pem', 22, "-o StrictHostKeyChecking=no", False,
-                              None, 'ssh ubuntu@{} -i key.pem -p 22 -o StrictHostKeyChecking=no'),
+                              None, None, 'ssh ubuntu@{} -i key.pem -p 22 -o StrictHostKeyChecking=no'),
                              ('ssh_server', False, 'ubuntu', None, 22,
-                              None, False, None, 'ssh ubuntu@{} -p 22'),
+                              None, False, None, None, 'ssh ubuntu@{} -p 22'),
                              (None, True, 'ubuntu', 'key.pem', 22, None,
-                              False, None, 'ssh ubuntu@{} -i key.pem -p 22'),
+                              False, None, None, 'ssh ubuntu@{} -i key.pem -p 22'),
                              ('ssh_server', False, 'ubuntu', 'key.pem', 22, None, True,
-                              None, 'ssh -tt ubuntu@{} -i key.pem -p 22 ssh ubuntu@{}'),
+                              None, None, 'ssh -tt ubuntu@{} -i key.pem -p 22 ssh ubuntu@{}'),
                              ('ssh_server', False, 'ubuntu', None, 22, None, True,
-                              None, 'ssh -tt ubuntu@{} -p 22 ssh ubuntu@{}'),
+                              None, None, 'ssh -tt ubuntu@{} -p 22 ssh ubuntu@{}'),
                              (None, True, 'ubuntu', 'key.pem', 22, None, True, None,
-                              'ssh -tt ubuntu@{} -i key.pem -p 22 ssh ubuntu@{}'),
+                              None, 'ssh -tt ubuntu@{} -i key.pem -p 22 ssh ubuntu@{}'),
                              (None, True, 'ubuntu', None, 22, "-A", True, 'ec2-user',
-                              'ssh -tt ec2-user@{} -p 22 -A ssh ubuntu@{}'),
+                              None, 'ssh -tt ec2-user@{} -p 22 -A ssh ubuntu@{}'),
+                             (None, True, 'ec2-user', None, 22, "-A", True, 'core',
+                              None, 'ssh -tt core@{} -p 22 -A ssh ec2-user@{}'),
                              (None, True, 'ec2-user', None, 22, "-A", True, 'core',
-                              'ssh -tt core@{} -p 22 -A ssh ec2-user@{}'),
+                              'my_profile', 'ssh -tt core@{} -p 22 -A ssh ec2-user@{}'),
                          ])
 def test_create_ssh_command(
         mocker, ec2, inst_name, use_inst_id, username, keyfile, port, ssh_options,
-        use_gateway, gateway_username, expected):
+        use_gateway, gateway_username, profile_name, expected):
     """create_ssh_command test"""
     from jungle.ec2 import create_ssh_command
+    mocker.patch('boto3.Session', new=lambda profile_name: boto3)
     mocker.patch('click.prompt', new=lambda msg, type, default: 0)
     ssh_server_instance_id = ec2[
         'ssh_target_server'].id if use_inst_id else None
     gateway_server_instance_id = ec2[
         'gateway_target_server'].id if use_gateway else None
     ssh_command = create_ssh_command(
-        boto3,
+        create_session(profile_name),
         ssh_server_instance_id, inst_name, username, keyfile, port, ssh_options,
         gateway_server_instance_id, gateway_username)
     if use_gateway: