コード例 #1
0
def test_legal_entity_derivations(database):
    initialize_db_values(database)

    # if there is a legal_entity_zip5, record_type is always 2
    # when we have legal_entity_zip5 and zip4
    obj = initialize_test_obj(le_zip5="12345", le_zip4="6789")
    obj = fabs_derivations(obj, database.session)
    assert obj['legal_entity_city_name'] == "Test Zip City"
    assert obj['legal_entity_congressional'] == "01"
    assert obj['legal_entity_county_code'] == "001"
    assert obj['legal_entity_county_name'] == "Test County"
    assert obj['legal_entity_state_code'] == "NY"
    assert obj['legal_entity_state_name'] == "New York"

    # when we have legal_entity_zip5 but no zip4
    obj = initialize_test_obj(le_zip5="12345", le_zip4="6789")
    obj = fabs_derivations(obj, database.session)
    assert obj['legal_entity_city_name'] == "Test Zip City"
    assert obj['legal_entity_congressional'] == "01" or "02"
    assert obj['legal_entity_county_code'] == "001"
    assert obj['legal_entity_county_name'] == "Test County"
    assert obj['legal_entity_state_code'] == "NY"
    assert obj['legal_entity_state_name'] == "New York"

    # if there is no legal_entity_zip5, record_type is always 1 and ppop_code is always in format XX**###
    obj = initialize_test_obj(record_type=1, ppop_cd="03", ppop_code="NY**001")
    obj = fabs_derivations(obj, database.session)
    assert obj['legal_entity_city_name'] is None
    assert obj['legal_entity_congressional'] == "03"
    assert obj['legal_entity_county_code'] == "001"
    assert obj['legal_entity_county_name'] == "Test County"
    assert obj['legal_entity_state_code'] == "NY"
    assert obj['legal_entity_state_name'] == "New York"
コード例 #2
0
def test_legal_entity_derivations(database):
    initialize_db_values(database)

    # if there is a legal_entity_zip5, record_type is always 2
    # when we have legal_entity_zip5 and zip4
    obj = initialize_test_obj(le_zip5="12345", le_zip4="6789")
    obj = fabs_derivations(obj, database.session)
    assert obj['legal_entity_city_name'] == "Test Zip City"
    assert obj['legal_entity_congressional'] == "01"
    assert obj['legal_entity_county_code'] == "001"
    assert obj['legal_entity_county_name'] == "Test County"
    assert obj['legal_entity_state_code'] == "NY"
    assert obj['legal_entity_state_name'] == "New York"

    # when we have legal_entity_zip5 but no zip4
    obj = initialize_test_obj(le_zip5="12345", le_zip4="6789")
    obj = fabs_derivations(obj, database.session)
    assert obj['legal_entity_city_name'] == "Test Zip City"
    assert obj['legal_entity_congressional'] == "01" or "02"
    assert obj['legal_entity_county_code'] == "001"
    assert obj['legal_entity_county_name'] == "Test County"
    assert obj['legal_entity_state_code'] == "NY"
    assert obj['legal_entity_state_name'] == "New York"

    # if there is no legal_entity_zip5, record_type is always 1 and ppop_code is always in format XX**###
    obj = initialize_test_obj(record_type=1, ppop_cd="03", ppop_code="NY**001")
    obj = fabs_derivations(obj, database.session)
    assert obj['legal_entity_city_name'] is None
    assert obj['legal_entity_congressional'] == "03"
    assert obj['legal_entity_county_code'] == "001"
    assert obj['legal_entity_county_name'] == "Test County"
    assert obj['legal_entity_state_code'] == "NY"
    assert obj['legal_entity_state_name'] == "New York"
コード例 #3
0
def test_ppop_state_name(database):
    initialize_db_values(database)

    obj = initialize_test_obj()
    obj = fabs_derivations(obj, database.session)
    assert obj['place_of_perform_state_nam'] == "New York"

    obj = initialize_test_obj(ppop_code="00*****")
    obj = fabs_derivations(obj, database.session)
    assert obj['place_of_perform_state_nam'] == "Multi-state"
