shell-spinner 1.0.2 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (476) hide show
  1. data/.gitignore +4 -22
  2. data/Gemfile +3 -90
  3. data/README.markdown +44 -0
  4. data/Rakefile +1 -7
  5. data/lib/shell-spinner.rb +59 -0
  6. data/lib/shell-spinner/version.rb +3 -0
  7. data/shell-spinner.gemspec +18 -0
  8. metadata +5 -470
  9. data/.rspec +0 -1
  10. data/.rvmrc +0 -53
  11. data/Gemfile.lock +0 -479
  12. data/README.md +0 -56
  13. data/app/admin/carriers.rb +0 -17
  14. data/app/admin/dashboards.rb +0 -31
  15. data/app/admin/interviews.rb +0 -77
  16. data/app/admin/users.rb +0 -40
  17. data/app/assets/images/icons/ajax-loader.gif +0 -0
  18. data/app/assets/images/icons/clear-results.png +0 -0
  19. data/app/assets/images/icons/clipboard.png +0 -0
  20. data/app/assets/images/icons/magnify.png +0 -0
  21. data/app/assets/images/icons/social/facebook.png +0 -0
  22. data/app/assets/images/icons/social/google.png +0 -0
  23. data/app/assets/images/icons/social/linkedin.png +0 -0
  24. data/app/assets/images/icons/social/small/facebook.png +0 -0
  25. data/app/assets/images/icons/social/small/google.png +0 -0
  26. data/app/assets/images/icons/social/small/linkedin.png +0 -0
  27. data/app/assets/images/icons/social/small/twitter.png +0 -0
  28. data/app/assets/images/icons/social/small/windowslive.png +0 -0
  29. data/app/assets/images/icons/social/small/yahoo.png +0 -0
  30. data/app/assets/images/icons/social/twitter.png +0 -0
  31. data/app/assets/images/icons/social/windowslive.png +0 -0
  32. data/app/assets/images/icons/social/yahoo.png +0 -0
  33. data/app/assets/images/logo.png +0 -0
  34. data/app/assets/javascripts/active_admin.js.coffee +0 -18
  35. data/app/assets/javascripts/admin/base.coffee +0 -0
  36. data/app/assets/javascripts/admin/interview_form.coffee +0 -95
  37. data/app/assets/javascripts/app/controllers/questions.js.coffee +0 -12
  38. data/app/assets/javascripts/app/index.js.coffee +0 -25
  39. data/app/assets/javascripts/app/lib/view.js.coffee +0 -3
  40. data/app/assets/javascripts/app/models/interview_template.js.coffee +0 -6
  41. data/app/assets/javascripts/app/models/question.js.coffee +0 -6
  42. data/app/assets/javascripts/app/views/questions/show.jst.hamljs +0 -2
  43. data/app/assets/javascripts/application.coffee +0 -48
  44. data/app/assets/javascripts/attachment_form.coffee +0 -31
  45. data/app/assets/javascripts/clipboard_control.coffee +0 -30
  46. data/app/assets/javascripts/invitation_form.coffee +0 -72
  47. data/app/assets/javascripts/recommendation_form.coffee +0 -19
  48. data/app/assets/javascripts/recommendations_list.coffee +0 -11
  49. data/app/assets/javascripts/search_contacts_form.coffee +0 -36
  50. data/app/assets/javascripts/templates/empty_recipients_list.tmpl +0 -1
  51. data/app/assets/javascripts/templates/recipient.tmpl +0 -5
  52. data/app/assets/stylesheets/active_admin.css.scss +0 -28
  53. data/app/assets/stylesheets/application.sass +0 -24
  54. data/app/assets/stylesheets/includes/_authorisation.sass +0 -29
  55. data/app/assets/stylesheets/includes/_bootstrap_tweaks.sass +0 -2
  56. data/app/assets/stylesheets/includes/_campaigns.sass +0 -44
  57. data/app/assets/stylesheets/includes/_controls.sass +0 -41
  58. data/app/assets/stylesheets/includes/_form.sass +0 -23
  59. data/app/assets/stylesheets/includes/_formatting.sass +0 -8
  60. data/app/assets/stylesheets/includes/_icons.sass +0 -31
  61. data/app/assets/stylesheets/includes/_interview.sass +0 -16
  62. data/app/assets/stylesheets/includes/_interview_form.sass +0 -170
  63. data/app/assets/stylesheets/includes/_interview_management.sass +0 -3
  64. data/app/assets/stylesheets/includes/_invitation_form.sass +0 -190
  65. data/app/assets/stylesheets/includes/_layout.sass +0 -69
  66. data/app/assets/stylesheets/includes/_mixins.sass +0 -42
  67. data/app/assets/stylesheets/includes/_navigation.sass +0 -16
  68. data/app/assets/stylesheets/includes/_recommendations.sass +0 -34
  69. data/app/concerns/authenticate_users.rb +0 -72
  70. data/app/concerns/conditional_redirect_after_signing_in.rb +0 -24
  71. data/app/concerns/eventable.rb +0 -16
  72. data/app/controllers/application_controller.rb +0 -31
  73. data/app/controllers/attachments_controller.rb +0 -36
  74. data/app/controllers/campaigns_controller.rb +0 -23
  75. data/app/controllers/contacts_controller.rb +0 -37
  76. data/app/controllers/interview_result_invitations_controller.rb +0 -21
  77. data/app/controllers/interview_results_controller.rb +0 -39
  78. data/app/controllers/interview_templates_controller.rb +0 -3
  79. data/app/controllers/pages_controller.rb +0 -6
  80. data/app/controllers/questions_controller.rb +0 -5
  81. data/app/controllers/recommendations_controller.rb +0 -64
  82. data/app/controllers/resources_controller.rb +0 -1
  83. data/app/controllers/users/omniauth_callbacks_controller.rb +0 -52
  84. data/app/helpers/admin/interview_helper.rb +0 -14
  85. data/app/helpers/answers_helper.rb +0 -8
  86. data/app/helpers/application_helper.rb +0 -1
  87. data/app/helpers/attachments_helper.rb +0 -5
  88. data/app/helpers/campaigns_helper.rb +0 -5
  89. data/app/helpers/layout_helper.rb +0 -5
  90. data/app/helpers/recommendation_helper.rb +0 -14
  91. data/app/mailers/invitation_mailer.rb +0 -13
  92. data/app/models/ability.rb +0 -23
  93. data/app/models/answer.rb +0 -36
  94. data/app/models/answer_choice.rb +0 -28
  95. data/app/models/attachment.rb +0 -34
  96. data/app/models/buying_attempt.rb +0 -31
  97. data/app/models/campaign.rb +0 -37
  98. data/app/models/carrier.rb +0 -30
  99. data/app/models/cell_phone_insurance_interview.rb +0 -17
  100. data/app/models/contact.rb +0 -31
  101. data/app/models/default_interview.rb +0 -17
  102. data/app/models/interesting_fact.rb +0 -30
  103. data/app/models/interview_result.rb +0 -65
  104. data/app/models/interview_template.rb +0 -52
  105. data/app/models/invitation.rb +0 -45
  106. data/app/models/invitation_identifier.rb +0 -29
  107. data/app/models/numeric_question.rb +0 -19
  108. data/app/models/one_correct_question.rb +0 -27
  109. data/app/models/possible_answer.rb +0 -54
  110. data/app/models/question.rb +0 -96
  111. data/app/models/recommendation.rb +0 -27
  112. data/app/models/scale_question.rb +0 -42
  113. data/app/models/user.rb +0 -102
  114. data/app/models/yes_no_question.rb +0 -18
  115. data/app/renderers/nav_links_renderer.rb +0 -10
  116. data/app/uploaders/attachement_uploader.rb +0 -55
  117. data/app/uploaders/file_uploader.rb +0 -20
  118. data/app/views/admin/interviews/_form.html.haml +0 -36
  119. data/app/views/admin/interviews/_possible_answer_fields.html.haml +0 -6
  120. data/app/views/admin/interviews/_question_fields.html.haml +0 -28
  121. data/app/views/admin/interviews/_wrapper_question_fields.html.haml +0 -2
  122. data/app/views/admin/interviews/numeric_question/_fields.html.haml +0 -7
  123. data/app/views/admin/interviews/one_correct_question/_answer_fields.html.haml +0 -6
  124. data/app/views/admin/interviews/one_correct_question/_fields.html.haml +0 -18
  125. data/app/views/admin/interviews/scale_question/_fields.html.haml +0 -7
  126. data/app/views/admin/interviews/scale_question/_start_end_values.html.haml +0 -6
  127. data/app/views/admin/interviews/yes_no_question/_fields.html.haml +0 -3
  128. data/app/views/attachments/_form.html.haml +0 -5
  129. data/app/views/attachments/_interesting_facts.html.haml +0 -11
  130. data/app/views/attachments/_resource.html.haml +0 -13
  131. data/app/views/attachments/buttons/_delete.html.haml +0 -3
  132. data/app/views/attachments/index.html.haml +0 -28
  133. data/app/views/attachments/new.html.haml +0 -1
  134. data/app/views/attachments/show.html.haml +0 -1
  135. data/app/views/campaigns/_form.html.haml +0 -7
  136. data/app/views/campaigns/_form_actions.html.haml +0 -4
  137. data/app/views/campaigns/edit.html.haml +0 -7
  138. data/app/views/campaigns/index.html.haml +0 -14
  139. data/app/views/campaigns/new.html.haml +0 -7
  140. data/app/views/campaigns/show.html.haml +0 -15
  141. data/app/views/contacts/_list.html.haml +0 -17
  142. data/app/views/contacts/_table.html.haml +0 -8
  143. data/app/views/contacts/search.html.haml +0 -1
  144. data/app/views/interesting_facts/_fact.html.haml +0 -4
  145. data/app/views/interview_result_invitations/new.html.haml +0 -29
  146. data/app/views/interview_results/_answer_choice.html.haml +0 -11
  147. data/app/views/interview_results/_form.html.haml +0 -16
  148. data/app/views/interview_results/_list.html.haml +0 -3
  149. data/app/views/interview_results/_numeric_question.html.haml +0 -3
  150. data/app/views/interview_results/_one_correct_question.html.haml +0 -3
  151. data/app/views/interview_results/_scale_question.html.haml +0 -6
  152. data/app/views/interview_results/_yes_no_question.html.haml +0 -6
  153. data/app/views/interview_results/index.html.haml +0 -2
  154. data/app/views/interview_results/new.html.haml +0 -4
  155. data/app/views/interview_results/numeric/_price.html.haml +0 -2
  156. data/app/views/interview_results/numeric/_simple_number.html.haml +0 -2
  157. data/app/views/interview_results/one_correct/_dropdown.html.haml +0 -1
  158. data/app/views/interview_results/one_correct/_radio.html.haml +0 -2
  159. data/app/views/interview_results/one_correct/_slider.html.haml +0 -2
  160. data/app/views/interview_results/show.html.haml +0 -24
  161. data/app/views/interview_templates/index.json.rabl +0 -6
  162. data/app/views/interview_templates/show.html.haml +0 -1
  163. data/app/views/layouts/_footer.haml +0 -9
  164. data/app/views/layouts/_header.haml +0 -21
  165. data/app/views/layouts/application.html.haml +0 -29
  166. data/app/views/pages/home.html.haml +0 -10
  167. data/app/views/questions/show.json.rabl +0 -2
  168. data/app/views/recommendations/new.html.haml +0 -19
  169. data/app/views/shared/_ask_facebook_friends.html.haml +0 -11
  170. data/app/views/shared/_ask_twitter_followers.html.haml +0 -13
  171. data/app/views/shared/_conditional_html_tags.html.haml +0 -8
  172. data/app/views/shared/_errors.html.haml +0 -2
  173. data/app/views/shared/_friends_recommendations.html.haml +0 -12
  174. data/app/views/shared/_import_contacts_links.html.haml +0 -10
  175. data/app/views/shared/_interview_widget.html.haml +0 -1
  176. data/app/views/shared/_login_social_buttons.html.haml +0 -19
  177. data/app/views/shared/_sign_in_modal.html.haml +0 -22
  178. data/app/views/shared/buttons/_create.html.haml +0 -3
  179. data/app/views/shared/buttons/_delete.html.haml +0 -3
  180. data/app/views/shared/buttons/_edit.html.haml +0 -3
  181. data/app/views/users/confirmations/new.html.haml +0 -11
  182. data/app/views/users/mailer/confirmation_instructions.html.haml +0 -4
  183. data/app/views/users/mailer/reset_password_instructions.html.haml +0 -6
  184. data/app/views/users/mailer/unlock_instructions.html.haml +0 -5
  185. data/app/views/users/passwords/edit.html.haml +0 -16
  186. data/app/views/users/passwords/new.html.haml +0 -9
  187. data/app/views/users/registrations/edit.html.haml +0 -27
  188. data/app/views/users/registrations/new.html.haml +0 -17
  189. data/app/views/users/sessions/new.html.haml +0 -14
  190. data/app/views/users/shared/_links.haml +0 -14
  191. data/app/views/users/unlocks/new.html.haml +0 -11
  192. data/config.ru +0 -4
  193. data/config/application.rb +0 -86
  194. data/config/boot.rb +0 -6
  195. data/config/bottom_navigation.rb +0 -13
  196. data/config/cucumber.yml +0 -8
  197. data/config/database.yml +0 -20
  198. data/config/environment.rb +0 -5
  199. data/config/environments/development.rb +0 -38
  200. data/config/environments/production.rb +0 -71
  201. data/config/environments/test.rb +0 -39
  202. data/config/exceptional.yml +0 -7
  203. data/config/initializers/active_admin.rb +0 -129
  204. data/config/initializers/backtrace_silencers.rb +0 -7
  205. data/config/initializers/contacts_monkey_patch.rb +0 -8
  206. data/config/initializers/core_extensions.rb +0 -1
  207. data/config/initializers/delayed_job_config.rb +0 -6
  208. data/config/initializers/devise.rb +0 -236
  209. data/config/initializers/formtastic.rb +0 -1
  210. data/config/initializers/generators.rb +0 -2
  211. data/config/initializers/inflections.rb +0 -15
  212. data/config/initializers/mime_types.rb +0 -5
  213. data/config/initializers/net_ssl_monkey_patch.rb +0 -22
  214. data/config/initializers/secret_token.rb +0 -7
  215. data/config/initializers/session_store.rb +0 -8
  216. data/config/initializers/settings.rb +0 -20
  217. data/config/initializers/setup_mailer.rb +0 -1
  218. data/config/initializers/wrap_parameters.rb +0 -14
  219. data/config/locales/devise.en.yml +0 -57
  220. data/config/locales/en.yml +0 -131
  221. data/config/navigation.rb +0 -25
  222. data/config/omniauth.yml +0 -54
  223. data/config/routes.rb +0 -41
  224. data/config/sendgrid.yml +0 -18
  225. data/config/sendgrid.yml.example +0 -18
  226. data/config/top_navigation.rb +0 -28
  227. data/data/.gitkeep +0 -0
  228. data/db/migrate/20120615102902_create_users.rb +0 -10
  229. data/db/migrate/20120615103611_add_devise_to_users.rb +0 -53
  230. data/db/migrate/20120615104044_add_facebook_id_to_users.rb +0 -5
  231. data/db/migrate/20120618051144_add_twitter_id_to_users.rb +0 -5
  232. data/db/migrate/20120618051522_add_google_id_to_users.rb +0 -5
  233. data/db/migrate/20120618083140_add_linkedin_id_to_users.rb +0 -5
  234. data/db/migrate/20120618094240_add_yahoo_id_to_users.rb +0 -5
  235. data/db/migrate/20120618102303_add_windowslive_id_to_users.rb +0 -5
  236. data/db/migrate/20120618121959_create_survey_templates.rb +0 -9
  237. data/db/migrate/20120618122120_create_survey_results.rb +0 -10
  238. data/db/migrate/20120618122346_create_questions.rb +0 -12
  239. data/db/migrate/20120618122442_create_answers.rb +0 -11
  240. data/db/migrate/20120618122551_create_question_results.rb +0 -10
  241. data/db/migrate/20120618123137_create_question_choices.rb +0 -10
  242. data/db/migrate/20120619142239_create_admin_notes.rb +0 -17
  243. data/db/migrate/20120619142255_move_admin_notes_to_comments.rb +0 -25
  244. data/db/migrate/20120619142315_add_fields_to_survey_template.rb +0 -6
  245. data/db/migrate/20120621124117_add_role_to_users.rb +0 -5
  246. data/db/migrate/20120625115344_rename_surveys_to_interviews.rb +0 -5
  247. data/db/migrate/20120625120613_rename_survey_relation_field.rb +0 -7
  248. data/db/migrate/20120625121230_rename_survey_results_to_interview_results.rb +0 -5
  249. data/db/migrate/20120625134119_add_type_field_to_interview_templates.rb +0 -5
  250. data/db/migrate/20120627104823_add_display_as_field_to_question.rb +0 -5
  251. data/db/migrate/20120628115724_rename_question_choices_to_answer_choices.rb +0 -5
  252. data/db/migrate/20120628124041_rename_answers_to_possible_answers.rb +0 -5
  253. data/db/migrate/20120628125515_rename_question_results_to_answers.rb +0 -5
  254. data/db/migrate/20120628125728_rename_questions_body_to_text.rb +0 -5
  255. data/db/migrate/20120628125839_rename_possible_answers_body_to_text.rb +0 -5
  256. data/db/migrate/20120628131944_fix_answer_choice_fields.rb +0 -6
  257. data/db/migrate/20120704144442_add_text_to_answer_choices.rb +0 -5
  258. data/db/migrate/20120706065743_add_body_from3rd_point_view_to_possible_answers.rb +0 -5
  259. data/db/migrate/20120706125136_change_facebook_id_and_twitter_id_type.rb +0 -11
  260. data/db/migrate/20120710070940_create_invitations.rb +0 -10
  261. data/db/migrate/20120710105054_create_delayed_jobs.rb +0 -22
  262. data/db/migrate/20120711084512_create_recommendations.rb +0 -14
  263. data/db/migrate/20120712092224_create_invitation_identifiers.rb +0 -8
  264. data/db/migrate/20120712130638_remove_user_id_from_recommendations.rb +0 -9
  265. data/db/migrate/20120712130711_remove_interview_template_id_from_recommendations.rb +0 -9
  266. data/db/migrate/20120712130744_add_invitation_id_to_recommendations.rb +0 -5
  267. data/db/migrate/20120716113646_create_contacts.rb +0 -12
  268. data/db/migrate/20120718135613_add_secret_to_interview_results.rb +0 -5
  269. data/db/migrate/20120718162312_fix_recommendation_relation.rb +0 -5
  270. data/db/migrate/20120724095308_add_state_to_interview_results.rb +0 -5
  271. data/db/migrate/20120724142439_create_carriers.rb +0 -11
  272. data/db/migrate/20120725071947_create_campaigns.rb +0 -11
  273. data/db/migrate/20120725083605_add_last_visited_path_to_users.rb +0 -5
  274. data/db/migrate/20120725085526_create_interesting_facts.rb +0 -13
  275. data/db/migrate/20120725131809_add_attachment_to_campaigns.rb +0 -5
  276. data/db/migrate/20120726115141_create_attachments.rb +0 -10
  277. data/db/migrate/20120726115644_extract_attachment_from_campaign.rb +0 -11
  278. data/db/migrate/20120726135706_create_buying_attempts.rb +0 -11
  279. data/db/migrate/20120727104402_add_campaign_id_to_interview_result.rb +0 -5
  280. data/db/migrate/20120730064404_change_interesting_facts.rb +0 -6
  281. data/db/migrate/20120730114402_add_attachment_id_to_interesting_facts.rb +0 -5
  282. data/db/migrate/20120730115758_remove_campaign_id_from_interesting_facts.rb +0 -9
  283. data/db/schema.rb +0 -201
  284. data/db/seeds.rb +0 -86
  285. data/doc/Ability.html +0 -221
  286. data/doc/Admin/InterviewHelper.html +0 -292
  287. data/doc/Answer.html +0 -241
  288. data/doc/AnswerChoice.html +0 -296
  289. data/doc/AnswersHelper.html +0 -194
  290. data/doc/ApplicationController.html +0 -318
  291. data/doc/ApplicationHelper.html +0 -119
  292. data/doc/CellPhoneInsuranceInterview.html +0 -192
  293. data/doc/Contact.html +0 -186
  294. data/doc/ContactsController.html +0 -283
  295. data/doc/CoreExtensions.html +0 -129
  296. data/doc/CoreExtensions/Object.html +0 -210
  297. data/doc/DefaultInterview.html +0 -192
  298. data/doc/DevelopmentMailInterceptor.html +0 -203
  299. data/doc/EmailValidator.html +0 -210
  300. data/doc/InterviewResult.html +0 -251
  301. data/doc/InterviewResultInvitationsController.html +0 -218
  302. data/doc/InterviewResultsController.html +0 -280
  303. data/doc/InterviewTemplate.html +0 -330
  304. data/doc/InterviewTemplatesController.html +0 -145
  305. data/doc/Invitation.html +0 -362
  306. data/doc/InvitationIdentifier.html +0 -287
  307. data/doc/InvitationMailer.html +0 -218
  308. data/doc/LayoutHelper.html +0 -188
  309. data/doc/NavLinksRenderer.html +0 -214
  310. data/doc/NumericQuestion.html +0 -196
  311. data/doc/OneCorrectQuestion.html +0 -269
  312. data/doc/PagesController.html +0 -206
  313. data/doc/PossibleAnswer.html +0 -627
  314. data/doc/Question.html +0 -620
  315. data/doc/Recommendation.html +0 -186
  316. data/doc/RecommendationHelper.html +0 -292
  317. data/doc/RecommendationsController.html +0 -230
  318. data/doc/ResourcesController.html +0 -141
  319. data/doc/ScaleQuestion.html +0 -525
  320. data/doc/SocialProvidersConfig.html +0 -240
  321. data/doc/User.html +0 -677
  322. data/doc/Users/OmniauthCallbacksController.html +0 -542
  323. data/doc/Wisemuv/Contacts.html +0 -188
  324. data/doc/Wisemuv/Contacts/Google/ControllerConcerns.html +0 -204
  325. data/doc/Wisemuv/Contacts/Google/ModelConcerns.html +0 -128
  326. data/doc/Wisemuv/Contacts/WindowsLive/ControllerConcerns.html +0 -204
  327. data/doc/Wisemuv/Contacts/WindowsLive/Grabber.html +0 -307
  328. data/doc/Wisemuv/Contacts/WindowsLive/ModelConcerns.html +0 -128
  329. data/doc/Wisemuv/Contacts/Yahoo/ControllerConcerns.html +0 -206
  330. data/doc/Wisemuv/Contacts/Yahoo/Grabber.html +0 -526
  331. data/doc/Wisemuv/Contacts/Yahoo/ModelConcerns.html +0 -128
  332. data/doc/YesNoQuestion.html +0 -209
  333. data/doc/_index.html +0 -509
  334. data/doc/carriers-campaigns-interviews-relationships.png +0 -0
  335. data/doc/class_list.html +0 -61
  336. data/doc/css/common.css +0 -1
  337. data/doc/css/cucumber.css +0 -222
  338. data/doc/css/full_list.css +0 -57
  339. data/doc/css/style.css +0 -328
  340. data/doc/feature_list.html +0 -513
  341. data/doc/file.README.html +0 -152
  342. data/doc/file_list.html +0 -63
  343. data/doc/frames.html +0 -28
  344. data/doc/index.html +0 -152
  345. data/doc/js/app.js +0 -214
  346. data/doc/js/cucumber.js +0 -305
  347. data/doc/js/full_list.js +0 -173
  348. data/doc/js/jquery.js +0 -4
  349. data/doc/method_list.html +0 -740
  350. data/doc/requirements.html +0 -196
  351. data/doc/requirements/features.html +0 -180
  352. data/doc/requirements/features/admin_manages_users.html +0 -1260
  353. data/doc/requirements/features/ask_friends_and_family.html +0 -918
  354. data/doc/requirements/features/create_interview.html +0 -1734
  355. data/doc/requirements/features/edit_interview.html +0 -832
  356. data/doc/requirements/features/pass_interview.html +0 -757
  357. data/doc/requirements/features/pulling_contacts.html +0 -718
  358. data/doc/requirements/features/questions_order_during_creating_interview.html +0 -126
  359. data/doc/requirements/features/sign_in.html +0 -1035
  360. data/doc/requirements/features/sign_up.html +0 -1948
  361. data/doc/requirements/step_transformers.html +0 -10401
  362. data/doc/requirements/tags.html +0 -670
  363. data/doc/requirements/tags/javascript.html +0 -245
  364. data/doc/requirements/tags/omniauth.html +0 -165
  365. data/doc/requirements/tags/users.html +0 -227
  366. data/doc/tag_list.html +0 -82
  367. data/doc/top-level-namespace.html +0 -128
  368. data/features/admin_manages_users.feature +0 -57
  369. data/features/ask_friends_and_family.feature +0 -39
  370. data/features/buying_tracking_code.feature +0 -11
  371. data/features/campaign_management.feature +0 -42
  372. data/features/create_interview.feature +0 -74
  373. data/features/edit_interview.feature +0 -40
  374. data/features/interesting_facts_parser.feature +0 -11
  375. data/features/interview_completion.feature +0 -6
  376. data/features/pass_interview.feature +0 -31
  377. data/features/pulling_contacts.feature +0 -21
  378. data/features/questions_order_during_creating_interview.feature +0 -2
  379. data/features/redirecting_after_signing_in.feature +0 -19
  380. data/features/sign_in.feature +0 -51
  381. data/features/sign_up.feature +0 -43
  382. data/features/step_definitions/admin_manages_users_steps.rb +0 -91
  383. data/features/step_definitions/ask_friends_and_family_steps.rb +0 -41
  384. data/features/step_definitions/buying_tracking_code_steps.rb +0 -15
  385. data/features/step_definitions/campaign_management_steps.rb +0 -50
  386. data/features/step_definitions/create_interview_steps.rb +0 -130
  387. data/features/step_definitions/edit_interview_steps.rb +0 -35
  388. data/features/step_definitions/interesting_facts_parser_steps.rb +0 -34
  389. data/features/step_definitions/interview_completion_steps.rb +0 -8
  390. data/features/step_definitions/interview_results_steps.rb +0 -7
  391. data/features/step_definitions/interview_steps.rb +0 -11
  392. data/features/step_definitions/pass_interview_steps.rb +0 -52
  393. data/features/step_definitions/pulling_contacts_steps.rb +0 -24
  394. data/features/step_definitions/redirecting_after_sign_in_steps.rb +0 -19
  395. data/features/step_definitions/sign_in_steps.rb +0 -110
  396. data/features/step_definitions/sign_up_steps.rb +0 -56
  397. data/features/support/env.rb +0 -23
  398. data/features/support/omniauth.rb +0 -69
  399. data/features/support/pickle.rb +0 -26
  400. data/features/support/uploading.rb +0 -6
  401. data/features/support/users.rb +0 -18
  402. data/features/upload-files/Life Insurance Facts-Final.xls +0 -0
  403. data/lib/assets/.gitkeep +0 -0
  404. data/lib/core_extensions/object.rb +0 -9
  405. data/lib/interceptors/development_mail_interceptor.rb +0 -5
  406. data/lib/social_providers_config.rb +0 -10
  407. data/lib/tasks/auto_annotate_models.rake +0 -22
  408. data/lib/tasks/cucumber.rake +0 -65
  409. data/lib/tasks/db/reseed.rake +0 -12
  410. data/lib/tasks/db/seed/interviews.rake +0 -14
  411. data/lib/tasks/db/truncate.rake +0 -19
  412. data/lib/tasks/yardoc.rake +0 -19
  413. data/lib/validators/email_validator.rb +0 -7
  414. data/lib/wisemuv/contacts.rb +0 -5
  415. data/lib/wisemuv/contacts/google/controller_concerns.rb +0 -19
  416. data/lib/wisemuv/contacts/google/model_concerns.rb +0 -17
  417. data/lib/wisemuv/contacts/windows_live/controller_concerns.rb +0 -23
  418. data/lib/wisemuv/contacts/windows_live/grabber.rb +0 -22
  419. data/lib/wisemuv/contacts/windows_live/model_concerns.rb +0 -17
  420. data/lib/wisemuv/contacts/yahoo/controller_concerns.rb +0 -29
  421. data/lib/wisemuv/contacts/yahoo/grabber.rb +0 -55
  422. data/lib/wisemuv/contacts/yahoo/model_concerns.rb +0 -17
  423. data/lib/wisemuv/interesting_facts_parser.rb +0 -65
  424. data/log/.gitkeep +0 -0
  425. data/public/403.html +0 -26
  426. data/public/404.html +0 -26
  427. data/public/422.html +0 -26
  428. data/public/500.html +0 -25
  429. data/public/ZeroClipboard10.swf +0 -0
  430. data/public/favicon.ico +0 -0
  431. data/public/robots.txt +0 -5
  432. data/script/cucumber +0 -10
  433. data/script/delayed_job +0 -5
  434. data/script/rails +0 -6
  435. data/spec/factories/answer.rb +0 -6
  436. data/spec/factories/answer_choice.rb +0 -6
  437. data/spec/factories/attachment.rb +0 -11
  438. data/spec/factories/buying_attempts.rb +0 -8
  439. data/spec/factories/campaign.rb +0 -8
  440. data/spec/factories/carrier.rb +0 -6
  441. data/spec/factories/contact.rb +0 -8
  442. data/spec/factories/interesting_facts.rb +0 -10
  443. data/spec/factories/interview_result.rb +0 -27
  444. data/spec/factories/interview_template.rb +0 -46
  445. data/spec/factories/invitation_identifier.rb +0 -8
  446. data/spec/factories/possible_answer.rb +0 -23
  447. data/spec/factories/question.rb +0 -55
  448. data/spec/factories/recommendation.rb +0 -10
  449. data/spec/factories/user.rb +0 -21
  450. data/spec/mailers/invitation_mailer_spec.rb +0 -5
  451. data/spec/models/answer_spec.rb +0 -5
  452. data/spec/models/attachment_spec.rb +0 -5
  453. data/spec/models/buying_attempt_spec.rb +0 -5
  454. data/spec/models/campaign_spec.rb +0 -5
  455. data/spec/models/carrier_spec.rb +0 -5
  456. data/spec/models/contact_spec.rb +0 -5
  457. data/spec/models/interesting_fact_spec.rb +0 -5
  458. data/spec/models/invitation_identifier_spec.rb +0 -5
  459. data/spec/models/question_choice_spec.rb +0 -5
  460. data/spec/models/question_result_spec.rb +0 -5
  461. data/spec/models/question_spec.rb +0 -5
  462. data/spec/models/recommendation_spec.rb +0 -5
  463. data/spec/models/survey_result_spec.rb +0 -5
  464. data/spec/models/survey_template_spec.rb +0 -5
  465. data/spec/spec_helper.rb +0 -32
  466. data/vendor/.rvmrc +0 -53
  467. data/vendor/Gemfile +0 -60
  468. data/vendor/Gemfile.lock +0 -166
  469. data/vendor/README.rdoc +0 -261
  470. data/vendor/Rakefile +0 -7
  471. data/vendor/assets/javascripts/ZeroClipboard.js +0 -316
  472. data/vendor/assets/javascripts/selectToUISlider.js +0 -240
  473. data/vendor/assets/javascripts/underscore.string.js +0 -566
  474. data/vendor/assets/stylesheets/.gitkeep +0 -0
  475. data/vendor/config.ru +0 -4
  476. data/vendor/plugins/.gitkeep +0 -0
