adding periodic events + tests