From 937fcce2dcca8010dbe8e9e26df954cb1330c1e0 Mon Sep 17 00:00:00 2001 From: Sven Dahlstrand Date: Mon, 27 Apr 2015 00:43:59 +0200 Subject: Pass `status` option to `send_file` and make sure a 404 is returned. --- lib/dashing/app.rb | 2 +- test/app_test.rb | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/dashing/app.rb b/lib/dashing/app.rb index 921bf9c..0e7f7bb 100644 --- a/lib/dashing/app.rb +++ b/lib/dashing/app.rb @@ -50,7 +50,7 @@ end end not_found do - send_file File.join(settings.public_folder, '404.html') + send_file File.join(settings.public_folder, '404.html'), status: 404 end at_exit do diff --git a/test/app_test.rb b/test/app_test.rb index 4101e91..4acb27a 100644 --- a/test/app_test.rb +++ b/test/app_test.rb @@ -129,6 +129,13 @@ class AppTest < Dashing::Test end end + def test_get_nonexistent_dashboard_sends_file_with_404_status + with_generated_project do + app.any_instance.expects(:send_file).with(anything, has_entry(:status, 404)) + get '/nodashboard' + end + end + def test_get_widget with_generated_project do get '/views/meter.html' -- cgit v1.2.3