예제 #1
0
def test_table_records_factory(table: Table) -> None:
    table_records_strategy = records.factory(table)
    table_record = example(table_records_strategy)

    assert isinstance(table_records_strategy, SearchStrategy)
    assert isinstance(table_record, tuple)
    assert table_record_is_valid(table_record, table=table)
예제 #2
0
def test_tables_factory(metadata: MetaData) -> None:
    tables = factory(metadatas=strategies.just(metadata))
    table = example(tables)

    assert isinstance(tables, SearchStrategy)
    assert isinstance(table, Table)
    assert any(not is_column_unique(column) for column in table.columns)
예제 #3
0
def test_table_records_lists_factory(table: Table) -> None:
    table_records_lists = records.lists_factory(table)
    table_records = example(table_records_lists)

    assert isinstance(table_records_lists, SearchStrategy)
    assert isinstance(table_records, list)
    assert all(isinstance(record, tuple) for record in table_records)
    assert all(map(partial(table_record_is_valid, table=table), table_records))
예제 #4
0
def test_enums_factory() -> None:
    none_enums = factory(values=strategies.just(None))
    none_enum = example(none_enums)
    int_enums = factory(bases=strategies.tuples(strategies.just(IntEnum)))
    int_enum = example(int_enums)
    datetimes_enums = factory(bases=strategies.tuples(strategies.just(Enum)),
                              values=strategies.datetimes(),
                              datetime=datetime)
    datetimes_enum = example(datetimes_enums)
    invalid_keys_enums = factory(keys=strategies.none())
    invalid_values_enums = factory(
            bases=strategies.tuples(strategies.just(IntEnum)),
            values=strategies.none())

    assert isinstance(none_enums, SearchStrategy)
    assert isinstance(int_enums, SearchStrategy)
    assert isinstance(datetimes_enums, SearchStrategy)
    assert isinstance(none_enum, EnumMeta)
    assert isinstance(int_enum, EnumMeta)
    assert isinstance(datetimes_enum, EnumMeta)
    assert issubclass(none_enum, Enum)
    assert issubclass(int_enum, IntEnum)
    assert issubclass(datetimes_enum, Enum)
    assert all(member.value is None
               for member in none_enum)
    assert all(isinstance(member, int)
               for member in int_enum)
    assert all(isinstance(member.value, datetime.datetime)
               for member in datetimes_enum)

    with pytest.raises(ValueError):
        example(invalid_keys_enums)

    with pytest.raises(TypeError):
        example(invalid_values_enums)
예제 #5
0
def filtration_method() -> str:
    return example(strategies.filtration_methods)
예제 #6
0
def test_enum_types_factory() -> None:
    enums = types_factory()
    enum = example(enums)

    assert isinstance(enums, SearchStrategy)
    assert isinstance(enum, EnumType)
예제 #7
0
def dst_stars() -> List[Star]:
    return example(strategies.defined_stars_lists)
예제 #8
0
def star() -> Star:
    return example(strategies.defined_stars)
예제 #9
0
파일: utils.py 프로젝트: not4drugs/messy
def message() -> bytes:
    return example(strategies.messages)
예제 #10
0
def non_float_string() -> str:
    return example(strategies.non_float_strings)
예제 #11
0
def statement_result() -> int:
    return example(strategies.integers)
예제 #12
0
def message() -> str:
    return example(messages_strategy)
예제 #13
0
def float_value() -> float:
    return example(strategies.floats)
예제 #14
0
def generate_key_json() -> Optional[JsonType]:
    return example(strategies.generate_key_jsons)
예제 #15
0
파일: utils.py 프로젝트: not4drugs/messy
def name() -> str:
    return example(strategies.names)
예제 #16
0
def add_key_json() -> JsonType:
    return example(strategies.add_key_jsons)
예제 #17
0
def table() -> Table:
    return example(strategies.tables)