Skip to content

Commit 6cd2df8

Browse files
committed
Rename cache_version to cached_version
cache_version is now a reserved word
1 parent 08b0a8c commit 6cd2df8

File tree

10 files changed

+78
-72
lines changed

10 files changed

+78
-72
lines changed

app/models/course.rb

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -69,30 +69,30 @@ class Course < ActiveRecord::Base
6969
end
7070

7171
def course_as_json
72-
as_json(only: %i[
73-
name
74-
hide_after
75-
hidden
76-
cache_version
77-
spreadsheet_key
78-
hidden_if_registered_after
79-
refreshed_at
80-
locked_exercise_points_visible
81-
description
82-
paste_visibility
83-
formal_name
84-
certificate_downloadable
85-
certificate_unlock_spec
86-
organization_id
87-
disabled_status
88-
title
89-
descrpition
90-
material_url
91-
course_template_id
92-
hide_submission_results
93-
external_scoreboard_url
94-
],
95-
methods: :organization_slug)
72+
{
73+
name: name,
74+
hide_after: hide_after,
75+
hidden: hidden,
76+
cache_version: cached_version,
77+
spreadsheet_key: spreadsheet_key,
78+
hidden_if_registered_after: hidden_if_registered_after,
79+
refreshed_at: refreshed_at,
80+
locked_exercise_points_visible: locked_exercise_points_visible,
81+
description: description,
82+
paste_visibility: paste_visibility,
83+
formal_name: formal_name,
84+
certificate_downloadable: certificate_downloadable,
85+
certificate_unlock_spec: certificate_unlock_spec,
86+
organization_id: organization_id,
87+
disabled_status: disabled_status,
88+
title: title,
89+
descrpition: descripition,
90+
material_url: material_url,
91+
course_template_id: course_template_id,
92+
hide_submission_results: hide_submission_results,
93+
external_scoreboard_url: external_scoreboard_url,
94+
organization_slug: organization_slug,
95+
}
9696
end
9797

9898
swagger_schema :CourseLinks do
@@ -143,8 +143,8 @@ def links_as_json(view_context)
143143
validates :description, length: { maximum: 512 }
144144
validate :check_name_length
145145

146-
# If made from template, make sure cache_version is not out of sync.
147-
before_save :set_cache_version
146+
# If made from template, make sure cached_version is not out of sync.
147+
before_save :set_cached_version
148148
before_validation :save_template
149149
validates :source_url, presence: true
150150
# validates :custom_points_url,
@@ -207,7 +207,7 @@ def self.new_from_template(course_template)
207207
title: course_template.title,
208208
description: course_template.description,
209209
material_url: course_template.material_url,
210-
cache_version: course_template.cache_version,
210+
cached_version: course_template.cached_version,
211211
course_template: course_template)
212212
end
213213

@@ -285,7 +285,7 @@ def self.cache_root
285285
"#{FileStore.root}/course"
286286
end
287287

288-
delegate :increment_cache_version, to: :course_template_obj
288+
delegate :increment_cached_version, to: :course_template_obj
289289

290290
delegate :cache_path, to: :course_template_obj
291291

@@ -532,8 +532,8 @@ def parsed_external_scoreboard_url(organization, course, user)
532532

533533
private
534534

535-
def set_cache_version
536-
self.cache_version = course_template_obj.cache_version
535+
def set_cached_version
536+
self.cached_version = course_template_obj.cached_version
537537
end
538538

539539
def save_template

app/models/course_template.rb

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -72,13 +72,13 @@ def clonable?
7272
end
7373

7474
def cache_path
75-
File.join(Course.cache_root, "#{name}-#{cache_version}")
75+
File.join(Course.cache_root, "#{name}-#{cached_version}")
7676
end
7777

78-
def increment_cache_version
79-
self.cache_version += 1
78+
def increment_cached_version
79+
self.cached_version += 1
8080
courses.each do |course|
81-
course.cache_version = cache_version
81+
course.cached_version = cached_version
8282
end
8383
end
8484

@@ -101,7 +101,7 @@ def cache_exists?
101101

102102
def update_courses_sourcedata
103103
courses.each do |c|
104-
c.cache_version = cache_version
104+
c.cached_version = cached_version
105105
c.source_url = source_url
106106
c.git_branch = git_branch
107107
c.source_backend = source_backend

app/views/course_templates/show.html.erb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727

2828
<p>
2929
<strong>Cache version:</strong>
30-
<%= @course_template.cache_version %>
30+
<%= @course_template.cached_version %>
3131
</p>
3232

3333
<p>
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
class RenameCacheVersion < ActiveRecord::Migration
2+
def change
3+
rename_column :courses, :cache_version, :cached_version
4+
rename_column :course_templates, :cache_version, :cached_version
5+
end
6+
end

