Ejemplo n.º 1
0
def test_tax_projection_aggregated():
    n = 1
    population = create_testing_population_dataframe(year_start=2001, year_end=2061, rate=n)
    profile = create_constant_profiles_dataframe(population, tax=-1, sub=0.5)
    g = 0.5
    r = 0.0 
    cohort = DataCohorts(population)
    cohort.fill(profile)
    typ = None
    cohort.proj_tax(g, r, typ,  method = 'aggregate')
    test_value = cohort.get_value((0,1,2002), 'tax')
    test_value2 = cohort.get_value((0,1,2002), 'sub')
    assert test_value2 < 0.5 and test_value > -1
Ejemplo n.º 2
0
def test_fill_cohort():   
    population = create_empty_population_dataframe(2001, 2061)
    profiles = create_constant_profiles_dataframe(population, tax = -1, subsidies = 0.5)
    cohorts_test = DataCohorts(data = population, columns = ['pop'])
    cohorts_test.fill(profiles, year = None)
    test_value = cohorts_test.get_value((0,0,2060), 'tax')
    assert test_value == -1
Ejemplo n.º 3
0
def test_tax_projection():

    population = create_empty_population_dataframe(2001, 2061)
    profile = create_constant_profiles_dataframe(population, tax = -1, sub=0.5) 
    g = 0.05
    r = 0
    cohort = DataCohorts(population)
    year_length = 200
    method = 'stable'   
    cohort.population_project(year_length, method = method)
    cohort.fill(profile)
    typ = None
    cohort.proj_tax(g, r, typ,  method = 'per_capita')
#    print cohort
    test_value = cohort.get_value((0,1,2002), 'tax')
    test_value2 = cohort.get_value((0,1,2002), 'sub')
#    print test_value, test_value2
    # TODO: I don't understand the following <- Just wanted to check if the for loop works by changing the value of typ in the test
    assert test_value2 > 0.5 and test_value < -1
Ejemplo n.º 4
0
def test_compute_net_transfers():
    population = create_empty_population_dataframe(2001, 2061)
    profiles = create_constant_profiles_dataframe(population, tax = 1, subsidies = 0.5)
    tax = ['tax']
    subsidy = ['subsidies']
    cohorts_test = DataCohorts(data = population, columns = ['pop'])
    cohorts_test.fill(profiles, year = None)
    cohorts_test.compute_net_transfers(taxes_list = tax, payments_list = subsidy)
    test_value = cohorts_test.get_value((0,0,2060), 'net_transfers')
    assert test_value == 0.5
    
    pass
Ejemplo n.º 5
0
def test_population_projection():
    # Create cohorts
    start_data = 2001
    end_data = 2061
    population = create_empty_population_dataframe(start_data, end_data)
    cohorts = DataCohorts(data = population, columns = ['pop'])

    # Complete population projection
    year_length = 100
    end_project = start_data + year_length
    method = 'exp_growth'   
    growth_rate = n = 0.05
    cohorts.population_project(year_length, method = method, growth_rate = n)
    
    year_control = 2082
    control_value = (1+n)**(year_control - end_data - 1)
    test_value = cohorts.get_value((0,0,2081), "pop")
    assert test_value == control_value