houston-core 0.7.0 → 0.8.0.pre
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +45 -45
- data/app/assets/javascripts/houston/app/models/ticket.coffee +7 -5
- data/app/assets/javascripts/houston/app/views/new_ticket_view.coffee +1 -21
- data/app/assets/javascripts/houston/core/handlebars_helpers.coffee +0 -6
- data/app/assets/stylesheets/houston/application/commit.scss +16 -0
- data/app/assets/stylesheets/houston/application/navigation.scss +1 -0
- data/app/assets/stylesheets/houston/application/new_ticket_view.scss +0 -4
- data/app/assets/stylesheets/houston/application/projects.css.scss +0 -14
- data/app/assets/stylesheets/houston/application/release_form.scss +1 -1
- data/app/assets/stylesheets/houston/application/teams.scss +68 -0
- data/app/assets/templates/tickets/index.hbs +0 -1
- data/app/controllers/github/pulls_controller.rb +1 -0
- data/app/controllers/project_tickets_controller.rb +1 -5
- data/app/controllers/projects_controller.rb +10 -12
- data/app/controllers/teams_controller.rb +60 -0
- data/app/controllers/users_controller.rb +12 -12
- data/app/helpers/commit_helper.rb +3 -5
- data/app/helpers/exposure_helper.rb +1 -1
- data/app/helpers/ticket_helper.rb +0 -13
- data/app/interactors/ticket_report.rb +0 -7
- data/app/mailers/project_notification.rb +2 -23
- data/app/mailers/view_mailer.rb +0 -1
- data/app/models/ability.rb +28 -19
- data/app/models/commit.rb +0 -4
- data/app/models/project.rb +14 -29
- data/app/models/release.rb +0 -18
- data/app/models/role.rb +0 -22
- data/app/models/team.rb +43 -0
- data/app/models/team_user.rb +68 -0
- data/app/models/ticket.rb +2 -22
- data/app/models/user.rb +21 -30
- data/app/views/devise/sessions/new.html.erb +9 -7
- data/app/views/layouts/_mobile_navigation.html.erb +5 -3
- data/app/views/layouts/_navigation.html.erb +11 -10
- data/app/views/layouts/_tester_bar.html.erb +1 -1
- data/app/views/layouts/application.html.erb +1 -2
- data/app/views/project_tickets/_tickets.html.erb +0 -1
- data/app/views/project_tickets/index.xls.erb +0 -35
- data/app/views/project_tickets/new.html.erb +1 -2
- data/app/views/projects/_form.html.erb +7 -12
- data/app/views/projects/index.html.erb +10 -17
- data/app/views/releases/_changelog.html.erb +11 -14
- data/app/views/teams/_form.html.erb +45 -0
- data/app/views/teams/edit.html.erb +8 -0
- data/app/views/teams/index.html.erb +62 -0
- data/app/views/teams/new.html.erb +7 -0
- data/app/views/users/_form.html.erb +2 -11
- data/app/views/users/index.html.erb +8 -20
- data/app/views/users/new.html.erb +1 -1
- data/config/initializers/inflections.rb +7 -6
- data/config/routes.rb +19 -17
- data/db/migrate/20160812233255_repurpose_users_role.rb +16 -0
- data/db/migrate/20160813001242_create_teams.rb +42 -0
- data/db/structure.sql +110 -116
- data/lib/houston/boot.rb +0 -1
- data/lib/houston/boot/configuration.rb +26 -11
- data/lib/houston/boot/events.rb +0 -4
- data/lib/houston/version.rb +1 -1
- data/templates/new-instance/config/abilities.rb +68 -51
- data/templates/new-instance/config/conversations/mentions/unfurl_tasks.rb +1 -1
- data/templates/new-instance/config/events/deploy/notify_deployer_when_finished.rb +24 -16
- data/templates/new-instance/config/events/tests/email_when_completed.rb +11 -0
- data/templates/new-instance/config/integrations/ldap.rb +4 -0
- data/templates/new-instance/config/main.rb +10 -17
- data/templates/new-module/test/fixtures/users.yml +1 -2
- data/test/acceptance/creating_a_release_test.rb +1 -1
- data/test/factories/project_factory.rb +1 -0
- data/test/factories/user_factory.rb +3 -1
- data/test/fixtures/teams.yml +2 -0
- data/test/fixtures/teams_users.yml +5 -0
- data/test/fixtures/users.yml +1 -2
- data/test/integration/ci_integration_test.rb +2 -2
- data/test/support/config.rb +3 -5
- data/test/unit/controllers/deploys_controller_test.rb +11 -5
- data/test/unit/controllers/users_controller_test.rb +46 -0
- data/test/unit/models/release_test.rb +0 -9
- data/test/unit/models/serializer_test.rb +0 -8
- data/test/unit/models/ticket_test.rb +0 -32
- metadata +21 -24
- data/app/assets/javascripts/houston/app/table_row_expander.coffee +0 -52
- data/app/assets/javascripts/houston/app/views/problems_view.coffee +0 -114
- data/app/assets/stylesheets/houston/application/follow_up.scss +0 -44
- data/app/controllers/project_exceptions_controller.rb +0 -36
- data/app/controllers/project_pretickets_controller.rb +0 -27
- data/app/mailers/deploy_notification.rb +0 -33
- data/app/models/antecedent.rb +0 -15
- data/app/models/ticket_antecedent.rb +0 -39
- data/app/models/value_statement.rb +0 -9
- data/app/presenters/problem_presenter.rb +0 -49
- data/app/presenters/tester_presenter.rb +0 -15
- data/app/views/project_notification/follow_up.html.erb +0 -26
- data/app/views/project_pretickets/show.html.erb +0 -49
- data/app/views/releases/_antecedents.html.erb +0 -12
- data/config/initializers/hard_coded_knowledge.rb +0 -141
- data/db/migrate/20130427223925_create_project_quotas.rb +0 -14
- data/db/migrate/20140506035755_create_value_statements.rb +0 -9
- data/lib/houston/boot/ticket_antecedent_serializer.rb +0 -21
- data/test/unit/models/ticket_antecedents_test.rb +0 -38
@@ -1,4 +1,5 @@
|
|
1
1
|
require "test_helper"
|
2
|
+
require "support/houston/adapters/ci_server/mock_adapter"
|
2
3
|
|
3
4
|
|
4
5
|
class DeploysControllerTest < ActionController::TestCase
|
@@ -6,34 +7,39 @@ class DeploysControllerTest < ActionController::TestCase
|
|
6
7
|
setup do
|
7
8
|
@project = create(:project, ci_server_name: "Mock")
|
8
9
|
@environment = "production"
|
10
|
+
Timecop.freeze
|
11
|
+
end
|
12
|
+
|
13
|
+
teardown do
|
14
|
+
Timecop.return
|
9
15
|
end
|
10
16
|
|
11
17
|
|
12
18
|
should "not require a logged in user" do
|
13
|
-
mock(Deploy).create!(project: @project, environment_name: @environment, sha: "hi", branch: nil, deployer: nil)
|
19
|
+
mock(Deploy).create!(project: @project, environment_name: @environment, sha: "hi", branch: nil, deployer: nil, duration: nil, successful: true, completed_at: Time.now)
|
14
20
|
post :create, project_id: @project.slug, environment: @environment, commit: "hi"
|
15
21
|
end
|
16
22
|
|
17
23
|
|
18
24
|
should "work with a Heroku-style deploy hook" do
|
19
|
-
mock(Deploy).create!(project: @project, environment_name: @environment, sha: "hi", branch: nil, deployer: "deployer@heroku.com")
|
25
|
+
mock(Deploy).create!(project: @project, environment_name: @environment, sha: "hi", branch: nil, deployer: "deployer@heroku.com", duration: nil, successful: true, completed_at: Time.now)
|
20
26
|
post :create, project_id: @project.slug, environment: @environment, head_long: "hi", user: "deployer@heroku.com"
|
21
27
|
end
|
22
28
|
|
23
29
|
|
24
30
|
should "work with title-cased environments" do
|
25
|
-
mock(Deploy).create!(project: @project, environment_name: @environment, sha: "hi", branch: nil, deployer: nil)
|
31
|
+
mock(Deploy).create!(project: @project, environment_name: @environment, sha: "hi", branch: nil, deployer: nil, duration: nil, successful: true, completed_at: Time.now)
|
26
32
|
post :create, project_id: @project.slug, environment: "Production", commit: "hi"
|
27
33
|
end
|
28
34
|
|
29
35
|
should "work with lowercased environments" do
|
30
|
-
mock(Deploy).create!(project: @project, environment_name: @environment, sha: "hi", branch: nil, deployer: nil)
|
36
|
+
mock(Deploy).create!(project: @project, environment_name: @environment, sha: "hi", branch: nil, deployer: nil, duration: nil, successful: true, completed_at: Time.now)
|
31
37
|
post :create, project_id: @project.slug, environment: "production", commit: "hi"
|
32
38
|
end
|
33
39
|
|
34
40
|
|
35
41
|
should "record the deployer if it is supplied" do
|
36
|
-
mock(Deploy).create!(project: @project, environment_name: @environment, sha: "hi", branch: nil, deployer: "Bob Lail <bob.lail@cph.org>")
|
42
|
+
mock(Deploy).create!(project: @project, environment_name: @environment, sha: "hi", branch: nil, deployer: "Bob Lail <bob.lail@cph.org>", duration: nil, successful: true, completed_at: Time.now)
|
37
43
|
post :create, project_id: @project.slug, environment: @environment, commit: "hi", deployer: "Bob Lail <bob.lail@cph.org>"
|
38
44
|
end
|
39
45
|
|
@@ -0,0 +1,46 @@
|
|
1
|
+
require "test_helper"
|
2
|
+
|
3
|
+
class UsersControllerTest < ActionController::TestCase
|
4
|
+
include Devise::TestHelpers
|
5
|
+
|
6
|
+
|
7
|
+
context "Owners" do
|
8
|
+
setup do
|
9
|
+
sign_in owner
|
10
|
+
end
|
11
|
+
|
12
|
+
should "be able to change other users' roles" do
|
13
|
+
put :update, id: a_user.id, user: {role: "Owner"}
|
14
|
+
assert_equal "Owner", a_user.reload.role
|
15
|
+
end
|
16
|
+
|
17
|
+
should "not be able to change their own role" do
|
18
|
+
put :update, id: owner.id, user: {role: "Member"}
|
19
|
+
assert_equal "Owner", owner.reload.role
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
|
24
|
+
context "Non-Owners" do
|
25
|
+
setup do
|
26
|
+
sign_in a_user
|
27
|
+
end
|
28
|
+
|
29
|
+
should "not be able to change their own role" do
|
30
|
+
put :update, id: a_user.id, user: {role: "Owner"}
|
31
|
+
refute_equal "Owner", a_user.reload.role
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
|
36
|
+
private
|
37
|
+
|
38
|
+
def owner
|
39
|
+
@owner ||= User.first
|
40
|
+
end
|
41
|
+
|
42
|
+
def a_user
|
43
|
+
@a_user ||= create(:user)
|
44
|
+
end
|
45
|
+
|
46
|
+
end
|
@@ -17,22 +17,13 @@ class ReleaseTest < ActiveSupport::TestCase
|
|
17
17
|
should "trigger `released!` on each ticket" do
|
18
18
|
a_ticket = Object.new
|
19
19
|
stub(release).tickets { [a_ticket] }
|
20
|
-
stub(release).antecedents { [] }
|
21
20
|
mock(a_ticket).released!(release)
|
22
21
|
release.save!
|
23
22
|
end
|
24
23
|
|
25
|
-
should "trigger `released!` on each antecedent" do
|
26
|
-
an_antecedent = TicketAntecedent.new(nil, "Test", 4)
|
27
|
-
stub(release).antecedents { [an_antecedent] }
|
28
|
-
mock(an_antecedent).released!(release)
|
29
|
-
release.save!
|
30
|
-
end
|
31
|
-
|
32
24
|
should "trigger `released!` on each task" do
|
33
25
|
a_task = Object.new
|
34
26
|
stub(release).tasks { [a_task] }
|
35
|
-
stub(release).antecedents { [] }
|
36
27
|
mock(a_task).released!(release)
|
37
28
|
release.save!
|
38
29
|
end
|
@@ -38,14 +38,6 @@ class SerializerTest < ActiveSupport::TestCase
|
|
38
38
|
like: /"class":"Project","attributes":{.*},"\^S":"Houston::ActiveRecordSerializer"/)
|
39
39
|
end
|
40
40
|
|
41
|
-
should "serialize objects that refer to ActiveRecord objects" do
|
42
|
-
project = Project.create!(name: "Test", slug: "test")
|
43
|
-
commit = Commit.new(project: project, message: "Commit Message")
|
44
|
-
antecedent = TicketAntecedent.new(commit, "Err", 45)
|
45
|
-
assert_serializes(antecedent,
|
46
|
-
like: /"ticket_or_commit":{"class":"Commit".*},"kind":"Err","id":45,"\^S":"Houston::TicketAntecedentSerializer"/)
|
47
|
-
end
|
48
|
-
|
49
41
|
should "work even when you set a value" do
|
50
42
|
project = Project.create!(name: "Test", slug: "test")
|
51
43
|
project.updated_at = 1.week.after(project.updated_at) # ActiveSupport::TimeWithZone
|
@@ -66,38 +66,6 @@ class TicketTest < ActiveSupport::TestCase
|
|
66
66
|
|
67
67
|
|
68
68
|
|
69
|
-
context "#resolve!" do
|
70
|
-
setup do
|
71
|
-
@ticket = create(:ticket, project: project)
|
72
|
-
end
|
73
|
-
|
74
|
-
should "resolve antecedents" do
|
75
|
-
antecedent = TicketAntecedent.new(ticket, "Test", 4)
|
76
|
-
mock(antecedent).resolve!
|
77
|
-
stub(ticket).antecedents { [antecedent] }
|
78
|
-
|
79
|
-
ticket.resolve!
|
80
|
-
end
|
81
|
-
end
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
context "#close!" do
|
86
|
-
setup do
|
87
|
-
@ticket = create(:ticket, project: project)
|
88
|
-
end
|
89
|
-
|
90
|
-
should "close antecedents" do
|
91
|
-
antecedent = TicketAntecedent.new(ticket, "Test", 4)
|
92
|
-
mock(antecedent).close!
|
93
|
-
stub(ticket).antecedents { [antecedent] }
|
94
|
-
|
95
|
-
ticket.close!
|
96
|
-
end
|
97
|
-
end
|
98
|
-
|
99
|
-
|
100
|
-
|
101
69
|
context "#reopen!" do
|
102
70
|
setup do
|
103
71
|
@ticket = Ticket.create!(
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: houston-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.0.pre
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bob Lail
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-08-
|
11
|
+
date: 2016-08-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -774,7 +774,6 @@ files:
|
|
774
774
|
- app/assets/javascripts/houston/app/models/user.coffee
|
775
775
|
- app/assets/javascripts/houston/app/mousetrap-bind-scoped.js
|
776
776
|
- app/assets/javascripts/houston/app/releases.coffee
|
777
|
-
- app/assets/javascripts/houston/app/table_row_expander.coffee
|
778
777
|
- app/assets/javascripts/houston/app/ticket_tracker_refresh.coffee
|
779
778
|
- app/assets/javascripts/houston/app/views/_show_sprint_view.coffee
|
780
779
|
- app/assets/javascripts/houston/app/views/_tickets_view.coffee
|
@@ -785,7 +784,6 @@ files:
|
|
785
784
|
- app/assets/javascripts/houston/app/views/keyboard_shortcuts_modal.coffee
|
786
785
|
- app/assets/javascripts/houston/app/views/new_ticket_modal.coffee
|
787
786
|
- app/assets/javascripts/houston/app/views/new_ticket_view.coffee
|
788
|
-
- app/assets/javascripts/houston/app/views/problems_view.coffee
|
789
787
|
- app/assets/javascripts/houston/app/views/ticket_modal_view.coffee
|
790
788
|
- app/assets/javascripts/houston/application.js
|
791
789
|
- app/assets/javascripts/houston/core/app.coffee
|
@@ -809,7 +807,6 @@ files:
|
|
809
807
|
- app/assets/stylesheets/houston/application/emoji.scss
|
810
808
|
- app/assets/stylesheets/houston/application/exceptions.scss
|
811
809
|
- app/assets/stylesheets/houston/application/find_or_create_ticket.scss
|
812
|
-
- app/assets/stylesheets/houston/application/follow_up.scss
|
813
810
|
- app/assets/stylesheets/houston/application/forms.scss
|
814
811
|
- app/assets/stylesheets/houston/application/freight_train.css.scss
|
815
812
|
- app/assets/stylesheets/houston/application/full_screen.scss
|
@@ -833,6 +830,7 @@ files:
|
|
833
830
|
- app/assets/stylesheets/houston/application/sortable_table.scss
|
834
831
|
- app/assets/stylesheets/houston/application/sprint.scss
|
835
832
|
- app/assets/stylesheets/houston/application/tables.scss
|
833
|
+
- app/assets/stylesheets/houston/application/teams.scss
|
836
834
|
- app/assets/stylesheets/houston/application/test.scss
|
837
835
|
- app/assets/stylesheets/houston/application/test_run.scss
|
838
836
|
- app/assets/stylesheets/houston/application/ticket.scss
|
@@ -907,10 +905,8 @@ files:
|
|
907
905
|
- app/controllers/hooks_controller.rb
|
908
906
|
- app/controllers/oauth/providers_controller.rb
|
909
907
|
- app/controllers/omnibar_controller.rb
|
910
|
-
- app/controllers/project_exceptions_controller.rb
|
911
908
|
- app/controllers/project_hooks_controller.rb
|
912
909
|
- app/controllers/project_options_controller.rb
|
913
|
-
- app/controllers/project_pretickets_controller.rb
|
914
910
|
- app/controllers/project_roles_controller.rb
|
915
911
|
- app/controllers/project_tests_controller.rb
|
916
912
|
- app/controllers/project_tickets_controller.rb
|
@@ -922,6 +918,7 @@ files:
|
|
922
918
|
- app/controllers/sprint_task_locks_controller.rb
|
923
919
|
- app/controllers/sprints_controller.rb
|
924
920
|
- app/controllers/tasks_controller.rb
|
921
|
+
- app/controllers/teams_controller.rb
|
925
922
|
- app/controllers/test_runs_controller.rb
|
926
923
|
- app/controllers/tester_bar_controller.rb
|
927
924
|
- app/controllers/tickets_controller.rb
|
@@ -967,7 +964,6 @@ files:
|
|
967
964
|
- app/jobs/sync_project_tickets_job.rb
|
968
965
|
- app/mailers/.gitkeep
|
969
966
|
- app/mailers/.keep
|
970
|
-
- app/mailers/deploy_notification.rb
|
971
967
|
- app/mailers/project_notification.rb
|
972
968
|
- app/mailers/view_mailer.rb
|
973
969
|
- app/models/.gitkeep
|
@@ -975,7 +971,6 @@ files:
|
|
975
971
|
- app/models/ability.rb
|
976
972
|
- app/models/action.rb
|
977
973
|
- app/models/activity_feed.rb
|
978
|
-
- app/models/antecedent.rb
|
979
974
|
- app/models/authorization.rb
|
980
975
|
- app/models/code_climate/coverage_report.rb
|
981
976
|
- app/models/commit.rb
|
@@ -1022,30 +1017,28 @@ files:
|
|
1022
1017
|
- app/models/static_chart.rb
|
1023
1018
|
- app/models/static_chart/area.rb
|
1024
1019
|
- app/models/task.rb
|
1020
|
+
- app/models/team.rb
|
1021
|
+
- app/models/team_user.rb
|
1025
1022
|
- app/models/test.rb
|
1026
1023
|
- app/models/test_error.rb
|
1027
1024
|
- app/models/test_result.rb
|
1028
1025
|
- app/models/test_run.rb
|
1029
1026
|
- app/models/test_run_statistics.rb
|
1030
1027
|
- app/models/ticket.rb
|
1031
|
-
- app/models/ticket_antecedent.rb
|
1032
1028
|
- app/models/ticket_comment.rb
|
1033
1029
|
- app/models/ticket_committer.rb
|
1034
1030
|
- app/models/ticket_tag.rb
|
1035
1031
|
- app/models/user.rb
|
1036
1032
|
- app/models/user_credentials.rb
|
1037
|
-
- app/models/value_statement.rb
|
1038
1033
|
- app/presenters/commit_presenter.rb
|
1039
1034
|
- app/presenters/full_ticket_presenter.rb
|
1040
1035
|
- app/presenters/measurements_presenter.rb
|
1041
1036
|
- app/presenters/one_or_many.rb
|
1042
|
-
- app/presenters/problem_presenter.rb
|
1043
1037
|
- app/presenters/project_presenter.rb
|
1044
1038
|
- app/presenters/release_presenter.rb
|
1045
1039
|
- app/presenters/sprint_task_presenter.rb
|
1046
1040
|
- app/presenters/task_presenter.rb
|
1047
1041
|
- app/presenters/tasks_excel_presenter.rb
|
1048
|
-
- app/presenters/tester_presenter.rb
|
1049
1042
|
- app/presenters/ticket_presenter.rb
|
1050
1043
|
- app/views/actions/_actions.html.erb
|
1051
1044
|
- app/views/actions/index.html.erb
|
@@ -1094,10 +1087,8 @@ files:
|
|
1094
1087
|
- app/views/oauth/providers/index.html.erb
|
1095
1088
|
- app/views/oauth/providers/new.html.erb
|
1096
1089
|
- app/views/project_notification/ci_configuration_error.html.erb
|
1097
|
-
- app/views/project_notification/follow_up.html.erb
|
1098
1090
|
- app/views/project_notification/new_release.html.erb
|
1099
1091
|
- app/views/project_notification/test_run.html.erb
|
1100
|
-
- app/views/project_pretickets/show.html.erb
|
1101
1092
|
- app/views/project_tests/_commits.html.erb
|
1102
1093
|
- app/views/project_tests/index.html.erb
|
1103
1094
|
- app/views/project_tests/show.html.erb
|
@@ -1121,7 +1112,6 @@ files:
|
|
1121
1112
|
- app/views/projects/index.html.erb
|
1122
1113
|
- app/views/projects/new.html.erb
|
1123
1114
|
- app/views/projects/new_from_github.html.erb
|
1124
|
-
- app/views/releases/_antecedents.html.erb
|
1125
1115
|
- app/views/releases/_changelog.html.erb
|
1126
1116
|
- app/views/releases/_commits.html.erb
|
1127
1117
|
- app/views/releases/_form.html.erb
|
@@ -1136,6 +1126,10 @@ files:
|
|
1136
1126
|
- app/views/settings/show.html.erb
|
1137
1127
|
- app/views/sprints/dashboard.html.erb
|
1138
1128
|
- app/views/sprints/show.html.erb
|
1129
|
+
- app/views/teams/_form.html.erb
|
1130
|
+
- app/views/teams/edit.html.erb
|
1131
|
+
- app/views/teams/index.html.erb
|
1132
|
+
- app/views/teams/new.html.erb
|
1139
1133
|
- app/views/test_runs/confirm_retry.html.erb
|
1140
1134
|
- app/views/tickets/new.html.erb
|
1141
1135
|
- app/views/triggers/index.html.erb
|
@@ -1165,7 +1159,6 @@ files:
|
|
1165
1159
|
- config/initializers/cookies_serializer.rb
|
1166
1160
|
- config/initializers/devise.rb
|
1167
1161
|
- config/initializers/filter_parameter_logging.rb
|
1168
|
-
- config/initializers/hard_coded_knowledge.rb
|
1169
1162
|
- config/initializers/houston_async.rb
|
1170
1163
|
- config/initializers/houston_benchmark.rb
|
1171
1164
|
- config/initializers/houston_deliver.rb
|
@@ -1260,7 +1253,6 @@ files:
|
|
1260
1253
|
- db/migrate/20130420172322_rename_projects_ci_adapter_to_ci_server_name.rb
|
1261
1254
|
- db/migrate/20130420174002_rename_projects_errbit_app_id_to_error_tracker_id.rb
|
1262
1255
|
- db/migrate/20130420174126_add_error_tracker_name_to_projects.rb
|
1263
|
-
- db/migrate/20130427223925_create_project_quotas.rb
|
1264
1256
|
- db/migrate/20130428005808_create_settings.rb
|
1265
1257
|
- db/migrate/20130504014802_add_extended_attributes_to_projects.rb
|
1266
1258
|
- db/migrate/20130504135741_add_antecedents_to_tickets.rb
|
@@ -1316,7 +1308,6 @@ files:
|
|
1316
1308
|
- db/migrate/20140428023146_prevent_ticket_number_from_being_null.rb
|
1317
1309
|
- db/migrate/20140429000919_add_feature_states_to_projects.rb
|
1318
1310
|
- db/migrate/20140506032958_add_locked_to_sprints.rb
|
1319
|
-
- db/migrate/20140506035755_create_value_statements.rb
|
1320
1311
|
- db/migrate/20140515174322_create_tasks.rb
|
1321
1312
|
- db/migrate/20140515200824_link_tasks_and_commits.rb
|
1322
1313
|
- db/migrate/20140516005310_link_tasks_and_releases.rb
|
@@ -1393,6 +1384,8 @@ files:
|
|
1393
1384
|
- db/migrate/20160711170921_rename_jobs_to_actions.rb
|
1394
1385
|
- db/migrate/20160713204605_add_trigger_and_params_to_actions.rb
|
1395
1386
|
- db/migrate/20160715173039_create_persistent_triggers.rb
|
1387
|
+
- db/migrate/20160812233255_repurpose_users_role.rb
|
1388
|
+
- db/migrate/20160813001242_create_teams.rb
|
1396
1389
|
- db/seeds.rb
|
1397
1390
|
- db/structure.sql
|
1398
1391
|
- houston-core.gemspec
|
@@ -1415,7 +1408,6 @@ files:
|
|
1415
1408
|
- lib/houston/boot/readonly_hash_serializer.rb
|
1416
1409
|
- lib/houston/boot/serializer.rb
|
1417
1410
|
- lib/houston/boot/server.rb
|
1418
|
-
- lib/houston/boot/ticket_antecedent_serializer.rb
|
1419
1411
|
- lib/houston/boot/timer.rb
|
1420
1412
|
- lib/houston/boot/triggers.rb
|
1421
1413
|
- lib/houston/cli.rb
|
@@ -1477,6 +1469,7 @@ files:
|
|
1477
1469
|
- templates/new-instance/config/events/deploy/checkout_mentioned_alerts.rb
|
1478
1470
|
- templates/new-instance/config/events/deploy/notify_deployer_when_finished.rb
|
1479
1471
|
- templates/new-instance/config/events/github/publish_comments_on_slack.rb
|
1472
|
+
- templates/new-instance/config/events/tests/email_when_completed.rb
|
1480
1473
|
- templates/new-instance/config/events/tests/slack_when_analyzed.rb
|
1481
1474
|
- templates/new-instance/config/events/tests/slack_when_completed.rb
|
1482
1475
|
- templates/new-instance/config/events/tickets/mark_tasks_completed_on_commit.rb
|
@@ -3318,6 +3311,8 @@ files:
|
|
3318
3311
|
- test/fixtures/.gitkeep
|
3319
3312
|
- test/fixtures/.keep
|
3320
3313
|
- test/fixtures/simplecov_sample.rb
|
3314
|
+
- test/fixtures/teams.yml
|
3315
|
+
- test/fixtures/teams_users.yml
|
3321
3316
|
- test/fixtures/users.yml
|
3322
3317
|
- test/integration/.gitkeep
|
3323
3318
|
- test/integration/.keep
|
@@ -3346,6 +3341,7 @@ files:
|
|
3346
3341
|
- test/unit/controllers/sprints_controller_test.rb
|
3347
3342
|
- test/unit/controllers/test_runs_controller_test.rb
|
3348
3343
|
- test/unit/controllers/user_options_controller_test.rb
|
3344
|
+
- test/unit/controllers/users_controller_test.rb
|
3349
3345
|
- test/unit/initializers/sync_commits_on_post_receive_test.rb
|
3350
3346
|
- test/unit/models/actions_test.rb
|
3351
3347
|
- test/unit/models/code_climate_coverage_report_test.rb
|
@@ -3365,7 +3361,6 @@ files:
|
|
3365
3361
|
- test/unit/models/sprint_test.rb
|
3366
3362
|
- test/unit/models/task_test.rb
|
3367
3363
|
- test/unit/models/test_run_test.rb
|
3368
|
-
- test/unit/models/ticket_antecedents_test.rb
|
3369
3364
|
- test/unit/models/ticket_test.rb
|
3370
3365
|
- test/unit/models/triggers_test.rb
|
3371
3366
|
- test/unit/models/user_test.rb
|
@@ -3486,9 +3481,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
3486
3481
|
version: '0'
|
3487
3482
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
3488
3483
|
requirements:
|
3489
|
-
- - "
|
3484
|
+
- - ">"
|
3490
3485
|
- !ruby/object:Gem::Version
|
3491
|
-
version:
|
3486
|
+
version: 1.3.1
|
3492
3487
|
requirements: []
|
3493
3488
|
rubyforge_project:
|
3494
3489
|
rubygems_version: 2.5.1
|
@@ -3544,6 +3539,8 @@ test_files:
|
|
3544
3539
|
- test/fixtures/.gitkeep
|
3545
3540
|
- test/fixtures/.keep
|
3546
3541
|
- test/fixtures/simplecov_sample.rb
|
3542
|
+
- test/fixtures/teams.yml
|
3543
|
+
- test/fixtures/teams_users.yml
|
3547
3544
|
- test/fixtures/users.yml
|
3548
3545
|
- test/integration/.gitkeep
|
3549
3546
|
- test/integration/.keep
|
@@ -3572,6 +3569,7 @@ test_files:
|
|
3572
3569
|
- test/unit/controllers/sprints_controller_test.rb
|
3573
3570
|
- test/unit/controllers/test_runs_controller_test.rb
|
3574
3571
|
- test/unit/controllers/user_options_controller_test.rb
|
3572
|
+
- test/unit/controllers/users_controller_test.rb
|
3575
3573
|
- test/unit/initializers/sync_commits_on_post_receive_test.rb
|
3576
3574
|
- test/unit/models/actions_test.rb
|
3577
3575
|
- test/unit/models/code_climate_coverage_report_test.rb
|
@@ -3591,7 +3589,6 @@ test_files:
|
|
3591
3589
|
- test/unit/models/sprint_test.rb
|
3592
3590
|
- test/unit/models/task_test.rb
|
3593
3591
|
- test/unit/models/test_run_test.rb
|
3594
|
-
- test/unit/models/ticket_antecedents_test.rb
|
3595
3592
|
- test/unit/models/ticket_test.rb
|
3596
3593
|
- test/unit/models/triggers_test.rb
|
3597
3594
|
- test/unit/models/user_test.rb
|
@@ -1,52 +0,0 @@
|
|
1
|
-
class @TableRowExpander
|
2
|
-
|
3
|
-
setupForViews: (views)->
|
4
|
-
@expandedView = null
|
5
|
-
views.each (view)=>
|
6
|
-
view.on 'expanding', => @onViewExpanding(view)
|
7
|
-
|
8
|
-
view.expand = _.bind ->
|
9
|
-
@trigger('expanding')
|
10
|
-
@$el.addClass('expanded in-transition')
|
11
|
-
@$expandedRow = @renderExpandedRow()
|
12
|
-
@$expandedRow.slideDown =>
|
13
|
-
@$el.removeClass('in-transition')
|
14
|
-
@trigger('expanded')
|
15
|
-
, view
|
16
|
-
|
17
|
-
view.collapse = _.bind (speed)->
|
18
|
-
return unless @$expandedRow
|
19
|
-
|
20
|
-
finish = =>
|
21
|
-
@$el.removeClass('expanded in-transition')
|
22
|
-
@$expandedRow.closest('tr').remove()
|
23
|
-
@$expandedRow = null
|
24
|
-
|
25
|
-
if speed == 'fast'
|
26
|
-
finish()
|
27
|
-
else
|
28
|
-
@$el.addClass('in-transition')
|
29
|
-
@$expandedRow.slideUp(finish)
|
30
|
-
, view
|
31
|
-
|
32
|
-
view.$el.click (e)=>
|
33
|
-
return if $(e.target).is('button, a, input')
|
34
|
-
@expandOrCollapseView(view)
|
35
|
-
|
36
|
-
$('.table-sortable').bind 'sortStart', => @collapseExpandedView('fast')
|
37
|
-
|
38
|
-
expandOrCollapseView: (view)->
|
39
|
-
return if view.$el.hasClass('in-transition')
|
40
|
-
return if view.$el.hasClass('deleting')
|
41
|
-
|
42
|
-
if view.$el.hasClass('expanded')
|
43
|
-
view.collapse()
|
44
|
-
else
|
45
|
-
view.expand()
|
46
|
-
|
47
|
-
onViewExpanding: (view)->
|
48
|
-
@collapseExpandedView()
|
49
|
-
@expandedView = view
|
50
|
-
|
51
|
-
collapseExpandedView: (speed)->
|
52
|
-
@expandedView.collapse(speed) if @expandedView
|