Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions changelog_entry.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
- bump: minor
changes:
added:
- is_federal_work_study_participant.
- is_part_time_college_student.
changed:
- Refactor is_snap_ineligible_student to include part-time students and Federal Work Study exception.
- Update snap_countable_earner to exclude Federal Work Study income.
12 changes: 12 additions & 0 deletions policyengine_us/parameters/gov/usda/snap/student/young_child.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
description: The Department of Agriculture provides the Supplemental Nutrition Assistance Program to students if they are parents in two-parent households caring for a child below this age.

values:
2005-01-01: 6

metadata:
unit: year
period: year
label: SNAP student two-parent household child age threshold
reference:
- title: 7 U.S. Code § 2015 - Eligibility disqualifications (e)(5)(A)
href: https://www.law.cornell.edu/uscode/text/7/2015#e
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
description: The Department of Agriculture provides the Supplemental Nutrition Assistance Program to students if they are single parents caring for a child below this age.

values:
2005-01-01: 12

metadata:
unit: year
period: year
label: SNAP student single parent child age threshold
reference:
- title: 7 U.S. Code § 2015 - Eligibility disqualifications (e)(8)
href: https://www.law.cornell.edu/uscode/text/7/2015#e
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
- name: Not a college student
period: 2024
input:
is_full_time_college_student: false
is_part_time_college_student: false
output:
is_snap_higher_ed_student: false

- name: Full-time college student
period: 2024
input:
is_full_time_college_student: true
is_part_time_college_student: false
output:
is_snap_higher_ed_student: true

- name: Part-time college student
period: 2024
input:
is_full_time_college_student: false
is_part_time_college_student: true
output:
is_snap_higher_ed_student: true
Original file line number Diff line number Diff line change
@@ -1,21 +1,92 @@
- name: Student who does not meet any exemption criteria
- name: College student who does not meet any exemption criteria
period: 2022
input:
is_full_time_student: true
is_full_time_college_student: true
age: 18
is_disabled: false
weekly_hours_worked_before_lsr: 0
is_parent: false
output:
is_snap_ineligible_student: true

- name: Student who is under the age limit
- name: College student who is under the age limit
period: 2022
input:
is_full_time_student: true
is_full_time_college_student: true
age: 17
is_disabled: false
weekly_hours_worked_before_lsr: 0
is_parent: false
output:
is_snap_ineligible_student: false

- name: College student receiving TANF benefits
period: 2022
input:
is_full_time_college_student: true
age: 20
is_disabled: false
weekly_hours_worked_before_lsr: 0
is_parent: false
tanf_person: 500
output:
is_snap_ineligible_student: false

- name: K-12 student is not affected by student rule
period: 2022
input:
is_full_time_college_student: false
is_in_k12_school: true
age: 16
is_disabled: false
weekly_hours_worked_before_lsr: 0
is_parent: false
output:
is_snap_ineligible_student: false

- name: Single parent college student with child under 12 is eligible
period: 2022
input:
people:
parent:
is_full_time_college_student: true
age: 25
is_disabled: false
weekly_hours_worked_before_lsr: 0
tanf_person: 0
child:
age: 8
tanf_person: 0
tax_units:
tax_unit:
members: [parent, child]
spm_units:
spm_unit:
members: [parent, child]
output:
is_snap_ineligible_student: [false, false]

- name: Two parent household with child under 6 is eligible
period: 2022
input:
people:
parent1:
is_full_time_college_student: true
age: 28
is_disabled: false
weekly_hours_worked_before_lsr: 0
tanf_person: 0
parent2:
age: 30
tanf_person: 0
child:
age: 4
tanf_person: 0
tax_units:
tax_unit:
members: [parent1, parent2, child]
spm_units:
spm_unit:
members: [parent1, parent2, child]
output:
is_snap_ineligible_student: [false, false, false]
Original file line number Diff line number Diff line change
@@ -0,0 +1,194 @@
- name: Not a parent does not meet exception
period: 2024
input:
is_tax_unit_head_or_spouse: false
output:
meets_snap_parent_exception: false

- name: Parent with no children does not meet exception
period: 2024
input:
is_tax_unit_head_or_spouse: true
output:
meets_snap_parent_exception: false

- name: Single parent with child under 12 meets exception
period: 2024
input:
people:
parent:
is_tax_unit_head_or_spouse: true
age: 30
child:
age: 10
tax_units:
tax_unit:
members: [parent, child]
spm_units:
spm_unit:
members: [parent, child]
output:
meets_snap_parent_exception: [true, false]

