Ejemplo n.º 1
0
    def test_de_json(self, bot):
        assert InputInvoiceMessageContent.de_json({}, bot=bot) is None

        json_dict = {
            'title': self.title,
            'description': self.description,
            'payload': self.payload,
            'provider_token': self.provider_token,
            'currency': self.currency,
            'prices': [price.to_dict() for price in self.prices],
            'max_tip_amount': self.max_tip_amount,
            'suggested_tip_amounts': self.suggested_tip_amounts,
            'provider_data': self.provider_data,
            'photo_url': self.photo_url,
            'photo_size': self.photo_size,
            'photo_width': self.photo_width,
            'photo_height': self.photo_height,
            'need_name': self.need_name,
            'need_phone_number': self.need_phone_number,
            'need_email': self.need_email,
            'need_shipping_address': self.need_shipping_address,
            'send_phone_number_to_provider':
            self.send_phone_number_to_provider,
            'send_email_to_provider': self.send_email_to_provider,
            'is_flexible': self.is_flexible,
        }

        input_invoice_message_content = InputInvoiceMessageContent.de_json(
            json_dict, bot=bot)

        assert input_invoice_message_content.title == self.title
        assert input_invoice_message_content.description == self.description
        assert input_invoice_message_content.payload == self.payload
        assert input_invoice_message_content.provider_token == self.provider_token
        assert input_invoice_message_content.currency == self.currency
        assert input_invoice_message_content.prices == self.prices
        assert input_invoice_message_content.max_tip_amount == self.max_tip_amount
        assert input_invoice_message_content.suggested_tip_amounts == [
            int(amount) for amount in self.suggested_tip_amounts
        ]
        assert input_invoice_message_content.provider_data == self.provider_data
        assert input_invoice_message_content.photo_url == self.photo_url
        assert input_invoice_message_content.photo_size == int(self.photo_size)
        assert input_invoice_message_content.photo_width == int(
            self.photo_width)
        assert input_invoice_message_content.photo_height == int(
            self.photo_height)
        assert input_invoice_message_content.need_name == self.need_name
        assert input_invoice_message_content.need_phone_number == self.need_phone_number
        assert input_invoice_message_content.need_email == self.need_email
        assert input_invoice_message_content.need_shipping_address == self.need_shipping_address
        assert (input_invoice_message_content.send_phone_number_to_provider ==
                self.send_phone_number_to_provider)
        assert input_invoice_message_content.send_email_to_provider == self.send_email_to_provider
        assert input_invoice_message_content.is_flexible == self.is_flexible
    def test_de_json(self, bot):
        assert InputInvoiceMessageContent.de_json({}, bot=bot) is None

        json_dict = {
            "title": self.title,
            "description": self.description,
            "payload": self.payload,
            "provider_token": self.provider_token,
            "currency": self.currency,
            "prices": [price.to_dict() for price in self.prices],
            "max_tip_amount": self.max_tip_amount,
            "suggested_tip_amounts": self.suggested_tip_amounts,
            "provider_data": self.provider_data,
            "photo_url": self.photo_url,
            "photo_size": self.photo_size,
            "photo_width": self.photo_width,
            "photo_height": self.photo_height,
            "need_name": self.need_name,
            "need_phone_number": self.need_phone_number,
            "need_email": self.need_email,
            "need_shipping_address": self.need_shipping_address,
            "send_phone_number_to_provider":
            self.send_phone_number_to_provider,
            "send_email_to_provider": self.send_email_to_provider,
            "is_flexible": self.is_flexible,
        }

        input_invoice_message_content = InputInvoiceMessageContent.de_json(
            json_dict, bot=bot)

        assert input_invoice_message_content.title == self.title
        assert input_invoice_message_content.description == self.description
        assert input_invoice_message_content.payload == self.payload
        assert input_invoice_message_content.provider_token == self.provider_token
        assert input_invoice_message_content.currency == self.currency
        assert input_invoice_message_content.prices == self.prices
        assert input_invoice_message_content.max_tip_amount == self.max_tip_amount
        assert input_invoice_message_content.suggested_tip_amounts == [
            int(amount) for amount in self.suggested_tip_amounts
        ]
        assert input_invoice_message_content.provider_data == self.provider_data
        assert input_invoice_message_content.photo_url == self.photo_url
        assert input_invoice_message_content.photo_size == int(self.photo_size)
        assert input_invoice_message_content.photo_width == int(
            self.photo_width)
        assert input_invoice_message_content.photo_height == int(
            self.photo_height)
        assert input_invoice_message_content.need_name == self.need_name
        assert input_invoice_message_content.need_phone_number == self.need_phone_number
        assert input_invoice_message_content.need_email == self.need_email
        assert input_invoice_message_content.need_shipping_address == self.need_shipping_address
        assert (input_invoice_message_content.send_phone_number_to_provider ==
                self.send_phone_number_to_provider)
        assert input_invoice_message_content.send_email_to_provider == self.send_email_to_provider
        assert input_invoice_message_content.is_flexible == self.is_flexible
Ejemplo n.º 3
0
    def test_equality(self):
        a = InputInvoiceMessageContent(
            self.title,
            self.description,
            self.payload,
            self.provider_token,
            self.currency,
            self.prices,
        )
        b = InputInvoiceMessageContent(
            self.title,
            self.description,
            self.payload,
            self.provider_token,
            self.currency,
            self.prices,
            max_tip_amount=100,
            provider_data='foobar',
        )
        c = InputInvoiceMessageContent(
            self.title,
            self.description,
            self.payload,
            self.provider_token,
            self.currency,
            # the first prices amount & the second lebal changed
            [LabeledPrice('label1', 24),
             LabeledPrice('label22', 314)],
        )
        d = InputInvoiceMessageContent(
            self.title,
            self.description,
            'different_payload',
            self.provider_token,
            self.currency,
            self.prices,
        )
        e = InputTextMessageContent('text')

        assert a == b
        assert hash(a) == hash(b)

        assert a != c
        assert hash(a) != hash(c)

        assert a != d
        assert hash(a) != hash(d)

        assert a != e
        assert hash(a) != hash(e)
Ejemplo n.º 4
0
def input_invoice_message_content():
    return InputInvoiceMessageContent(
        title=TestInputInvoiceMessageContent.title,
        description=TestInputInvoiceMessageContent.description,
        payload=TestInputInvoiceMessageContent.payload,
        provider_token=TestInputInvoiceMessageContent.provider_token,
        currency=TestInputInvoiceMessageContent.currency,
        prices=TestInputInvoiceMessageContent.prices,
        max_tip_amount=TestInputInvoiceMessageContent.max_tip_amount,
        suggested_tip_amounts=TestInputInvoiceMessageContent.
        suggested_tip_amounts,
        provider_data=TestInputInvoiceMessageContent.provider_data,
        photo_url=TestInputInvoiceMessageContent.photo_url,
        photo_size=TestInputInvoiceMessageContent.photo_size,
        photo_width=TestInputInvoiceMessageContent.photo_width,
        photo_height=TestInputInvoiceMessageContent.photo_height,
        need_name=TestInputInvoiceMessageContent.need_name,
        need_phone_number=TestInputInvoiceMessageContent.need_phone_number,
        need_email=TestInputInvoiceMessageContent.need_email,
        need_shipping_address=TestInputInvoiceMessageContent.
        need_shipping_address,
        send_phone_number_to_provider=TestInputInvoiceMessageContent.
        send_phone_number_to_provider,
        send_email_to_provider=TestInputInvoiceMessageContent.
        send_email_to_provider,
        is_flexible=TestInputInvoiceMessageContent.is_flexible,
    )