27 from xmlrpclib
import DateTime
29 from ec2.base.action
import Action
30 from ec2.base.test
import TestCase
36 self.cluster_manager.vm.user.list.return_value = [{
43 self.cluster_manager.vm.user.get_by_id.return_value = {
45 'image_name':
'test image',
49 'start_time': DateTime(
'20121015T16:10:00'),
54 'Action':
'DescribeInstances',
55 }, self.cluster_manager).
execute()
56 self.assertMultiLineEqual(
58 """<?xml version="1.0" encoding="UTF-8"?>
59 <DescribeInstancesResponse xmlns="http://ec2.amazonaws.com/doc/2012-06-01/">
60 <requestId>00000000-0000-0000-0000-000000000000</requestId>
63 <reservationId>r-00000000</reservationId>
64 <ownerId>5678</ownerId>
67 <hypervisor>kvm</hypervisor>
68 <imageId>test image</imageId>
69 <instanceId>1234</instanceId>
74 <instanceType>m1.small</instanceType>
75 <ipAddress>1.2.3.4</ipAddress>
76 <launchTime>2012-10-15T16:10:00</launchTime>
78 <availabilityZone>test_cm</availabilityZone>
80 <privateIpAddress>5.6.7.8</privateIpAddress>
86 </DescribeInstancesResponse>
91 self.cluster_manager.vm.user.destroy.return_value =
None
94 'Action':
'TerminateInstances',
96 }, self.cluster_manager).
execute()
98 self.assertMultiLineEqual(
100 """<?xml version="1.0" encoding="UTF-8"?>
101 <TerminateInstancesResponse xmlns="http://ec2.amazonaws.com/doc/2012-06-01/">
102 <requestId>59dbff89-35bd-4eac-99ed-be587EXAMPLE</requestId>
105 <instanceId>1</instanceId>
108 <name>shutting-down</name>
116 </TerminateInstancesResponse>