- name: Single parent with child exactly 12 does not meet exception
period: 2024
input:
people:
parent:
is_tax_unit_head_or_spouse: true
age: 35
child:
age: 12
tax_units:
tax_unit:
members: [parent, child]
spm_units:
spm_unit:
members: [parent, child]
output:
meets_snap_parent_exception: [false, false]

- name: Single parent with child over 12 does not meet exception
period: 2024
input:
people:
parent:
is_tax_unit_head_or_spouse: true
age: 38
child:
age: 15
tax_units:
tax_unit:
members: [parent, child]
spm_units:
spm_unit:
members: [parent, child]
output:
meets_snap_parent_exception: [false, false]

- name: Two-parent household with child under 6 meets exception
period: 2024
input:
people:
parent1:
is_tax_unit_head_or_spouse: true
age: 28
parent2:
is_tax_unit_head_or_spouse: true
age: 30
child:
age: 4
tax_units:
tax_unit:
members: [parent1, parent2, child]
spm_units:
spm_unit:
members: [parent1, parent2, child]
output:
meets_snap_parent_exception: [true, true, false]

- name: Two-parent household with child exactly 6 does not meet exception
period: 2024
input:
people:
parent1:
is_tax_unit_head_or_spouse: true
age: 32
parent2:
is_tax_unit_head_or_spouse: true
age: 34
child:
age: 6
tax_units:
tax_unit:
members: [parent1, parent2, child]
spm_units:
spm_unit:
members: [parent1, parent2, child]
output:
meets_snap_parent_exception: [false, false, false]

- name: Two-parent household with child between 6 and 12 does not meet exception
period: 2024
input:
people:
parent1:
is_tax_unit_head_or_spouse: true
age: 35
parent2:
is_tax_unit_head_or_spouse: true
age: 37
child:
age: 9
tax_units:
tax_unit:
members: [parent1, parent2, child]
spm_units:
spm_unit:
members: [parent1, parent2, child]
output:
meets_snap_parent_exception: [false, false, false]

- name: Two-parent household with child over 12 does not meet exception
period: 2024
input:
people:
parent1:
is_tax_unit_head_or_spouse: true
age: 40
parent2:
is_tax_unit_head_or_spouse: true
age: 42
child:
age: 14
tax_units:
tax_unit:
members: [parent1, parent2, child]
spm_units:
spm_unit:
members: [parent1, parent2, child]
output:
meets_snap_parent_exception: [false, false, false]

- name: Single parent with multiple children - youngest under 12
period: 2024
input:
people:
parent:
is_tax_unit_head_or_spouse: true
age: 40
child1:
age: 15
child2:
age: 8
tax_units:
tax_unit:
members: [parent, child1, child2]
spm_units:
spm_unit:
members: [parent, child1, child2]
output:
meets_snap_parent_exception: [true, false, false]

- name: Two-parent household with multiple children - youngest under 6
period: 2024
input:
people:
parent1:
is_tax_unit_head_or_spouse: true
age: 35
parent2:
is_tax_unit_head_or_spouse: true
age: 37
child1:
age: 10
child2:
age: 3
tax_units:
tax_unit:
members: [parent1, parent2, child1, child2]
spm_units:
spm_unit:
members: [parent1, parent2, child1, child2]
output:
meets_snap_parent_exception: [true, true, false, false]
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
- name: Does not meet exception - works less than 20 hours, no work study
period: 2024
input:
weekly_hours_worked_before_lsr: 15
is_federal_work_study_participant: false
output:
meets_snap_work_exception: false

- name: Meets exception - works exactly 20 hours
period: 2024
input:
weekly_hours_worked_before_lsr: 20
is_federal_work_study_participant: false
output:
meets_snap_work_exception: true

- name: Meets exception - works more than 20 hours
period: 2024
input:
weekly_hours_worked_before_lsr: 25
is_federal_work_study_participant: false
output:
meets_snap_work_exception: true

- name: Meets exception - participates in federal work study
period: 2024
input:
weekly_hours_worked_before_lsr: 0
is_federal_work_study_participant: true
output:
meets_snap_work_exception: true

- name: Meets exception - works less than 20 hours but has work study
period: 2024
input:
weekly_hours_worked_before_lsr: 10
is_federal_work_study_participant: true
output:
meets_snap_work_exception: true

- name: Meets exception - works 20+ hours and has work study
period: 2024
input:
weekly_hours_worked_before_lsr: 25
is_federal_work_study_participant: true
output:
meets_snap_work_exception: true
Loading