示例#1
0
def test_materialized_from_obj_maybe_materialize(db_engine_with_events_table):
    from_obj = FromObj(from_obj="events",
                       name="myquery",
                       knowledge_date_column='event_date')
    from_obj.should_materialize = lambda: True
    from_obj.maybe_materialize(db_engine_with_events_table)
    assert table_exists(from_obj.table, db_engine_with_events_table)
示例#2
0
def test_materialized_from_obj_should_materialize_subquery():
    from_obj = FromObj(
        from_obj=
        "(select entity_id, date from mytable1 join entities using(entity_id)) joined_events",
        name="events",
        knowledge_date_column="date")
    assert from_obj.should_materialize()
    assert from_obj.table == "events_from_obj"
示例#3
0
def test_materialized_from_obj_should_handle_leading_whitespace():
    q = """    (
      SELECT entity_id, date
      from mytable1
      join entities using (entity_id)
    ) AS joined_events"""
    from_obj = FromObj(from_obj=q, name="events", knowledge_date_column="date")
    assert from_obj.should_materialize()
    assert from_obj.table == "events_from_obj"
示例#4
0
def test_materialized_from_obj_should_not_materialize_tbl():
    from_obj = FromObj(from_obj="mytable1",
                       name="events",
                       knowledge_date_column="date")
    assert not from_obj.should_materialize()
    assert from_obj.table == "mytable1"
示例#5
0
def test_materialized_from_obj_should_handle_keywords():
    from_obj = FromObj(from_obj="events",
                       name="events",
                       knowledge_date_column="date")
    assert not from_obj.should_materialize()
    assert from_obj.table == "events"
示例#6
0
def test_materialized_from_obj_should_not_materialize_join():
    from_obj = FromObj(from_obj="mytable1 join entities using(entity_id)",
                       name="events",
                       knowledge_date_column="date")
    assert not from_obj.should_materialize()
    assert from_obj.table == "mytable1 join entities using(entity_id)"