コード例 #4
0
def test_funding_office_codes(database):
    initialize_db_values(database)

    # if funding office_code is present, get office name
    obj = initialize_test_obj()
    obj = fabs_derivations(obj, database.session)
    assert obj['funding_office_name'] == 'Office'

    obj = initialize_test_obj(funding_office='111111')
    obj = fabs_derivations(obj, database.session)
    assert obj['funding_office_name'] is None
コード例 #5
0
def test_legal_country(database):
    initialize_db_values(database)

    # if primary_plce_of_performance_country_code is present get country name
    obj = initialize_test_obj(legal_country='USA')
    obj = fabs_derivations(obj, database.session)
    assert obj['legal_entity_country_name'] == 'United States of America'

    obj = initialize_test_obj(legal_country='NK')
    obj = fabs_derivations(obj, database.session)
    assert obj['legal_entity_country_name'] is None
コード例 #6
0
def test_cfda_title(database):
    initialize_db_values(database, cfda_title="Test Title")

    # when cfda_number isn't in the database
    obj = initialize_test_obj()
    obj = fabs_derivations(obj, database.session)
    assert obj['cfda_title'] is None

    # when cfda_number is in the database
    obj = initialize_test_obj(cfda_num="12.345")
    obj = fabs_derivations(obj, database.session)
    assert obj['cfda_title'] == "Test Title"
コード例 #7
0
def test_funding_sub_tier_agency_na(database):
    initialize_db_values(database)

    # when funding_sub_tier_agency_co is not provided
    obj = initialize_test_obj()
    obj = fabs_derivations(obj, database.session)
    assert obj['funding_sub_tier_agency_na'] is None

    # when funding_sub_tier_agency_co is provided
    obj = initialize_test_obj(sub_fund_agency_code="1234")
    obj = fabs_derivations(obj, database.session)
    assert obj['funding_sub_tier_agency_na'] == "Test Subtier Agency"
コード例 #8
0
def test_cfda_title(database):
    initialize_db_values(database, cfda_title="Test Title")

    # when cfda_number isn't in the database
    obj = initialize_test_obj()
    obj = fabs_derivations(obj, database.session)
    assert obj['cfda_title'] is None

    # when cfda_number is in the database
    obj = initialize_test_obj(cfda_num="12.345")
    obj = fabs_derivations(obj, database.session)
    assert obj['cfda_title'] == "Test Title"
コード例 #9
0
def test_afa_generated_unique(database):
    initialize_db_values(database)

    # Testing with none values
    obj = initialize_test_obj()
    obj = fabs_derivations(obj, database.session)
    assert obj['afa_generated_unique'] == '-none-1234-none--none-'

    # testing with no none values
    obj = initialize_test_obj(award_mod_amend='award', fain='fain', uri='uri')
    obj = fabs_derivations(obj, database.session)
    assert obj['afa_generated_unique'] == 'award1234fainuri'
コード例 #10
0
def test_funding_agency_name(database):
    initialize_db_values(database, cgac_code="000")

    # when funding_agency_code is not provided
    obj = initialize_test_obj()
    obj = fabs_derivations(obj, database.session)
    assert obj['funding_agency_name'] is None

    # when funding_agency_code is provided
    obj = initialize_test_obj(fund_agency_code="000")
    obj = fabs_derivations(obj, database.session)
    assert obj['funding_agency_name'] == "Test CGAC Agency"
コード例 #11
0
def test_funding_sub_tier_agency_na(database):
    initialize_db_values(database, cgac_code="5678")

    # when funding_sub_tier_agency_co is not provided
    obj = initialize_test_obj()
    obj = fabs_derivations(obj, database.session)
    assert obj['funding_sub_tier_agency_na'] is None
    assert obj['funding_agency_code'] is None
    assert obj['funding_agency_name'] is None

    # when funding_sub_tier_agency_co is provided
    obj = initialize_test_obj(sub_fund_agency_code="1234")
    obj = fabs_derivations(obj, database.session)
    assert obj['funding_sub_tier_agency_na'] == "Test Subtier Agency"
    assert obj['funding_agency_code'] == '5678'
    assert obj['funding_agency_name'] == 'Test CGAC Agency'
