Checking for Cookie Deletion by a Rails Controller with RSpec
Today I needed to prove that my Rails controller method deleted a cookie. After Googling for the answer (without success), I came up with the following.
Within your controller:
cookies.delete('cookie-to-delete')
In your controller spec you can check that the cookie was deleted with:
expect(response.cookies).to include('cookie-to-delete' => nil)
Rails sets the cookies to be deleted to a value of nil. By checking for the presence of both the cookie name with a value of nil, you can ensure your controller code deleted the cookie.