def test_metrics_can_be_sent_manually(app):
    metrics.send(measurement="heartbeat",
                 alive=True,
                 tags={"trigger": "manual"})

    observation = metrics.outgoing["heartbeat"][0]
    assert observation["fields"]["alive"] is True
    assert observation["tags"]["trigger"] == "manual"
def test_dispatching(app):
    # run the non-testing branch
    app.config["TESTING"] = False
    metrics.send(measurement="heartbeat",
                 alive=True,
                 tags={"trigger": "manual"})
def test_metrics_called_without_arguments_raises_exception(app):
    with pytest.raises(ValueError):
        metrics.send(measurement="heartbeat")