コード例 #12
0
def test_awarding_agency_cgac(database):
    initialize_db_values(database, cgac_code="000", frec_code="1111")

    obj = initialize_test_obj(sub_tier_code="1234")
    obj = fabs_derivations(obj, database.session)
    assert obj['awarding_agency_code'] == "000"
    assert obj['awarding_agency_name'] == "Test CGAC Agency"
    assert obj['awarding_sub_tier_agency_n'] == "Test Subtier Agency"
コード例 #13
0
def test_awarding_agency_cgac(database):
    initialize_db_values(database, cgac_code="000", frec_code="1111")

    obj = initialize_test_obj(sub_tier_code="1234")
    obj = fabs_derivations(obj, database.session)
    assert obj['awarding_agency_code'] == "000"
    assert obj['awarding_agency_name'] == "Test CGAC Agency"
    assert obj['awarding_sub_tier_agency_n'] == "Test Subtier Agency"
コード例 #14
0
def test_total_funding_amount(database):
    initialize_db_values(database)

    # when fao and nffa are empty
    obj = initialize_test_obj()
    obj = fabs_derivations(obj, database.session)
    assert obj['total_funding_amount'] == 0

    # when one of fao and nffa is empty and the other isn't
    obj = initialize_test_obj(fao=5.3)
    obj = fabs_derivations(obj, database.session)
    assert obj['total_funding_amount'] == 5.3

    # when fao and nffa aren't empty
    obj = initialize_test_obj(fao=-10.6, nffa=123)
    obj = fabs_derivations(obj, database.session)
    assert obj['total_funding_amount'] == 112.4
コード例 #15
0
def test_is_active(database):
    initialize_db_values(database)

    # Testing with none values
    obj = initialize_test_obj()
    obj = fabs_derivations(obj, database.session)
    assert obj['is_active'] is True

    # Testing with value other than D
    obj = initialize_test_obj(cldi="c")
    obj = fabs_derivations(obj, database.session)
    assert obj['is_active'] is True

    # Testing with D
    obj = initialize_test_obj(cldi="D")
    obj = fabs_derivations(obj, database.session)
    assert obj['is_active'] is False
コード例 #16
0
def test_is_active(database):
    initialize_db_values(database)

    # Testing with none values
    obj = initialize_test_obj()
    obj = fabs_derivations(obj, database.session)
    assert obj['is_active'] is True

    # Testing with value other than D
    obj = initialize_test_obj(cldi="c")
    obj = fabs_derivations(obj, database.session)
    assert obj['is_active'] is True

    # Testing with D
    obj = initialize_test_obj(cldi="D")
    obj = fabs_derivations(obj, database.session)
    assert obj['is_active'] is False
コード例 #17
0
def test_total_funding_amount(database):
    initialize_db_values(database)

    # when fao and nffa are empty
    obj = initialize_test_obj()
    obj = fabs_derivations(obj, database.session)
    assert obj['total_funding_amount'] == 0

    # when one of fao and nffa is empty and the other isn't
    obj = initialize_test_obj(fao=5.3)
    obj = fabs_derivations(obj, database.session)
    assert obj['total_funding_amount'] == 5.3

    # when fao and nffa aren't empty
    obj = initialize_test_obj(fao=-10.6, nffa=123)
    obj = fabs_derivations(obj, database.session)
    assert obj['total_funding_amount'] == 112.4
