Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 4 additions & 5 deletions src/azure-cli/azure/cli/command_modules/mysql/custom.py
Original file line number Diff line number Diff line change
Expand Up @@ -123,11 +123,10 @@ def firewall_rule_create_func(cmd, client, resource_group_name, server_name, fir
logger.warning('Configuring server firewall rule to accept connections from \'%s\' to \'%s\'...', start_ip_address,
end_ip_address)

parameters = {
'name': firewall_rule_name,
'start_ip_address': start_ip_address,
'end_ip_address': end_ip_address
}
parameters = models.FirewallRule(
start_ip_address=start_ip_address,
end_ip_address=end_ip_address
)

return client.begin_create_or_update(
resource_group_name,
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# --------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
# --------------------------------------------------------------------------------------------
import unittest
from unittest.mock import patch

from ... import custom


class MysqlFlexibleServerFirewallRuleCustomTest(unittest.TestCase):

def test_firewall_rule_create_uses_properties_payload(self):
client = _FakeFirewallRulesClient()

with patch.object(custom, 'validate_public_access_server'):
custom.firewall_rule_create_func(
cmd=None,
client=client,
resource_group_name='rg',
server_name='server',
firewall_rule_name='allow-myip',
start_ip_address='203.0.113.10',
end_ip_address='203.0.113.10')

self.assertEqual('rg', client.resource_group_name)
self.assertEqual('server', client.server_name)
self.assertEqual('allow-myip', client.firewall_rule_name)
self.assertEqual({
'properties': {
'startIpAddress': '203.0.113.10',
'endIpAddress': '203.0.113.10'
}
}, client.parameters.as_dict())


class _FakeFirewallRulesClient:

def begin_create_or_update(self, resource_group_name, server_name, firewall_rule_name, parameters):
self.resource_group_name = resource_group_name
self.server_name = server_name
self.firewall_rule_name = firewall_rule_name
self.parameters = parameters
return parameters


if __name__ == '__main__':
unittest.main()