Skip to content

Commit

Permalink
[#4604] Add buttons for load and clear the caches
Browse files Browse the repository at this point in the history
  • Loading branch information
edavis10 committed Oct 13, 2010
1 parent 7824ead commit e4f1a62
Show file tree
Hide file tree
Showing 5 changed files with 52 additions and 2 deletions.
13 changes: 13 additions & 0 deletions app/controllers/rate_caches_controller.rb
Expand Up @@ -19,4 +19,17 @@ def index
end

end

def update
if params[:cache].present?
if params[:cache].match(/missing/)
Rate.update_all_time_entries_with_missing_cost
flash[:notice] = l(:text_caches_loaded_successfully)
elsif params[:cache].match(/reload/)
Rate.update_all_time_entries_to_refresh_cache
flash[:notice] = l(:text_caches_loaded_successfully)
end
end
redirect_to :action => 'index'
end
end
5 changes: 5 additions & 0 deletions app/views/rate_caches/index.html.erb
Expand Up @@ -11,3 +11,8 @@
<%= l(:text_last_cache_clearing_run) %><%= h(@last_cache_clearing_run) %>
</p>
</div>

<p>
<%= button_to(l(:text_load_missing_caches), {:controller => 'rate_caches', :action => 'update', :cache => 'missing'}, :method => :put) %>
<%= button_to(l(:text_clear_and_load_all_caches), {:controller => 'rate_caches', :action => 'update', :cache => 'reload'}, :method => :put) %>
</p>
4 changes: 4 additions & 0 deletions config/locales/en.yml
Expand Up @@ -12,3 +12,7 @@ en:
text_no_cache_run: "no cache run found"
text_last_caching_run: "Last caching run at: "
text_last_cache_clearing_run: "Last cache clearing run at: "
text_load_missing_caches: "Load Missing Caches"
text_clear_and_load_all_caches: "Clear and Load All Caches"
text_caches_loaded_successfully: "Caches loaded successfully"

1 change: 1 addition & 0 deletions config/routes.rb
@@ -1,3 +1,4 @@
ActionController::Routing::Routes.draw do |map|
map.resources :rates
map.connect 'rate_caches', :conditions => {:method => :put}, :controller => 'rate_caches', :action => 'update'
end
31 changes: 29 additions & 2 deletions test/integration/admin_panel_test.rb
Expand Up @@ -48,7 +48,34 @@ def setup

end

should "have a button to force a caching run"
should "have a button to force a cache clearing run"
should "have a button to force a caching run" do
click_link "Administration"
click_link "Rate Caches"
click_button "Load Missing Caches"

assert_response :success

appx_clear_time = Date.today.strftime("%m/%d/%Y")

assert_select '#caching-run' do
assert_select 'p', :text => /#{appx_clear_time}/
end

end

should "have a button to force a cache clearing run" do
click_link "Administration"
click_link "Rate Caches"
click_button "Clear and Load All Caches"

assert_response :success

appx_clear_time = Date.today.strftime("%m/%d/%Y")

assert_select '#cache-clearing-run' do
assert_select 'p', :text => /#{appx_clear_time}/
end

end
end
end

0 comments on commit e4f1a62

Please sign in to comment.