コード例 #18
0
def test_ppop_derivations(database):
    initialize_db_values(database)

    # when ppop_zip4a is 5 digits and no congressional district
    obj = initialize_test_obj(ppop_zip4a="123454321")
    obj = fabs_derivations(obj, database.session)
    assert obj['place_of_performance_congr'] == '02'
    assert obj['place_of_perform_county_co'] == "001"
    assert obj['place_of_perform_county_na'] == "Test County"
    assert obj['place_of_performance_city'] == "Test Zip City"

    # when ppop_zip4a is 5 digits and has congressional district
    obj = initialize_test_obj(ppop_zip4a="12345-4321", ppop_cd="03")
    obj = fabs_derivations(obj, database.session)
    assert obj['place_of_performance_congr'] == '03'

    # when ppop_zip4a is 5 digits
    obj = initialize_test_obj(ppop_zip4a="12345")
    obj = fabs_derivations(obj, database.session)
    # cd should be 90 if there's more than one option
    assert obj['place_of_performance_congr'] == '90'
    assert obj['place_of_perform_county_co'] == "001"
    assert obj['place_of_perform_county_na'] == "Test County"
    assert obj['place_of_performance_city'] == "Test Zip City"

    # when ppop_zip4 is 9 digits but last 4 are invalid (one cd available)
    obj = initialize_test_obj(ppop_zip4a="543210000")
    obj = fabs_derivations(obj, database.session)
    assert obj['place_of_performance_congr'] == '05'
    assert obj['place_of_perform_county_co'] == "001"
    assert obj['place_of_perform_county_na'] == "Test County"
    assert obj['place_of_performance_city'] == "Test Zip City 2"

    # when ppop_zip4 is 9 digits (no cd available)
    obj = initialize_test_obj(ppop_zip4a="987654321")
    obj = fabs_derivations(obj, database.session)
    assert obj['place_of_performance_congr'] == '90'
    assert obj['place_of_perform_county_co'] == "001"
    assert obj['place_of_perform_county_na'] == "Test County"
    assert obj['place_of_performance_city'] == "Test Zip City 3"

    # when we don't have ppop_zip4a and ppop_code is in XX**### format
    obj = initialize_test_obj(ppop_code="NY**001")
    obj = fabs_derivations(obj, database.session)
    assert obj['place_of_perform_county_co'] == "001"
    assert obj['place_of_perform_county_na'] == "Test County"
    assert obj['place_of_performance_city'] is None
    assert obj['place_of_performance_congr'] is None

    # when we don't have ppop_zip4a and ppop_code is in XX##### format
    obj = initialize_test_obj(ppop_code="NY00001")
    obj = fabs_derivations(obj, database.session)
    assert obj['place_of_perform_county_co'] == "001"
    assert obj['place_of_perform_county_na'] == "Test City County"
    assert obj['place_of_performance_city'] == "Test City"
    assert obj['place_of_performance_congr'] is None
コード例 #19
0
def test_ppop_derivations(database):
    initialize_db_values(database)

    # when ppop_zip4a is 5 digits and no congressional district
    obj = initialize_test_obj(ppop_zip4a="123454321")
    obj = fabs_derivations(obj, database.session)
    assert obj['place_of_performance_congr'] == '02'
    assert obj['place_of_perform_county_na'] == "Test County"
    assert obj['place_of_performance_city'] == "Test Zip City"

    # when ppop_zip4a is 5 digits and has congressional district
    obj = initialize_test_obj(ppop_zip4a="12345-4321", ppop_cd="03")
    obj = fabs_derivations(obj, database.session)
    assert obj['place_of_performance_congr'] == '03'

    # when ppop_zip4a is 4 digits
    obj = initialize_test_obj(ppop_zip4a="12345")
    obj = fabs_derivations(obj, database.session)
    # hard to tell which will be "first" because it depends on what order it's added by sqlalchemy,
    # but we know it has to be one of them
    assert obj['place_of_performance_congr'] == '01' or '02'
    assert obj['place_of_perform_county_na'] == "Test County"
    assert obj['place_of_performance_city'] == "Test Zip City"

    # when we don't have ppop_zip4a and ppop_code is in XX**### format
    obj = initialize_test_obj(ppop_code="NY**001")
    obj = fabs_derivations(obj, database.session)
    assert obj['place_of_perform_county_na'] == "Test County"
    assert obj['place_of_performance_city'] is None
    assert obj['place_of_performance_congr'] is None

    # when we don't have ppop_zip4a and ppop_code is in XX##### format
    obj = initialize_test_obj(ppop_code="NY00001")
    obj = fabs_derivations(obj, database.session)
    assert obj['place_of_perform_county_na'] == "Test City County"
    assert obj['place_of_performance_city'] == "Test City"
    assert obj['place_of_performance_congr'] is None
コード例 #20
0
def test_ppop_state_name(database):
    initialize_db_values(database)

    obj = initialize_test_obj()
    obj = fabs_derivations(obj, database.session)
    assert obj['place_of_perform_state_nam'] == "New York"