helena_administration 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (173) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +9 -0
  3. data/.rubocop.yml +18 -0
  4. data/.travis.yml +6 -0
  5. data/Gemfile +44 -0
  6. data/Gemfile.lock +309 -0
  7. data/MIT-LICENSE +20 -0
  8. data/README.md +82 -0
  9. data/Rakefile +28 -0
  10. data/app/assets/images/helena_administration/.keep +0 -0
  11. data/app/assets/javascripts/helena_administration.js.coffee +20 -0
  12. data/app/assets/javascripts/polyfills.js +10 -0
  13. data/app/assets/stylesheets/_dashboard.sass +4 -0
  14. data/app/assets/stylesheets/_layout.sass +50 -0
  15. data/app/assets/stylesheets/_media_queries.scss +18 -0
  16. data/app/assets/stylesheets/_variables.sass +19 -0
  17. data/app/assets/stylesheets/helena_administration.css.sass +27 -0
  18. data/app/controllers/helena_administration/application_controller.rb +19 -0
  19. data/app/controllers/helena_administration/dashboard_controller.rb +11 -0
  20. data/app/controllers/helena_administration/import_surveys_controller.rb +40 -0
  21. data/app/controllers/helena_administration/question_groups_controller.rb +68 -0
  22. data/app/controllers/helena_administration/questions/checkbox_groups_controller.rb +15 -0
  23. data/app/controllers/helena_administration/questions/checkbox_matrix_controller.rb +7 -0
  24. data/app/controllers/helena_administration/questions/long_texts_controller.rb +11 -0
  25. data/app/controllers/helena_administration/questions/radio_groups_controller.rb +15 -0
  26. data/app/controllers/helena_administration/questions/radio_matrix_controller.rb +7 -0
  27. data/app/controllers/helena_administration/questions/short_texts_controller.rb +11 -0
  28. data/app/controllers/helena_administration/questions/static_texts_controller.rb +11 -0
  29. data/app/controllers/helena_administration/questions_controller.rb +96 -0
  30. data/app/controllers/helena_administration/sessions_controller.rb +60 -0
  31. data/app/controllers/helena_administration/surveys_controller.rb +71 -0
  32. data/app/controllers/helena_administration/versions_controller.rb +82 -0
  33. data/app/helpers/helena_administration/application_helper.rb +14 -0
  34. data/app/models/helena_administration/import_survey_form.rb +9 -0
  35. data/app/views/helena_administration/application/_chromeframe.html.slim +4 -0
  36. data/app/views/helena_administration/application/_flash_messages.html.haml +5 -0
  37. data/app/views/helena_administration/application/_head.html.slim +13 -0
  38. data/app/views/helena_administration/application/_header.html.slim +16 -0
  39. data/app/views/helena_administration/dashboard/index.html.slim +14 -0
  40. data/app/views/helena_administration/import_surveys/_form.html.slim +11 -0
  41. data/app/views/helena_administration/import_surveys/new.html.slim +1 -0
  42. data/app/views/helena_administration/kaminari/_first_page.html.slim +2 -0
  43. data/app/views/helena_administration/kaminari/_gap.html.slim +2 -0
  44. data/app/views/helena_administration/kaminari/_last_page.html.slim +2 -0
  45. data/app/views/helena_administration/kaminari/_next_page.html.slim +2 -0
  46. data/app/views/helena_administration/kaminari/_page.html.slim +2 -0
  47. data/app/views/helena_administration/kaminari/_paginator.html.slim +11 -0
  48. data/app/views/helena_administration/kaminari/_prev_page.html.slim +2 -0
  49. data/app/views/helena_administration/layouts/application.html.slim +13 -0
  50. data/app/views/helena_administration/question_groups/_form.html.slim +5 -0
  51. data/app/views/helena_administration/question_groups/edit.html.slim +1 -0
  52. data/app/views/helena_administration/question_groups/new.html.slim +1 -0
  53. data/app/views/helena_administration/question_groups/show.html.slim +60 -0
  54. data/app/views/helena_administration/questions/_form.html.slim +15 -0
  55. data/app/views/helena_administration/questions/_labels.html.slim +24 -0
  56. data/app/views/helena_administration/questions/_sub_questions.html.slim +32 -0
  57. data/app/views/helena_administration/questions/edit.html.slim +1 -0
  58. data/app/views/helena_administration/questions/new.html.slim +1 -0
  59. data/app/views/helena_administration/questions/show.html.slim +26 -0
  60. data/app/views/helena_administration/sessions/_form.html.slim +8 -0
  61. data/app/views/helena_administration/sessions/edit.html.slim +1 -0
  62. data/app/views/helena_administration/surveys/_form.html.slim +5 -0
  63. data/app/views/helena_administration/surveys/edit.html.slim +1 -0
  64. data/app/views/helena_administration/surveys/index.html.slim +34 -0
  65. data/app/views/helena_administration/surveys/new.html.slim +1 -0
  66. data/app/views/helena_administration/surveys/show.html.slim +120 -0
  67. data/app/views/helena_administration/versions/_form.html.slim +14 -0
  68. data/app/views/helena_administration/versions/edit.html.slim +1 -0
  69. data/app/views/helena_administration/versions/new.html.slim +1 -0
  70. data/app/views/helena_administration/versions/show.html.slim +68 -0
  71. data/app/views/layouts/helena_administration/application.html.slim +10 -0
  72. data/bin/rails +12 -0
  73. data/config/compass.rb +2 -0
  74. data/config/html5_rails.yml +26 -0
  75. data/config/locales/en.yml +21 -0
  76. data/config/locales/views/dashboard.en.yml +6 -0
  77. data/config/locales/views/import_surveys.en.yml +11 -0
  78. data/config/locales/views/question_groups.en.yml +5 -0
  79. data/config/locales/views/questions.en.yml +5 -0
  80. data/config/locales/views/surveys.en.yml +10 -0
  81. data/config/locales/views/versions.en.yml +11 -0
  82. data/config/routes.rb +24 -0
  83. data/coverage/.resultset.json.lock +0 -0
  84. data/coverage/assets/0.8.0/application.css +799 -0
  85. data/coverage/assets/0.8.0/application.js +1559 -0
  86. data/coverage/assets/0.8.0/colorbox/border.png +0 -0
  87. data/coverage/assets/0.8.0/colorbox/controls.png +0 -0
  88. data/coverage/assets/0.8.0/colorbox/loading.gif +0 -0
  89. data/coverage/assets/0.8.0/colorbox/loading_background.png +0 -0
  90. data/coverage/assets/0.8.0/favicon_green.png +0 -0
  91. data/coverage/assets/0.8.0/favicon_red.png +0 -0
  92. data/coverage/assets/0.8.0/favicon_yellow.png +0 -0
  93. data/coverage/assets/0.8.0/loading.gif +0 -0
  94. data/coverage/assets/0.8.0/magnify.png +0 -0
  95. data/coverage/assets/0.8.0/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  96. data/coverage/assets/0.8.0/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  97. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  98. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  99. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  100. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  101. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  102. data/coverage/assets/0.8.0/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  103. data/coverage/assets/0.8.0/smoothness/images/ui-icons_222222_256x240.png +0 -0
  104. data/coverage/assets/0.8.0/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  105. data/coverage/assets/0.8.0/smoothness/images/ui-icons_454545_256x240.png +0 -0
  106. data/coverage/assets/0.8.0/smoothness/images/ui-icons_888888_256x240.png +0 -0
  107. data/coverage/assets/0.8.0/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  108. data/helena_administration.gemspec +37 -0
  109. data/lib/helena_administration/engine.rb +13 -0
  110. data/lib/helena_administration/version.rb +3 -0
  111. data/lib/helena_administration.rb +15 -0
  112. data/lib/tasks/helena_administration_tasks.rake +4 -0
  113. data/spec/controllers/dashboard_controller_spec.rb +11 -0
  114. data/spec/controllers/sessions_controller_spec.rb +102 -0
  115. data/spec/controllers/survey_controller_spec.rb +36 -0
  116. data/spec/dummy/README.rdoc +28 -0
  117. data/spec/dummy/Rakefile +6 -0
  118. data/spec/dummy/app/assets/images/.keep +0 -0
  119. data/spec/dummy/app/assets/javascripts/application.js +13 -0
  120. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  121. data/spec/dummy/app/controllers/application_controller.rb +5 -0
  122. data/spec/dummy/app/controllers/concerns/.keep +0 -0
  123. data/spec/dummy/app/decorators/controllers/helena_administration/application_controller_decorator.rb +5 -0
  124. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  125. data/spec/dummy/app/mailers/.keep +0 -0
  126. data/spec/dummy/app/models/.keep +0 -0
  127. data/spec/dummy/app/models/concerns/.keep +0 -0
  128. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  129. data/spec/dummy/bin/bundle +3 -0
  130. data/spec/dummy/bin/rails +4 -0
  131. data/spec/dummy/bin/rake +4 -0
  132. data/spec/dummy/config/application.rb +27 -0
  133. data/spec/dummy/config/boot.rb +5 -0
  134. data/spec/dummy/config/environment.rb +5 -0
  135. data/spec/dummy/config/environments/development.rb +34 -0
  136. data/spec/dummy/config/environments/production.rb +78 -0
  137. data/spec/dummy/config/environments/test.rb +39 -0
  138. data/spec/dummy/config/initializers/assets.rb +9 -0
  139. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  140. data/spec/dummy/config/initializers/cookies_serializer.rb +3 -0
  141. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  142. data/spec/dummy/config/initializers/inflections.rb +16 -0
  143. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  144. data/spec/dummy/config/initializers/session_store.rb +3 -0
  145. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  146. data/spec/dummy/config/locales/en.yml +23 -0
  147. data/spec/dummy/config/mongoid.yml +13 -0
  148. data/spec/dummy/config/routes.rb +4 -0
  149. data/spec/dummy/config/secrets.yml +22 -0
  150. data/spec/dummy/config.ru +4 -0
  151. data/spec/dummy/lib/assets/.keep +0 -0
  152. data/spec/dummy/log/.keep +0 -0
  153. data/spec/dummy/public/404.html +67 -0
  154. data/spec/dummy/public/422.html +67 -0
  155. data/spec/dummy/public/500.html +66 -0
  156. data/spec/dummy/public/favicon.ico +0 -0
  157. data/spec/features/dashboard/index.html.slim_spec.rb +9 -0
  158. data/spec/features/question_groups/manage_question_groups_spec.rb +97 -0
  159. data/spec/features/questions/manage_questions_spec.rb +108 -0
  160. data/spec/features/questions/question_types/manage_checkbox_group_question_spec.rb +53 -0
  161. data/spec/features/questions/question_types/manage_long_text_question_spec.rb +22 -0
  162. data/spec/features/questions/question_types/manage_radio_group_question_spec.rb +57 -0
  163. data/spec/features/questions/question_types/manage_radio_matrix_question_spec.rb +78 -0
  164. data/spec/features/questions/question_types/manage_short_text_question_spec.rb +20 -0
  165. data/spec/features/questions/question_types/manage_static_text_question_spec.rb +18 -0
  166. data/spec/features/sessions/manage_sessions_spec.rb +51 -0
  167. data/spec/features/surveys/manage_survey_spec.rb +95 -0
  168. data/spec/features/versions/manage_version_spec.rb +113 -0
  169. data/spec/helpers/applicatin_helper_spec.rb +17 -0
  170. data/spec/rails_helper.rb +23 -0
  171. data/spec/spec_helper.rb +63 -0
  172. data/spec/support/.keep +0 -0
  173. metadata +455 -0
