Skip to content

Commit f5e0834

Browse files
committed
add Folder tests
1 parent ae4c7f0 commit f5e0834

File tree

3 files changed

+50
-18
lines changed

3 files changed

+50
-18
lines changed

Gemfile

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,11 @@ gem 'd3-rails', '~> 5.9.2' # used for spider charts
7272
gem 'slack-notifier'
7373
gem 'barnes'
7474

75+
# Profiling / error tracking
76+
gem "stackprof"
77+
gem "sentry-ruby"
78+
gem "sentry-rails"
79+
7580
# Apps
7681
#gem 'easy_translate'
7782
#gem 'levenshtein-ffi'
@@ -137,13 +142,6 @@ group :development do
137142
gem 'bundler-audit'
138143
end
139144

140-
group :development, :production do
141-
# Profiling / error tracking
142-
gem "stackprof"
143-
gem "sentry-ruby"
144-
gem "sentry-rails"
145-
end
146-
147145
group :worker do
148146
# These gems are only used in workers (and just so happen to slow down app startup
149147
# by quite a bit), so we exclude them from all groups other than RAILS_GROUPS=worker.

config/initializers/application_controller_renderer.rb

Lines changed: 0 additions & 8 deletions
This file was deleted.

test/models/folder_test.rb

Lines changed: 45 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,49 @@
11
require 'test_helper'
22

33
class FolderTest < ActiveSupport::TestCase
4-
# test "the truth" do
5-
# assert true
6-
# end
4+
def setup
5+
@user = user(:starter)
6+
@parent_folder = Folder.create!(title: 'Parent Folder', user: @user)
7+
@folder = Folder.create!(title: 'Test Folder', user: @user, parent_folder: @parent_folder)
8+
end
9+
10+
test "should be valid" do
11+
assert @folder.valid?
12+
end
13+
14+
test "should require a user" do
15+
@folder.user = nil
16+
assert_not @folder.valid?
17+
end
18+
19+
test "should have many documents" do
20+
assert_respond_to @folder, :documents
21+
assert_kind_of ActiveRecord::Associations::CollectionProxy, @folder.documents
22+
end
23+
24+
test "should belong to parent folder" do
25+
assert_respond_to @folder, :parent_folder
26+
assert_equal @parent_folder, @folder.parent_folder
27+
end
28+
29+
test "should belong to user" do
30+
assert_respond_to @folder, :user
31+
assert_equal @user, @folder.user
32+
end
33+
34+
test "child_folders should return folders with same user and parent" do
35+
child_folder = Folder.create!(title: 'Child Folder', user: @user, parent_folder: @folder)
36+
assert_includes @folder.child_folders, child_folder
37+
end
38+
39+
test "class methods should return correct values" do
40+
assert_equal 'lighten-1 teal', Folder.color
41+
assert_equal 'text-lighten-1 teal-text', Folder.text_color
42+
assert_equal 'folder', Folder.icon
43+
end
44+
45+
test "to_param should include id and slugged title" do
46+
expected_param = "#{@folder.id}-#{PageTagService.slug_for(@folder.title)}"
47+
assert_equal expected_param, @folder.to_param
48+
end
749
end

0 commit comments

Comments
 (0)