db/schema.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
#
1212
# It's strongly recommended that you check this file into your version control system.
1313

14-
ActiveRecord::Schema.define(version: 20181003103718) do
14+
ActiveRecord::Schema.define(version: 20181003140911) do
1515

1616
# These are extensions that must be enabled in order to support this database
1717
enable_extension "plpgsql"
@@ -81,7 +81,7 @@
8181
t.string "source_url"
8282
t.boolean "dummy", default: false, null: false
8383
t.boolean "hidden", default: false
84-
t.integer "cache_version", default: 0, null: false
84+
t.integer "cached_version", default: 0, null: false
8585
t.string "source_backend", default: "git", null: false
8686
t.string "git_branch", default: "master", null: false
8787
t.datetime "expires_at"
@@ -95,7 +95,7 @@
9595
t.datetime "updated_at"
9696
t.datetime "hide_after"
9797
t.boolean "hidden", default: false, null: false
98-
t.integer "cache_version", default: 0, null: false
98+
t.integer "cached_version", default: 0, null: false
9999
t.string "spreadsheet_key"
100100
t.datetime "hidden_if_registered_after"
101101
t.datetime "refreshed_at"

lib/course_refresher.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ def refresh_course(course, options)
103103

104104
@old_cache_path = @course.cache_path
105105

106-
@course.increment_cache_version unless options[:no_directory_changes] # causes @course.*_path to return paths in the new cache
106+
@course.increment_cached_version unless options[:no_directory_changes] # causes @course.*_path to return paths in the new cache
107107

108108
FileUtils.rm_rf(@course.cache_path) unless options[:no_directory_changes]
109109
FileUtils.mkdir_p(@course.cache_path) unless options[:no_directory_changes]

spec/controllers/setup/course_details_controller_spec.rb

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -58,14 +58,14 @@
5858

5959
it "does directory changes when course is first created from template, but doesn't do changes when creating more courses from same template" do
6060
expect(CourseTemplate.last.dummy).to be true
61-
expect(CourseTemplate.last.cache_version).to eq(0)
61+
expect(CourseTemplate.last.cached_version).to eq(0)
6262
post :create, organization_id: @organization.slug, course: { name: 'NewCourse', title: 'New Course', course_template_id: @ct.id }
63-
expect(Course.all.order(:id).pluck(:cache_version)).to eq([0, 1])
63+
expect(Course.all.order(:id).pluck(:cached_version)).to eq([0, 1])
6464

65-
expect(CourseTemplate.find(@ct.id).cache_version).to eq(1)
65+
expect(CourseTemplate.find(@ct.id).cached_version).to eq(1)
6666
post :create, organization_id: @organization.slug, course: { name: 'NewCourse2', title: 'New Course 2', course_template_id: @ct.id }
67-
expect(Course.all.order(:id).pluck(:cache_version)).to eq([0, 1, 1])
68-
expect(CourseTemplate.find(@ct.id).cache_version).to eq(1)
67+
expect(Course.all.order(:id).pluck(:cached_version)).to eq([0, 1, 1])
68+
expect(CourseTemplate.find(@ct.id).cached_version).to eq(1)
6969
expect(Dir["#{@test_tmp_dir}/cache/git_repos/*"].count).to be(1)
7070
end
7171
end
@@ -205,9 +205,9 @@
205205

206206
it 'does directory changes via refresh' do
207207
post :create, organization_id: @organization.slug, course: { name: 'NewCourse', title: 'New Course', source_url: @ct.source_url }
208-
expect(Course.last.cache_version).to eq(1)
208+
expect(Course.last.cached_version).to eq(1)
209209
post :create, organization_id: @organization.slug, course: { name: 'NewCourse2', title: 'New Course 2', source_url: @ct.source_url }
210-
expect(Course.all.pluck(:cache_version)).to eq([0, 1, 1])
210+
expect(Course.all.pluck(:cached_version)).to eq([0, 1, 1])
211211
expect(Dir["#{@test_tmp_dir}/cache/git_repos/*"].count).to be(2)
212212
end
213213
end

spec/lib/course_refresher_spec.rb

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -678,19 +678,19 @@ def sabotage
678678
end
679679

680680
it 'should roll back any database changes' do
681-
old_cache_version = @course.cache_version
681+
old_cached_version = @course.cached_version
682682
old_exercises = Exercise.order(:id).to_a
683683
old_points = AvailablePoint.order(:id).to_a
684684

685685
sabotage
686686
expect { refresh_courses }.to raise_error
687687

