コード例 #1
0
    def test_get_roomlists_parsing(self):
        # Test static XML since server has no roomlists
        ws = GetRoomLists(self.account.protocol)
        xml = b'''\
<?xml version="1.0" ?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
    <s:Body>
        <m:GetRoomListsResponse ResponseClass="Success"
                xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages"
                xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
            <m:ResponseCode>NoError</m:ResponseCode>
            <m:RoomLists>
                <t:Address>
                    <t:Name>Roomlist</t:Name>
                    <t:EmailAddress>[email protected]</t:EmailAddress>
                    <t:RoutingType>SMTP</t:RoutingType>
                    <t:MailboxType>PublicDL</t:MailboxType>
                </t:Address>
                <t:Address>
                    <t:Name>Roomlist</t:Name>
                    <t:EmailAddress>[email protected]</t:EmailAddress>
                    <t:RoutingType>SMTP</t:RoutingType>
                    <t:MailboxType>PublicDL</t:MailboxType>
                </t:Address>
            </m:RoomLists>
        </m:GetRoomListsResponse>
    </s:Body>
</s:Envelope>'''
        _, body = ws._get_soap_parts(response=MockResponse(xml))
        res = ws._get_elements_in_response(response=ws._get_soap_messages(body=body))
        self.assertSetEqual(
            {RoomList.from_xml(elem=elem, account=None).email_address for elem in res},
            {'*****@*****.**', '*****@*****.**'}
        )
コード例 #2
0
 def test_get_rooms(self):
     # The test server is not guaranteed to have any rooms or room lists which makes this test less useful
     roomlist = RoomList(email_address='*****@*****.**')
     ws = GetRooms(self.account.protocol)
     with self.assertRaises(ErrorNameResolutionNoResults):
         list(ws.call(roomlist=roomlist))
     # Test shortcut
     with self.assertRaises(ErrorNameResolutionNoResults):
         list(self.account.protocol.get_rooms('*****@*****.**'))