@@ -1,11 +0,0 @@
1
- Feature: interesting facts could be imported to any campaign through cvs or excel files
2
-
3
- Scenario: parse sample excel spreadsheet with interesting facts
4
- When I parse sample excel spreadsheet
5
- Then there is about 62 interesting facts should be found
6
- And each of the found interesting fact should be valid
7
-
8
- Scenario: add excel attachment to the campaign and check interesting facts
9
- Given a "Be quite and drive far away" campaign exists
10
- When I attach sample excel spreadsheet to the "Be quite and drive far away" campaign
11
- Then "Be quite and drive far away" campaign should have at least 62 interesting facts
@@ -1,6 +0,0 @@
1
- Feature: after answering last question interview should be completed
2
-
3
- Scenario: answer all questions and ensure that interview state is changed to completed
4
- Given interview "Interview with the Vampire" exists
5
- When I answered last question of the "Interview with the Vampire" interview
6
- Then interview "Interview with the Vampire" should be completed by me
@@ -1,31 +0,0 @@
1
- @javascript @users
2
- Feature: A user should be able to pass an interview if it exists
3
-
4
- Background:
5
- Given I sign in as a regular user
6
-
7
- Scenario: If a user answers all questions new interview result must be created
8
- Given interview "Interview with the Vampire" with yes-no questions exists
9
- When I visit home page
10
- Then I should see link to pass the interview
11
-
12
- When I follow the link to pass the interview
13
- Then I should see interview's form
14
-
15
- When I answer all questions
16
- And submit interview form
17
- Then I should see that my interview result has been saved
18
-
19
- Scenario: If a user answers not all questions new interview result mustn't be created
20
- Given interview "Interview with the Vampire" with yes-no questions exists
21
- When I visit pass "Interview with the Vampire" interview page
22
- And submit interview form
23
- Then I should see validation errors
24
-
25
- Scenario: An interview can consist of questions of different display types
26
- Given interview "Interview with the Vampire" with questions of different types exits
27
- When I visit pass "Interview with the Vampire" interview page
28
- Then I should see radio buttons
29
- And I should see select
30
- And I should see numeric field
31
- And I should see slider
@@ -1,21 +0,0 @@
1
- @javascript @users
2
- Feature: as wisemuv user I can pull contacts from different mail providers
3
-
4
- Scenario: ask for a contacts without sign in and ensure that I will be redirected to the authentication page
5
- When I ask for a contacts from "google"
6
- Then I should be redirected to the sign in page
7
-
8
- Scenario: ask for unknown provider and ensure that I will be redirected to 404 page
9
- Given I sign in as a regular user
10
- When I ask for a contacts from "foobar"
11
- Then I should see that this page cannot be found
12
-
13
- Scenario Outline: ask for contacts and check that I will be redirected to the provider authentication page
14
- Given I sign in as a regular user
15
- When I ask for a contacts from "<provider>"
16
- Then I should be redirected to the <provider> authentication page
17
- Examples:
18
- | provider |
19
- | google |
20
- | yahoo |
21
- | windowslive |
@@ -1,2 +0,0 @@
1
- @users @javascript
2
- Feature: as admin I can create interview and set questions order
@@ -1,19 +0,0 @@
1
- @users
2
- Feature: after signing in user could be redirected to the different urls, which depends on some conditions
3
-
4
- Scenario: user should be redirected to the latest uncompleted interview if he has any of them
5
- Given interview "Interview with the Vampire" exists
6
- And regular user uncompleted interview "Interview with the Vampire"
7
- When I sign in as a regular user
8
- #Then I should be redirected to the "Interview with the Vampire" interview path
9
-
10
- Scenario: user should be redirected to the latest completed interview if he has any of them and there are no any uncompleted interviews
11
- Given interview "Interview with the Vampire" exists
12
- And regular user completed interview "Interview with the Vampire"
13
- When I sign in as a regular user
14
- Then I should be redirected to the "Interview with the Vampire" interview results
15
-
16
- Scenario: user should be redirected to the latest completed interview if he has any of them and there are no any uncompleted interviews
17
- Given interview "Interview with the Vampire" exists
18
- When I sign in as a regular user
19
- Then I should be redirected to the homepage
@@ -1,51 +0,0 @@
1
- Feature: A user should be able to sign in via different OAuth providers, wisemuv credentials or sign up directly
2
-
3
- @javascript
4
- Scenario: A user should see modal window to have possibility to sign in
5
- Given I sign out
6
- When I visit home page
7
- Then I should see sign in link
8
-
9
- When I click sign in link
10
- Then I should see modal window
11
-
12
-
13
- @users @javascript
14
- Scenario: A regular user successfully signs in with Wisemuv credentials
15
- Given I sign out
16
- When I open modal window to sign in
17
- And provide correct email address
18
- And provide correct password
19
- And submit login form
20
- Then I should see that I'm successfully authenticated as regular user
21
-
22
-
23
- @users @javascript
24
- Scenario: An admin user successfully signs in with Wisemuv credentials
25
- Given I sign out
26
- When I open modal window to sign in
27
- And provide correct admin email address
28
- And provide correct admin password
29
- And submit login form
30
- Then I should see that I'm successfully authenticated as admin user
31
-
32
-
33
- @omniauth
34
- Scenario: A user successfully signs in with different OAuth providers
35
- When I login via Facebook
36
- Then I should see that I has logged in via Facebook
37
-
38
- When I login via Twitter
39
- Then I should see that I has logged in via Twitter
40
-
41
- When I login via Google
42
- Then I should see that I has logged in via Google
43
-
44
- When I login via Linked In
45
- Then I should see that I has logged in via Linked In
46
-
47
- When I login via Windows Live ID
48
- Then I should see that I has logged in via Windows Live ID
49
-
50
- When I login via Yahoo!
51
- Then I should see that I has logged in via Yahoo!
@@ -1,43 +0,0 @@
1
- Feature: A user should be able to sign up on Wisemuv site
2
-
3
- @javascript
4
- Scenario: A user should be redirected to sign up page from modal window
5
- Given I sign out
6
- When I open modal window to sign in
7
- And click sign up link
8
- Then I should see sign up form
9
-
10
-
11
- Scenario Outline: Creating a new account
12
- Given I sign out
13
- When I visit sign up page
14
- And fill first name with "<first_name>"
15
- And fill last name with "<last_name>"
16
- And I fill email with "<email>"
17
- And I fill password with "<password>"
18
- And I fill password confirmation with "<password>"
19
- And submit sign up form
20
- Then I should see that I'm successfully signed up
21
-
22
- Examples:
23
- | email | password | first_name | last_name |
24
- | arnold@schwarzenegger.com | wisemuv | Arnold | Schwarzenegger |
25
- | kevin@spacey.com | Wis3muv | Kevin | Spacey |
26
-
27
-
28
- Scenario Outline: A user must provide valid data to be successfully registered
29
- Given I sign out
30
- When I visit sign up page
31
- And fill first name with "<first_name>"
32
- And fill last name with "<last_name>"
33
- And I fill email with "<email>"
34
- And I fill password with "<password>"
35
- And I fill password confirmation with "<password_confirmation>"
36
- And submit sign up form
37
- Then I should see that I'm not signed up
38
-
39
- Examples:
40
- | email | password | password_confirmation | first_name | last_name |
41
- | invalid_email | wisemuv | wisemuv | Arnold | Schwarzenegger |
42
- | valid@email.com | wisemuv | mismatch_password | Kevin | Spacey |
43
- | valid@email.com | wisemuv | wisemuv | | |
@@ -1,91 +0,0 @@
1
- When /^(?:|I )go to the edit "(.*)" user page$/ do |email|
2
- visit edit_admin_user_path User.find_by_email(email)
3
- end
4
-
5
- When /^(?:|I )set user role as manager$/ do
6
- select 'Manager', :from => 'user_role'
7
- end
8
-
9
- When /^(?:|I )submit user edit form$/ do
10
- click_button 'Update User'
11
- end
12
-
13
- When /^(?:|I )go to the admin users page$/ do
14
- visit admin_users_path
15
- end
16
-
17
- When /^(?:|I )click button to create new user$/ do
18
- click_link 'New User'
19
- end
20
-
21
- When /^(?:|I )enter first name as "(.*)"$/ do |first_name|
22
- fill_in 'First name', :with => first_name
23
- end
24
-
25
- When /^(?:|I )enter last name as "(.*)"$/ do |last_name|
26
- fill_in 'Last name', :with => last_name
27
- end
28
-
29
- When /^(?:|I )enter email as "(.*)"$/ do |email|
30
- fill_in 'Email', :with => email
31
- end
32
-
33
- When /^(?:|I )set password to "(.*)"$/ do |password|
34
- fill_in 'Password', :with => password
35
- end
36
-
37
- When /^(?:|I )set password confirmation to "(.*)"$/ do |password_confirmation|
38
- fill_in 'Password confirmation', :with => password_confirmation
39
- end
40
-
41
- When /^(?:|I )submit edit user form$/ do
42
- click_button 'Create User'
43
- end
44
-
45
- When /^(?:|I )click link to delete "(.*)" user$/ do |email|
46
- find('tr', :text => email).click_link 'Delete'
47
- end
48
-
49
- When /^(?:|I )enter "(.*)" in email filter$/ do |part_of_email|
50
- fill_in 'Search Email', :with => part_of_email
51
- end
52
-
53
- When /^(?:|I )press filter button$/ do
54
- click_button 'Filter'
55
- end
56
-
57
- Then /^(?:|I )should see that user has been successfully updated$/ do
58
- page.should have_content('User was successfully updated')
59
- end
60
-
61
- Then /^"(.*)" must be a manager$/ do |email|
62
- User.find_by_email(email).role.should be_eql('manager')
63
- end
64
-
65
- Then /^(?:|I )should see user edit form$/ do
66
- page.should have_css('#new_user')
67
- end
68
-
69
- Then /^(?:|I )should see that user has been successfully created$/ do
70
- page.should have_content('User was successfully created')
71
- end
72
-
73
- Then /^(?:|I )should see that user has been destroyed$/ do
74
- page.should have_content('User was successfully destroyed')
75
- end
76
-
77
- Then /^user "(.*)" should not exist(?:| anymore)$/ do |email|
78
- User.find_by_email(email).should be_nil
79
- end
80
-
81
- Then /^user "(.*)" should exist$/ do |email|
82
- User.find_by_email(email).should_not be_nil
83
- end
84
-
85
- Then /^(?:|I )should see table with "(.*)" user$/ do |email|
86
- page.should have_selector('td', :text => email)
87
- end
88
-
89
- Then /^users table should display "(.*?)" user(?:|s)$/ do |count|
90
- page.should have_css('#users tbody tr', :count => count)
91
- end
@@ -1,41 +0,0 @@
1
- Then /^I should see link to ask friends and family$/ do
2
- page.should have_css('.b-ask-friends-button')
3
- end
4
-
5
- When /^I follow the link to ask friends and family$/ do
6
- find('.b-ask-friends-button').click
7
- end
8
-
9
- Then /^I should be on page which allows me to send invitations$/ do
10
- page.should have_css('.l-invitation-form')
11
- end
12
-
13
- When /^push the invitation submit button$/ do
14
- find('.submit-button').click
15
- end
16
-
17
- Then /^"(.*?)" should have (\d+) incoming email$/ do |arg1, arg2|
18
- pending # express the regexp above with the code you wish you had
19
- end
20
-
21
- Then /^invitation should be created$/ do
22
- Invitation.should have(1).record
23
- end
24
-
25
- When /^I fill recipients email with "(.*?)"$/ do |email|
26
- fill_in 'invitation_recipients', :with => email
27
- end
28
-
29
- Then /^I should see message about success invitation creation$/ do
30
- page.should have_content("success")
31
- end
32
-
33
- When /^push button to add this email to list$/ do
34
- find('.b-add-recipient-button').click
35
- end
36
-
37
- Then /^this email should appear in the contacts list$/ do
38
- pending # express the regexp above with the code you wish you had
39
- end
40
-
41
-
@@ -1,15 +0,0 @@
1
- Given /^I am on the "(.*?)" interview results page$/ do |interview_title|
2
- visit interview_result_path(InterviewTemplate.find_by_title(interview_title), InterviewResult.first)
3
- end
4
-
5
- When /^I click buy button$/ do
6
- find('.b-buy-button').click
7
- end
8
-
9
- Then /^I should be redirected to carrier home page$/ do
10
- page.should have_content('acme')
11
- end
12
-
13
- Then /^current page should contain tracking key$/ do
14
- current_url.to_s.should =~ /\?key\=/
15
- end
@@ -1,50 +0,0 @@
1
- When /^(?:|I )go to the campaigns page$/ do
2
- visit campaigns_path
3
- end
4
-
5
- When /^(?:|I )follow link to create campaign$/ do
6
- click_link 'create one'
7
- end
8
-
9
- When /^(?:|I )populate title with "(.*?)"$/ do |text|
10
- fill_in 'campaign_title', :with => text
11
- end
12
-
13
- When /^(?:|I )select carrier as "(.*?)"$/ do |carrier|
14
- page.select carrier, :from => 'campaign_carrier_id'
15
- end
16
-
17
- When /^(?:|I )select interview as "(.*?)"$/ do |interview|
18
- interview = InterviewTemplate.find_by_title(interview)
19
- page.select I18n.t("enumerize.interview_template.type.#{interview.type}") + ": #{interview.title}", :from => 'campaign_interview_template_id'
20
- end
21
-
22
- Given /^carrier "(.*?)" exists$/ do |name|
23
- FactoryGirl.create :carrier, :name => name
24
- end
25
-
26
- When /^(?:|I )submit campaign form$/ do
27
- page.execute_script("$('.submit-button').click()")
28
- end
29
-
30
- When /^(?:|I )upload interesting facts file$/ do
31
- page.attach_file 'attachment_file', Rails.root.join('features/upload-files/Life Insurance Facts-Final.xls')
32
- sleep 5
33
- end
34
-
35
- Then /^(?:|I )should see link to create campaign$/ do
36
- page.should have_link('create one')
37
- end
38
-
39
- Then /^(?:|I )should see campaign form$/ do
40
- page.should have_css('.b-campaign-form')
41
- page.should have_css('.b-attachment-form')
42
- end
43
-
44
- Then /^(?:|I )should see that campaign has been created$/ do
45
- page.should have_content('Campaign was successfully created')
46
- end
47
-
48
- Then /^an attachment should be created$/ do
49
- Attachment.count.should == 1
50
- end
@@ -1,130 +0,0 @@
1
- Given /^(?:|I )sign in as an admin$/ do
2
- step 'I sign out'
3
- step 'I open modal window to sign in'
4
- step 'provide correct admin email address'
5
- step 'provide correct admin password'
6
- step 'submit login form'
7
- end
8
-
9
- Given /^(?:|I )sign in as a regular user/ do
10
- step 'I sign out'
11
- step 'I open modal window to sign in'
12
- step 'provide correct email address'
13
- step 'provide correct password'
14
- step 'submit login form'
15
- end
16
-
17
- Given /^(?:|I )sign in as a manager/ do
18
- step 'I sign out'
19
- step 'I open modal window to sign in'
20
- step 'provide correct manager email address'
21
- step 'provide correct manager password'
22
- step 'submit login form'
23
- end
24
-
25
- When /^(?:|I )go to the interviews administration page$/ do
26
- visit admin_interviews_path
27
- end
28
-
29
- When /^(?:|I )click button to create new interview$/ do
30
- click_link 'New Interview'
31
- end
32
-
33
- When /^(?:|I )populate interview title with "(.*?)"$/ do |title|
34
- fill_in 'Title', :with => title
35
- end
36
-
37
- When /^(?:|I )populate first question title with "(.*?)"$/ do |text|
38
- fill_in 'interview_template_questions_attributes_0_text', :with => text
39
- end
40
-
41
- When /^(?:|I )point that want answers to be shown as radio buttons$/ do
42
- choose 'as radio group'
43
- end
44
-
45
- When /^(?:|I )populate first answer with "(.*?)"$/ do |text|
46
- fill_in 'interview_template_questions_attributes_1_possible_answers_attributes_0_text', :with => text
47
- end
48
-
49
- When /^(?:|I )populate second answer with "(.*?)"$/ do |text|
50
- fill_in 'interview_template_questions_attributes_1_possible_answers_attributes_1_text', :with => text
51
- end
52
-
53
- When /^(?:|I )submit interview creation form$/ do
54
- page.execute_script("$('.btn.btn-primary.btn-large.btn-submit').click()")
55
- end
56
-
57
- When /^(?:|I )go to the interview creation page$/ do
58
- visit new_admin_interview_path
59
- end
60
-
61
- When /^(?:|I )select first question type as One Correct$/ do
62
- select 'Multiple Choice', :from => 'interview_template_questions_attributes_0_type'
63
- end
64
-
65
- When /^(?:|I )select first question type as Yes No$/ do
66
- select 'Yes / No', :from => 'interview_template_questions_attributes_0_type'
67
- end
68
-
69
- When /^(?:|I )select first question type as Scale$/ do
70
- pending
71
- end
72
-
73
- When /^(?:|I )select first question type as Numeric/ do
74
- select 'Numeric', :from => 'interview_template_questions_attributes_0_type'
75
- end
76
-
77
- When /^(?:|I )fill first question with sample data/ do
78
- step 'populate first question title with "Foo?"'
79
- step 'point that want answers to be shown as radio buttons'
80
- step 'populate first answer with "Yes"'
81
- step 'populate second answer with "No"'
82
- end
83
-
84
- Then /^(?:|I )should see the button to create new interview$/ do
85
- page.should have_css('.action_item')
86
- page.should have_link('New Interview')
87
- end
88
-
89
- Then /^(?:|I )should see the interview editing form$/ do
90
- page.should have_css('.b-interview-form')
91
- end
92
-
93
- Then /^(?:|I )should see that interview has been created$/ do
94
- page.should have_content('Interview template was successfully created')
95
- end
96
-
97
- Then /^(?:|I )should see interview form with validation errors$/ do
98
- page.should have_css('.alert.alert-error')
99
- page.should have_css('.inline-errors')
100
- end
101
-
102
- Then /^question of one correct type should exist$/ do
103
- Question.first.type.should be_eql('OneCorrectQuestion')
104
- end
105
-
106
- Then /^question of yes-no type should exist$/ do
107
- Question.first.type.should be_eql('YesNoQuestion')
108
- end
109
-
110
- Then /^question of scale type should exist$/ do
111
- Question.first.type.should be_eql('ScaleQuestion')
112
- end
113
-
114
- Then /^question of numeric type should exist$/ do
115
- Question.first.type.should be_eql('NumericQuestion')
116
- end
117
-
118
- Then /^(?:|I )should see authentication error$/ do
119
- page.should have_css('.alert.alert-error')
120
- page.should have_content('You need to sign in or sign up before continuing')
121
- end
122
-
123
- Then /^(?:|I )should see restriction error$/ do
124
- page.should have_content('Restricted area!')
125
- end
126
-
127
- Then /^(?:|I )should see manager access required error$/ do
128
- page.should have_css('.alert.alert-error')
129
- page.should have_content('You must be a manager to perform this action.')
130
- end