@@ -0,0 +1,20 @@
1
+ require 'rails_helper'
2
+
3
+ describe 'Short text question management' do
4
+ let!(:survey) { create :survey }
5
+ let!(:version) { survey.versions.create version: 0 }
6
+ let!(:question_group) { version.question_groups.create title: 'Abakadabara' }
7
+ let!(:question) { create :short_text_question, question_group: question_group }
8
+
9
+ scenario 'edits a question' do
10
+ visit edit_survey_version_question_group_questions_short_text_path(survey, version, question_group, question)
11
+
12
+ fill_in 'Default value', with: 'Hey Hey!'
13
+ check 'Required'
14
+
15
+ click_button 'Save'
16
+
17
+ expect(question.reload.default_value).to eq 'Hey Hey!'
18
+ expect(question.reload.required).to eq true
19
+ end
20
+ end
@@ -0,0 +1,18 @@
1
+ require 'rails_helper'
2
+
3
+ describe 'Static text question management' do
4
+ let!(:survey) { create :survey }
5
+ let!(:version) { survey.versions.create version: 0 }
6
+ let!(:question_group) { version.question_groups.create title: 'Abakadabara' }
7
+ let!(:question) { create :static_text_question, question_group: question_group }
8
+
9
+ scenario 'edits a question' do
10
+ visit edit_survey_version_question_group_questions_static_text_path(survey, version, question_group, question)
11
+
12
+ fill_in 'Static text', with: 'This text will be displayed instead of an input'
13
+
14
+ click_button 'Save'
15
+
16
+ expect(question.reload.default_value).to eq 'This text will be displayed instead of an input'
17
+ end
18
+ end
@@ -0,0 +1,51 @@
1
+ require 'rails_helper'
2
+
3
+ describe 'Sessions' do
4
+ let(:survey) { create :survey }
5
+ let!(:version) { survey.versions.create }
6
+
7
+ scenario 'User creates a new session' do
8
+ visit survey_path(survey)
9
+
10
+ within 'table.sessions' do
11
+ expect { click_link 'New' }.to change { Helena::Session.count }.by 1
12
+ end
13
+ end
14
+
15
+ scenario 'User deletes a session' do
16
+ survey.sessions.create version: version
17
+
18
+ visit survey_path(survey)
19
+
20
+ within 'table.sessions' do
21
+ expect { click_link 'Delete' }.to change { Helena::Session.count }.by(-1)
22
+ end
23
+ end
24
+
25
+ scenario 'User edits a session' do
26
+ session = survey.sessions.create version: version, token: 'xxx'
27
+ version.question_groups.create title: 'first question group'
28
+ second_question_group = version.question_groups.create title: 'second question group'
29
+
30
+ visit edit_survey_session_path(survey, session)
31
+
32
+ within 'nav .breadcrumbs' do
33
+ expect(page).to have_text 'Session: xxx'
34
+ end
35
+
36
+ fill_in 'Token', with: '123'
37
+ fill_in 'View token', with: '456'
38
+ fill_in 'Answers', with: "a: c\nb: 4"
39
+ check 'Completed?'
40
+ select '2: Second Question Group', from: 'Last viewed question group'
41
+
42
+ click_button 'Save'
43
+
44
+ expect(session.reload.token).to eq '123'
45
+ expect(session.reload.view_token).to eq '456'
46
+ expect(session.reload.answers.map(&:code)).to eq %w(a b)
47
+ expect(session.reload.answers.map(&:value)).to eq ['c', 4]
48
+ expect(session.reload.completed).to eq true
49
+ expect(session.reload.last_question_group_id).to eq second_question_group.id
50
+ end
51
+ end
@@ -0,0 +1,95 @@
1
+ require 'rails_helper'
2
+
3
+ describe 'Surveys' do
4
+ scenario 'Index site lists all surveys' do
5
+ create :survey, name: 'Innerbetriebliche Zufriedenheit', position: 2
6
+ create :survey, name: 'Life satisfaction scale', position: 1
7
+
8
+ visit surveys_path
9
+
10
+ within 'nav .breadcrumbs' do
11
+ expect(page).to have_content 'Surveys'
12
+ end
13
+
14
+ within 'table tbody tr:nth-child(1)' do
15
+ expect(page).to have_content 'Life satisfaction scale'
16
+ end
17
+
18
+ within 'table tbody tr:nth-child(2)' do
19
+ expect(page).to have_content 'Innerbetriebliche Zufriedenheit'
20
+ end
21
+ end
22
+
23
+ scenario 'User deletes a survey' do
24
+ survey = create :survey
25
+
26
+ visit surveys_path
27
+
28
+ within "##{dom_id(survey)}" do
29
+ expect { click_link 'Delete' }.to change { Helena::Survey.count }.from(1).to(0)
30
+ end
31
+ end
32
+
33
+ scenario 'User creates a new survey' do
34
+ visit surveys_path
35
+
36
+ click_link 'New'
37
+
38
+ within 'nav .breadcrumbs' do
39
+ expect(page).to have_text 'New'
40
+ end
41
+
42
+ expect { click_button 'Save' }.to change { Helena::Survey.count }.by 0
43
+
44
+ fill_in 'Name', with: 'More crazy stuff...'
45
+ select 'en', from: 'Language'
46
+ fill_in 'Tag list', with: 'english, foo, 42'
47
+
48
+ within 'nav .breadcrumbs' do
49
+ expect(page).to have_text 'New'
50
+ end
51
+
52
+ expect { click_button 'Save' }.to change { Helena::Survey.count }.by 1
53
+ end
54
+
55
+ scenario 'User updates a survey' do
56
+ survey = create :survey, name: 'Swiss fertility survey'
57
+
58
+ visit surveys_path
59
+
60
+ within "##{dom_id(survey)}" do
61
+ click_link 'Edit'
62
+ end
63
+
64
+ within 'nav .breadcrumbs' do
65
+ expect(page).to have_text 'Swiss fertility survey'
66
+ end
67
+
68
+ fill_in 'Name', with: ''
69
+
70
+ expect { click_button 'Save' }.not_to change { survey.reload }
71
+
72
+ within 'nav .breadcrumbs' do
73
+ expect(page).to have_text 'Swiss fertility survey'
74
+ end
75
+
76
+ fill_in 'Name', with: 'More crazy stuff...'
77
+ select 'en', from: 'Language'
78
+ fill_in 'Tag list', with: 'english, foo, 42'
79
+
80
+ expect { click_button 'Save' }.to change { survey.reload.name }.from('Swiss fertility survey').to('More crazy stuff...')
81
+ end
82
+
83
+ scenario 'User can view survey details' do
84
+ survey = create :survey, name: 'Swiss fertility survey'
85
+
86
+ visit survey_path(survey)
87
+
88
+ within 'nav .breadcrumbs' do
89
+ expect(page).to have_content 'Swiss fertility survey'
90
+ end
91
+ within "##{dom_id(survey)}" do
92
+ expect(page).to have_content 'Swiss fertility survey'
93
+ end
94
+ end
95
+ end
@@ -0,0 +1,113 @@
1
+ require 'rails_helper'
2
+
3
+ describe 'Versions ' do
4
+
5
+ let!(:survey) { create :survey }
6
+ let!(:baseversion) { survey.versions.create version: 0 }
7
+
8
+ scenario 'Index site lists all versions' do
9
+ version = survey.versions.create notes: 'Awesome new version', version: 666
10
+
11
+ visit survey_path(survey)
12
+
13
+ within "##{dom_id(version)}" do
14
+ expect(page).to have_content '666'
15
+ expect(page).to have_content 'Awesome new version'
16
+ end
17
+ end
18
+
19
+ scenario 'User publish a new version' do
20
+ visit survey_path(survey)
21
+
22
+ within 'table.versions' do
23
+ click_link 'New'
24
+ end
25
+
26
+ within 'nav .breadcrumbs' do
27
+ expect(page).to have_text 'New version'
28
+ end
29
+
30
+ fill_in 'version_survey_detail_attributes_title', with: 'Everybody lies'
31
+ fill_in 'version_survey_detail_attributes_description', with: 'but shoes always tell the truth'
32
+ fill_in 'Notes', with: 'Luke, I am your father!'
33
+ fill_in 'version_session_report', with: 'Foo Bar'
34
+ check 'Display progressbar'
35
+
36
+ expect(page).not_to have_selector 'version_active'
37
+
38
+ expect { click_button 'Save' }.to change { survey.reload.versions.count }.by(1)
39
+
40
+ new_version = survey.reload.versions.last
41
+
42
+ expect(new_version.survey_detail.title).to eq 'Everybody lies'
43
+ expect(new_version.survey_detail.description).to eq 'but shoes always tell the truth'
44
+ expect(new_version.notes).to eq 'Luke, I am your father!'
45
+ expect(new_version.session_report).to eq 'Foo Bar'
46
+ expect(new_version.active).to be false
47
+ end
48
+
49
+ scenario 'User edits version' do
50
+ version = survey.versions.create version: 666, active: false
51
+
52
+ visit survey_path(survey)
53
+
54
+ within "##{dom_id(version)}" do
55
+ click_link 'Edit'
56
+ end
57
+
58
+ within 'nav .breadcrumbs' do
59
+ expect(page).to have_content 'Version 666'
60
+ end
61
+
62
+ fill_in 'version_survey_detail_attributes_title', with: 'Everybody lies'
63
+ fill_in 'version_survey_detail_attributes_description', with: 'but shoes always tell the truth'
64
+ fill_in 'Notes', with: 'Luke, I am your father!'
65
+ fill_in 'version_session_report', with: 'Foo Bar'
66
+ check 'version_active'
67
+ check 'Display progressbar'
68
+
69
+ expect(page).not_to have_selector 'version_active'
70
+
71
+ click_button 'Save'
72
+ expect(version.reload.survey_detail.title).to eq 'Everybody lies'
73
+ expect(version.reload.survey_detail.description).to eq 'but shoes always tell the truth'
74
+ expect(version.reload.notes).to eq 'Luke, I am your father!'
75
+ expect(version.reload.session_report).to eq 'Foo Bar'
76
+ expect(version.reload.active).to be true
77
+ end
78
+
79
+ scenario 'User deletes a version' do
80
+ inactive_version = survey.versions.create active: false, version: 1
81
+ active_version = survey.versions.create active: true, version: 2
82
+
83
+ visit survey_path(survey.reload)
84
+
85
+ within "##{dom_id(active_version)}" do
86
+ expect(page).to have_selector 'a.disabled', text: 'Delete'
87
+ end
88
+
89
+ within "##{dom_id(inactive_version)}" do
90
+ expect { click_link 'Delete' }.to change { survey.reload.versions.count }.by(-1)
91
+ end
92
+
93
+ end
94
+
95
+ scenario 'User can view version details' do
96
+ version = survey.versions.create notes: 'Awesome new version', version: 666, session_report: 'AbCdE'
97
+ version.survey_detail = Helena::SurveyDetail.new title: 'Piracy', description: 'Typically an act of robbery or criminal violence at sea.'
98
+
99
+ visit survey_version_path(survey, version)
100
+
101
+ within 'nav .breadcrumbs' do
102
+ expect(page).to have_content 'Version 666'
103
+ end
104
+
105
+ within "##{dom_id(version)}" do
106
+ expect(page).to have_content 'Piracy'
107
+ expect(page).to have_content 'Typically an act of robbery or criminal violence at sea.'
108
+ expect(page).to have_content '666'
109
+ expect(page).to have_content 'Awesome new version'
110
+ expect(page).to have_content 'AbCdE'
111
+ end
112
+ end
113
+ end
@@ -0,0 +1,17 @@
1
+ require 'rails_helper'
2
+
3
+ describe HelenaAdministration::ApplicationHelper do
4
+ describe '.title' do
5
+ it 'sets content for :title' do
6
+ helper.title 'test'
7
+ expect(view.content_for :title).to eq 'test'
8
+ end
9
+ end
10
+
11
+ describe '.truncate_between' do
12
+ it 'truncates a string correctly' do
13
+ output = helper.truncate_between 'abcdefghijklmnopqrstuvwxyz', 20
14
+ expect(output).to eq 'abcdefghi...stuvwxyz'
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,23 @@
1
+ # This file is copied to spec/ when you run 'rails generate rspec:install'
2
+ ENV['RAILS_ENV'] ||= 'test'
3
+ require 'spec_helper'
4
+ require File.expand_path('../dummy/config/environment.rb', __FILE__)
5
+ require 'rspec/rails'
6
+ # Add additional requires below this line. Rails is not loaded until this point!
7
+
8
+ # Requires supporting ruby files with custom matchers and macros, etc, in
9
+ # spec/support/ and its subdirectories. Files matching `spec/**/*_spec.rb` are
10
+ # run as spec files by default. This means that files in spec/support that end
11
+ # in _spec.rb will both be required and run as specs, causing the specs to be
12
+ # run twice. It is recommended that you do not name files matching this glob to
13
+ # end with _spec.rb. You can configure this pattern with the --pattern
14
+ # option on the command line or in ~/.rspec, .rspec or `.rspec-local`.
15
+ #
16
+ # The following line is provided for convenience purposes. It has the downside
17
+ # of increasing the boot-up time by auto-requiring all files in the support
18
+ # directory. Alternatively, in the individual `*_spec.rb` files, manually
19
+ # require only the support files necessary.
20
+ #
21
+ # Dir[Rails.root.join("spec/support/**/*.rb")].each { |f| require f }
22
+
23
+ RSpec.configure(&:infer_spec_type_from_file_location!)
@@ -0,0 +1,63 @@
1
+ require 'simplecov'
2
+ SimpleCov.start
3
+
4
+ ENV['RAILS_ENV'] ||= 'test'
5
+ require File.expand_path('../dummy/config/environment.rb', __FILE__)
6
+
7
+ require 'factory_girl_rails'
8
+ require 'database_cleaner'
9
+ require 'mongoid-rspec'
10
+ require 'capybara/rspec'
11
+ require 'rspec/collection_matchers'
12
+ require 'dotenv'
13
+ Dotenv.load
14
+
15
+ RSpec.configure do |config|
16
+
17
+ # Requires supporting ruby files with custom matchers and macros, etc,
18
+ # in spec/support/ and its subdirectories.
19
+ Dir[Rails.root.join('spec/support/**/*.rb')].each { |f| require f }
20
+
21
+ config.include Rails.application.routes.url_helpers
22
+ config.include ActionView::RecordIdentifier
23
+
24
+ config.expect_with :rspec do |expectations|
25
+ # This option will default to `true` in RSpec 4. It makes the `description`
26
+ # and `failure_message` of custom matchers include text for helper methods
27
+ # defined using `chain`, e.g.:
28
+ # be_bigger_than(2).and_smaller_than(4).description
29
+ # # => "be bigger than 2 and smaller than 4"
30
+ # ...rather than:
31
+ # # => "be bigger than 2"
32
+ expectations.include_chain_clauses_in_custom_matcher_descriptions = true
33
+ end
34
+
35
+ # rspec-mocks config goes here. You can use an alternate test double
36
+ # library (such as bogus or mocha) by changing the `mock_with` option here.
37
+ config.mock_with :rspec do |mocks|
38
+ # Prevents you from mocking or stubbing a method that does not exist on
39
+ # a real object. This is generally recommended, and will default to
40
+ # `true` in RSpec 4.
41
+ mocks.verify_partial_doubles = true
42
+ end
43
+
44
+ config.include HelenaAdministration::Engine.routes.url_helpers
45
+
46
+ config.include Mongoid::Matchers, type: :model
47
+
48
+ # We don't want write FactoryGirl all the time
49
+ config.include FactoryGirl::Syntax::Methods
50
+
51
+ config.order = :random
52
+ config.profile_examples = 30
53
+
54
+ DatabaseCleaner.strategy = :truncation
55
+
56
+ config.before(:each) do
57
+ DatabaseCleaner.start
58
+ end
59
+
60
+ config.after(:each) do
61
+ DatabaseCleaner.clean
62
+ end
63
+ end
File without changes
metadata ADDED
@@ -0,0 +1,455 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: helena_administration
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
5
+ platform: ruby
6
+ authors:
7
+ - Markus Graf
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-11-17 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: kaminari
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '0.16'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '0.16'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rails
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '4.1'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '4.1'
41
+ - !ruby/object:Gem::Dependency
42
+ name: slim-rails
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '2.1'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '2.1'
55
+ - !ruby/object:Gem::Dependency
56
+ name: codemirror-rails
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '4.5'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '4.5'
69
+ - !ruby/object:Gem::Dependency
70
+ name: mongoid
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '4.0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '4.0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: mongoid_orderable
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '4.1'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '4.1'
97
+ - !ruby/object:Gem::Dependency
98
+ name: mongoid-simple-tags
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '0.1'
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '0.1'
111
+ - !ruby/object:Gem::Dependency
112
+ name: haml-rails
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '0.5'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '0.5'
125
+ - !ruby/object:Gem::Dependency
126
+ name: html5-rails
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '0.1'
132
+ type: :runtime
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '0.1'
139
+ - !ruby/object:Gem::Dependency
140
+ name: jquery-rails
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: '3.1'
146
+ type: :runtime
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: '3.1'
153
+ - !ruby/object:Gem::Dependency
154
+ name: sass-rails
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '4.0'
160
+ type: :runtime
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '4.0'
167
+ - !ruby/object:Gem::Dependency
168
+ name: bootstrap-sass
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - "~>"
172
+ - !ruby/object:Gem::Version
173
+ version: '3.2'
174
+ type: :runtime
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - "~>"
179
+ - !ruby/object:Gem::Version
180
+ version: '3.2'
181
+ - !ruby/object:Gem::Dependency
182
+ name: simple_form
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - "~>"
186
+ - !ruby/object:Gem::Version
187
+ version: 3.1.0.rc2
188
+ type: :runtime
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - "~>"
193
+ - !ruby/object:Gem::Version
194
+ version: 3.1.0.rc2
195
+ - !ruby/object:Gem::Dependency
196
+ name: breadcrumbs_on_rails
197
+ requirement: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - "~>"
200
+ - !ruby/object:Gem::Version
201
+ version: '2.3'
202
+ type: :runtime
203
+ prerelease: false
204
+ version_requirements: !ruby/object:Gem::Requirement
205
+ requirements:
206
+ - - "~>"
207
+ - !ruby/object:Gem::Version
208
+ version: '2.3'
209
+ - !ruby/object:Gem::Dependency
210
+ name: rails-i18n
211
+ requirement: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - "~>"
214
+ - !ruby/object:Gem::Version
215
+ version: '4.0'
216
+ type: :runtime
217
+ prerelease: false
218
+ version_requirements: !ruby/object:Gem::Requirement
219
+ requirements:
220
+ - - "~>"
221
+ - !ruby/object:Gem::Version
222
+ version: '4.0'
223
+ - !ruby/object:Gem::Dependency
224
+ name: font-awesome-rails
225
+ requirement: !ruby/object:Gem::Requirement
226
+ requirements:
227
+ - - "~>"
228
+ - !ruby/object:Gem::Version
229
+ version: '4.2'
230
+ type: :runtime
231
+ prerelease: false
232
+ version_requirements: !ruby/object:Gem::Requirement
233
+ requirements:
234
+ - - "~>"
235
+ - !ruby/object:Gem::Version
236
+ version: '4.2'
237
+ - !ruby/object:Gem::Dependency
238
+ name: coffee-rails
239
+ requirement: !ruby/object:Gem::Requirement
240
+ requirements:
241
+ - - "~>"
242
+ - !ruby/object:Gem::Version
243
+ version: '4.1'
244
+ type: :runtime
245
+ prerelease: false
246
+ version_requirements: !ruby/object:Gem::Requirement
247
+ requirements:
248
+ - - "~>"
249
+ - !ruby/object:Gem::Version
250
+ version: '4.1'
251
+ description: Helena Administration is a simple rails application that provides a user
252
+ interface to manage apps running with the Helena framework.
253
+ email:
254
+ - info@markusgraf.ch
255
+ executables: []
256
+ extensions: []
257
+ extra_rdoc_files: []
258
+ files:
259
+ - ".gitignore"
260
+ - ".rubocop.yml"
261
+ - ".travis.yml"
262
+ - Gemfile
263
+ - Gemfile.lock
264
+ - MIT-LICENSE
265
+ - README.md
266
+ - Rakefile
267
+ - app/assets/images/helena_administration/.keep
268
+ - app/assets/javascripts/helena_administration.js.coffee
269
+ - app/assets/javascripts/polyfills.js
270
+ - app/assets/stylesheets/_dashboard.sass
271
+ - app/assets/stylesheets/_layout.sass
272
+ - app/assets/stylesheets/_media_queries.scss
273
+ - app/assets/stylesheets/_variables.sass
274
+ - app/assets/stylesheets/helena_administration.css.sass
275
+ - app/controllers/helena_administration/application_controller.rb
276
+ - app/controllers/helena_administration/dashboard_controller.rb
277
+ - app/controllers/helena_administration/import_surveys_controller.rb
278
+ - app/controllers/helena_administration/question_groups_controller.rb
279
+ - app/controllers/helena_administration/questions/checkbox_groups_controller.rb
280
+ - app/controllers/helena_administration/questions/checkbox_matrix_controller.rb
281
+ - app/controllers/helena_administration/questions/long_texts_controller.rb
282
+ - app/controllers/helena_administration/questions/radio_groups_controller.rb
283
+ - app/controllers/helena_administration/questions/radio_matrix_controller.rb
284
+ - app/controllers/helena_administration/questions/short_texts_controller.rb
285
+ - app/controllers/helena_administration/questions/static_texts_controller.rb
286
+ - app/controllers/helena_administration/questions_controller.rb
287
+ - app/controllers/helena_administration/sessions_controller.rb
288
+ - app/controllers/helena_administration/surveys_controller.rb
289
+ - app/controllers/helena_administration/versions_controller.rb
290
+ - app/helpers/helena_administration/application_helper.rb
291
+ - app/models/helena_administration/import_survey_form.rb
292
+ - app/views/helena_administration/application/_chromeframe.html.slim
293
+ - app/views/helena_administration/application/_flash_messages.html.haml
294
+ - app/views/helena_administration/application/_head.html.slim
295
+ - app/views/helena_administration/application/_header.html.slim
296
+ - app/views/helena_administration/dashboard/index.html.slim
297
+ - app/views/helena_administration/import_surveys/_form.html.slim
298
+ - app/views/helena_administration/import_surveys/new.html.slim
299
+ - app/views/helena_administration/kaminari/_first_page.html.slim
300
+ - app/views/helena_administration/kaminari/_gap.html.slim
301
+ - app/views/helena_administration/kaminari/_last_page.html.slim
302
+ - app/views/helena_administration/kaminari/_next_page.html.slim
303
+ - app/views/helena_administration/kaminari/_page.html.slim
304
+ - app/views/helena_administration/kaminari/_paginator.html.slim
305
+ - app/views/helena_administration/kaminari/_prev_page.html.slim
306
+ - app/views/helena_administration/layouts/application.html.slim
307
+ - app/views/helena_administration/question_groups/_form.html.slim
308
+ - app/views/helena_administration/question_groups/edit.html.slim
309
+ - app/views/helena_administration/question_groups/new.html.slim
310
+ - app/views/helena_administration/question_groups/show.html.slim
311
+ - app/views/helena_administration/questions/_form.html.slim
312
+ - app/views/helena_administration/questions/_labels.html.slim
313
+ - app/views/helena_administration/questions/_sub_questions.html.slim
314
+ - app/views/helena_administration/questions/edit.html.slim
315
+ - app/views/helena_administration/questions/new.html.slim
316
+ - app/views/helena_administration/questions/show.html.slim
317
+ - app/views/helena_administration/sessions/_form.html.slim
318
+ - app/views/helena_administration/sessions/edit.html.slim
319
+ - app/views/helena_administration/surveys/_form.html.slim
320
+ - app/views/helena_administration/surveys/edit.html.slim
321
+ - app/views/helena_administration/surveys/index.html.slim
322
+ - app/views/helena_administration/surveys/new.html.slim
323
+ - app/views/helena_administration/surveys/show.html.slim
324
+ - app/views/helena_administration/versions/_form.html.slim
325
+ - app/views/helena_administration/versions/edit.html.slim
326
+ - app/views/helena_administration/versions/new.html.slim
327
+ - app/views/helena_administration/versions/show.html.slim
328
+ - app/views/layouts/helena_administration/application.html.slim
329
+ - bin/rails
330
+ - config/compass.rb
331
+ - config/html5_rails.yml
332
+ - config/locales/en.yml
333
+ - config/locales/views/dashboard.en.yml
334
+ - config/locales/views/import_surveys.en.yml
335
+ - config/locales/views/question_groups.en.yml
336
+ - config/locales/views/questions.en.yml
337
+ - config/locales/views/surveys.en.yml
338
+ - config/locales/views/versions.en.yml
339
+ - config/routes.rb
340
+ - coverage/.resultset.json.lock
341
+ - coverage/assets/0.8.0/application.css
342
+ - coverage/assets/0.8.0/application.js
343
+ - coverage/assets/0.8.0/colorbox/border.png
344
+ - coverage/assets/0.8.0/colorbox/controls.png
345
+ - coverage/assets/0.8.0/colorbox/loading.gif
346
+ - coverage/assets/0.8.0/colorbox/loading_background.png
347
+ - coverage/assets/0.8.0/favicon_green.png
348
+ - coverage/assets/0.8.0/favicon_red.png
349
+ - coverage/assets/0.8.0/favicon_yellow.png
350
+ - coverage/assets/0.8.0/loading.gif
351
+ - coverage/assets/0.8.0/magnify.png
352
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png
353
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_flat_75_ffffff_40x100.png
354
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png
355
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_glass_65_ffffff_1x400.png
356
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_dadada_1x400.png
357
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png
358
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png
359
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png
360
+ - coverage/assets/0.8.0/smoothness/images/ui-icons_222222_256x240.png
361
+ - coverage/assets/0.8.0/smoothness/images/ui-icons_2e83ff_256x240.png
362
+ - coverage/assets/0.8.0/smoothness/images/ui-icons_454545_256x240.png
363
+ - coverage/assets/0.8.0/smoothness/images/ui-icons_888888_256x240.png
364
+ - coverage/assets/0.8.0/smoothness/images/ui-icons_cd0a0a_256x240.png
365
+ - helena_administration.gemspec
366
+ - lib/helena_administration.rb
367
+ - lib/helena_administration/engine.rb
368
+ - lib/helena_administration/version.rb
369
+ - lib/tasks/helena_administration_tasks.rake
370
+ - spec/controllers/dashboard_controller_spec.rb
371
+ - spec/controllers/sessions_controller_spec.rb
372
+ - spec/controllers/survey_controller_spec.rb
373
+ - spec/dummy/README.rdoc
374
+ - spec/dummy/Rakefile
375
+ - spec/dummy/app/assets/images/.keep
376
+ - spec/dummy/app/assets/javascripts/application.js
377
+ - spec/dummy/app/assets/stylesheets/application.css
378
+ - spec/dummy/app/controllers/application_controller.rb
379
+ - spec/dummy/app/controllers/concerns/.keep
380
+ - spec/dummy/app/decorators/controllers/helena_administration/application_controller_decorator.rb
381
+ - spec/dummy/app/helpers/application_helper.rb
382
+ - spec/dummy/app/mailers/.keep
383
+ - spec/dummy/app/models/.keep
384
+ - spec/dummy/app/models/concerns/.keep
385
+ - spec/dummy/app/views/layouts/application.html.erb
386
+ - spec/dummy/bin/bundle
387
+ - spec/dummy/bin/rails
388
+ - spec/dummy/bin/rake
389
+ - spec/dummy/config.ru
390
+ - spec/dummy/config/application.rb
391
+ - spec/dummy/config/boot.rb
392
+ - spec/dummy/config/environment.rb
393
+ - spec/dummy/config/environments/development.rb
394
+ - spec/dummy/config/environments/production.rb
395
+ - spec/dummy/config/environments/test.rb
396
+ - spec/dummy/config/initializers/assets.rb
397
+ - spec/dummy/config/initializers/backtrace_silencers.rb
398
+ - spec/dummy/config/initializers/cookies_serializer.rb
399
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
400
+ - spec/dummy/config/initializers/inflections.rb
401
+ - spec/dummy/config/initializers/mime_types.rb
402
+ - spec/dummy/config/initializers/session_store.rb
403
+ - spec/dummy/config/initializers/wrap_parameters.rb
404
+ - spec/dummy/config/locales/en.yml
405
+ - spec/dummy/config/mongoid.yml
406
+ - spec/dummy/config/routes.rb
407
+ - spec/dummy/config/secrets.yml
408
+ - spec/dummy/lib/assets/.keep
409
+ - spec/dummy/log/.keep
410
+ - spec/dummy/public/404.html
411
+ - spec/dummy/public/422.html
412
+ - spec/dummy/public/500.html
413
+ - spec/dummy/public/favicon.ico
414
+ - spec/features/dashboard/index.html.slim_spec.rb
415
+ - spec/features/question_groups/manage_question_groups_spec.rb
416
+ - spec/features/questions/manage_questions_spec.rb
417
+ - spec/features/questions/question_types/manage_checkbox_group_question_spec.rb
418
+ - spec/features/questions/question_types/manage_long_text_question_spec.rb
419
+ - spec/features/questions/question_types/manage_radio_group_question_spec.rb
420
+ - spec/features/questions/question_types/manage_radio_matrix_question_spec.rb
421
+ - spec/features/questions/question_types/manage_short_text_question_spec.rb
422
+ - spec/features/questions/question_types/manage_static_text_question_spec.rb
423
+ - spec/features/sessions/manage_sessions_spec.rb
424
+ - spec/features/surveys/manage_survey_spec.rb
425
+ - spec/features/versions/manage_version_spec.rb
426
+ - spec/helpers/applicatin_helper_spec.rb
427
+ - spec/rails_helper.rb
428
+ - spec/spec_helper.rb
429
+ - spec/support/.keep
430
+ homepage: https://github.com/gurix/helena_administration
431
+ licenses:
432
+ - GPL3
433
+ metadata: {}
434
+ post_install_message:
435
+ rdoc_options: []
436
+ require_paths:
437
+ - lib
438
+ required_ruby_version: !ruby/object:Gem::Requirement
439
+ requirements:
440
+ - - ">="
441
+ - !ruby/object:Gem::Version
442
+ version: '0'
443
+ required_rubygems_version: !ruby/object:Gem::Requirement
444
+ requirements:
445
+ - - ">="
446
+ - !ruby/object:Gem::Version
447
+ version: '0'
448
+ requirements: []
449
+ rubyforge_project:
450
+ rubygems_version: 2.2.2
451
+ signing_key:
452
+ specification_version: 4
453
+ summary: Helena Administration is a simple rails application that provides a user
454
+ interface to manage apps running with the Helena framework.
455
+ test_files: []