"""Test sqlite.""" import pytest from territories.connectors.sqlite import session_scope from territories.models.territory import Territory USA_DICT = { 'orch_id': 1, 'standard': 'Orch_1_2016', 'territory_name': 'United States of America', 'territory_code_a2': 'US', 'territory_code_a3': 'USA', 'territory_code_numeric': 1, 'continent': 'North America' } def test_db_insert(db_fixture): """Test sqlite connection. Create insert operation and check by query. Args: db_fixture: fixture """ with session_scope() as db_session: country = Territory( territory_id=99999, orch_id=1, standard='Orch_1_2016', territory_name='United States of America', territory_code_a2='US', territory_code_a3='USA', territory_code_numeric=1) db_session.add(country) record = db_session.query(Territory).first() assert record @pytest.fixture def create_usa_fixture(): """Create USA fixture.""" with session_scope() as db_session: country = Territory( territory_id=99999, continent='North America', orch_id=1, standard='Orch_1_2016', territory_name='United States of America', territory_code_a2='US', territory_code_a3='USA', territory_code_numeric=1) db_session.add(country) def test_model_to_dict(db_fixture, create_usa_fixture): """Test convert model to dict.""" with session_scope() as db_session: country = db_session.query(Territory).filter( Territory.standard == 'Orch_1_2016', Territory.territory_code_a2 == 'US' ).first() country_dict = country.to_dict() assert country_dict == USA_DICT def test_model_to_dict_with_pk(db_fixture, create_usa_fixture): """Test convert model to dict including primary key.""" USA_DICT_WITH_PK = USA_DICT.copy() USA_DICT_WITH_PK['id'] = 99999 with session_scope() as db_session: country = db_session.query(Territory).filter( Territory.standard == 'Orch_1_2016', Territory.territory_code_a2 == 'US' ).first() country_dict = country.to_dict(include_primary_key=True) assert country_dict == USA_DICT_WITH_PK