688688
@template.reload
689-
expect(@template.cache_version).to eq(old_cache_version)
689+
expect(@template.cached_version).to eq(old_cached_version)
690690
@course.reload
691-
expect(@course.cache_version).to eq(old_cache_version)
691+
expect(@course.cached_version).to eq(old_cached_version)
692692
@course2.reload
693-
expect(@course2.cache_version).to eq(old_cache_version)
693+
expect(@course2.cached_version).to eq(old_cached_version)
694694
expect(Exercise.order(:id).to_a).to eq(old_exercises)
695695
expect(AvailablePoint.order(:id).to_a).to eq(old_points)
696696
end
@@ -718,14 +718,14 @@ def sabotage
718718
end
719719

720720
describe 'with no_directory_changes flag' do
721-
it "doesn't increment cache_version" do
721+
it "doesn't increment cached_version" do
722722
refresh_courses
723-
expect(@template.cache_version).not_to eq(2)
724-
expect(@course.cache_version).not_to eq(2)
725-
expect(@course2.cache_version).not_to eq(2)
726-
expect(@template.cache_version).to eq(1)
727-
expect(@course.cache_version).to eq(1)
728-
expect(@course2.cache_version).to eq(1)
723+
expect(@template.cached_version).not_to eq(2)
724+
expect(@course.cached_version).not_to eq(2)
725+
expect(@course2.cached_version).not_to eq(2)
726+
expect(@template.cached_version).to eq(1)
727+
expect(@course.cached_version).to eq(1)
728+
expect(@course2.cached_version).to eq(1)
729729
end
730730

731731
it "doesn't create duplicate repository folder" do

spec/models/course_spec.rb

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -347,18 +347,18 @@ def assert_destroyed(obj)
347347
end
348348
end
349349

350-
it 'increments own cache_version if custom course' do
350+
it 'increments own cached_version if custom course' do
351351
course = FactoryGirl.create :course
352352
expect do
353-
course.increment_cache_version
353+
course.increment_cached_version
354354
course.save!
355-
end.to change { course.cache_version }.by(1)
355+
end.to change { course.cached_version }.by(1)
356356
end
357357

358-
it "increments template's cache_version if templated" do
358+
it "increments template's cached_version if templated" do
359359
template = FactoryGirl.create :course_template
360360
course = FactoryGirl.create :course, course_template: template, source_url: template.source_url
361-
expect { course.increment_cache_version }.to change { template.cache_version }.by(1)
361+
expect { course.increment_cached_version }.to change { template.cached_version }.by(1)
362362
end
363363

364364
it "templated course's cache path is template's cache path, regardless of names" do

spec/models/course_template_spec.rb

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -77,24 +77,24 @@ def should_be_invalid_params(params)
7777
template.courses << FactoryGirl.create(:course, course_template: template, source_url: template.source_url)
7878
template.courses << FactoryGirl.create(:course, course_template: template, source_url: template.source_url)
7979
template.courses << FactoryGirl.create(:course, course_template: template, source_url: template.source_url)
80-
expect(template.cache_version).to eq(0)
81-
expect(Course.all.pluck(:cache_version)).to eq([0, 0, 0])
80+
expect(template.cached_version).to eq(0)
81+
expect(Course.all.pluck(:cached_version)).to eq([0, 0, 0])
8282

8383
template.refresh
84-
expect(template.cache_version).to eq(1)
85-
expect(Course.all.pluck(:cache_version)).to eq([1, 1, 1])
84+
expect(template.cached_version).to eq(1)
85+
expect(Course.all.pluck(:cached_version)).to eq([1, 1, 1])
8686
end
8787

88-
it "keeps course's cache_versions synchronized" do
88+
it "keeps course's cached_versions synchronized" do
8989
template = FactoryGirl.create :course_template
9090
template.courses << FactoryGirl.create(:course, course_template: template, source_url: template.source_url)
9191
template.courses << FactoryGirl.create(:course, course_template: template, source_url: template.source_url)
92-
expect(template.cache_version).to eq(0)
93-
expect(Course.all.pluck(:cache_version)).to eq([0, 0])
92+
expect(template.cached_version).to eq(0)
93+
expect(Course.all.pluck(:cached_version)).to eq([0, 0])
9494
template.refresh
9595
template.courses << FactoryGirl.create(:course, course_template: template, source_url: template.source_url)
96-
expect(template.cache_version).to eq(1)
97-
expect(Course.all.pluck(:cache_version)).to eq([1, 1, 1])
96+
expect(template.cached_version).to eq(1)
97+
expect(Course.all.pluck(:cached_version)).to eq([1, 1, 1])
9898
end
9999

100100
it "keeps course's source url and git branch synchronized" do

0 commit comments

Comments
 (0)