This should work. I'm sorry, I conformed it to my own style (lowercase and different indentation).
with weeks as (
select week
from generate_series(
'2017-01-01'::date,
now()::date,
'1 week'::interval
) week
)
select weeks.week, count(1)
from weeks, test_results
where
test_results.date_created > weeks.week and
test_results.date_created <= (weeks.week - '1 week'::interval)
group by week
;