Skip to content

Commit 10300f1

Browse files
committed
test for caching
1 parent f28593b commit 10300f1

File tree

2 files changed

+87
-0
lines changed

2 files changed

+87
-0
lines changed

dashboard/app/models/script.rb

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -346,4 +346,14 @@ def self.update_i18n(custom_i18n)
346346
File.write(scripts_yml, "# Autogenerated scripts locale file.\n" + i18n.to_yaml)
347347
end
348348

349+
private
350+
def Script.clear_cache
351+
# only call this in a test!
352+
@@twenty_hour_script = nil
353+
@@frozen_script = nil
354+
@@hoc_script = nil
355+
@@flappy_script = nil
356+
@@playlab_script = nil
357+
@@script_cache = nil
358+
end
349359
end
Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
require 'test_helper'
2+
3+
class CachingTest < ActionDispatch::IntegrationTest
4+
5+
setup do
6+
Script.send(:clear_cache)
7+
end
8+
9+
test "should get show of frozen level 1" do
10+
get '/s/frozen/stage/1/puzzle/1'
11+
assert_response :success
12+
13+
Rails.logger.info '--------------'
14+
Rails.logger.info 'SECOND REQUEST'
15+
Rails.logger.info '--------------'
16+
17+
ActiveRecord::Base.connection.disconnect!
18+
get '/s/frozen/stage/1/puzzle/1'
19+
assert_response :success
20+
end
21+
22+
test "should get show of frozen level 10 twice" do
23+
get '/s/frozen/stage/1/puzzle/10'
24+
assert_response :success
25+
26+
Rails.logger.info '--------------'
27+
Rails.logger.info 'SECOND REQUEST'
28+
Rails.logger.info '--------------'
29+
30+
ActiveRecord::Base.connection.disconnect!
31+
get '/s/frozen/stage/1/puzzle/10'
32+
assert_response :success
33+
end
34+
35+
test "should get show of frozen level 20 twice" do
36+
get '/s/frozen/stage/1/puzzle/20'
37+
assert_response :success
38+
39+
Rails.logger.info '--------------'
40+
Rails.logger.info 'SECOND REQUEST'
41+
Rails.logger.info '--------------'
42+
43+
ActiveRecord::Base.connection.disconnect!
44+
get '/s/frozen/stage/1/puzzle/20'
45+
assert_response :success
46+
end
47+
48+
49+
test "should get show of frozen level 1 and then level 10" do
50+
get '/s/frozen/stage/1/puzzle/1'
51+
assert_response :success
52+
53+
Rails.logger.info '--------------'
54+
Rails.logger.info 'SECOND REQUEST'
55+
Rails.logger.info '--------------'
56+
57+
ActiveRecord::Base.connection.disconnect!
58+
get '/s/frozen/stage/1/puzzle/10'
59+
assert_response :success
60+
end
61+
62+
63+
# course1 is not caching yet
64+
# test "should get show of course1 level 1 and then level 10" do
65+
# get '/s/course1/stage/1/puzzle/1'
66+
# assert_response :success
67+
68+
# Rails.logger.info '--------------'
69+
# Rails.logger.info 'SECOND REQUEST'
70+
# Rails.logger.info '--------------'
71+
72+
# ActiveRecord::Base.connection.disconnect!
73+
# get '/s/course1/stage/1/puzzle/10'
74+
# assert_response :success
75+
# end
76+
77+
end

0 commit comments

Comments
 (0)