Exemple #1
0
    def generateEvent(self, data={}, destination=None):
        '''
        Generates a new event.

        This function can get overridden by
        ``wishbone.module.InputModule._generateNativeEvent``.

        The provided ``data`` will be traversed in search of valid templates
        which then will be rendered.

        Args:
            data (``data``): The payload to add to the event.
            destination (None): The destination key to write the data to

        Returns:
            wishbone.event.Event: An event containing ``data`` as a payload.

        '''
        if destination in [None, "data"]:
            event = Wishbone_Event(data)
            event.renderField(destination, self.env_template)
        else:
            event = Wishbone_Event()
            event.set(data, destination)
            event.renderField(destination, self.env_template)
        return event
Exemple #2
0
def test_render_field():

    e = Event({"value": "Hello", "template": "{{data.value}} how are you doing?"})
    assert e.get("data.template") == "{{data.value}} how are you doing?"
    e.renderField("data.template")
    assert e.get("data.template") == "Hello how are you doing?"