mumuki-laboratory 7.0.12 → 7.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (497) hide show
  1. checksums.yaml +4 -4
  2. data/lib/mumuki/laboratory/controllers/results_rendering.rb +20 -13
  3. data/lib/mumuki/laboratory/version.rb +1 -1
  4. data/spec/controllers/exercise_solutions_controller_spec.rb +39 -10
  5. data/spec/dummy/public/error/401.svg +218 -0
  6. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/AUTHORS +0 -0
  7. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/Gemfile +0 -0
  8. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/LICENSE +0 -0
  9. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/README.md +19 -15
  10. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/Rakefile +0 -0
  11. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/api_client.rb +0 -0
  12. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/application_record.rb +2 -2
  13. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/assignment.rb +0 -0
  14. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/book.rb +5 -12
  15. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/chapter.rb +0 -0
  16. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/complement.rb +0 -0
  17. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/assistable.rb +0 -0
  18. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/contextualization.rb +0 -0
  19. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/friendly_name.rb +0 -0
  20. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/guide_container.rb +1 -0
  21. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/navigation/parent_navigation.rb +0 -0
  22. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/navigation/siblings_navigation.rb +0 -0
  23. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/navigation/terminal_navigation.rb +0 -0
  24. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/submittable/confirmable.rb +0 -0
  25. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/submittable/queriable.rb +0 -0
  26. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/submittable/questionable.rb +0 -0
  27. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/submittable/solvable.rb +0 -0
  28. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/submittable/submittable.rb +0 -0
  29. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/submittable/triable.rb +0 -0
  30. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_assignments.rb +0 -0
  31. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_case_insensitive_search.rb +0 -0
  32. data/vendor/bundle/ruby/2.3.0/bundler/gems/mumuki-domain-925adf85cca8/app/models/concerns/with_content.rb +13 -0
  33. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_description.rb +0 -0
  34. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_discussion_creation/subscription.rb +0 -0
  35. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_discussion_creation/upvote.rb +0 -0
  36. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_discussion_creation.rb +0 -0
  37. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_discussion_status.rb +0 -0
  38. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_discussions.rb +0 -0
  39. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_editor.rb +0 -0
  40. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_expectations.rb +0 -0
  41. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_language.rb +0 -0
  42. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_layout.rb +0 -0
  43. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_locale.rb +0 -0
  44. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_messages.rb +0 -0
  45. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_name.rb +0 -0
  46. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_number.rb +0 -0
  47. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_profile.rb +0 -0
  48. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_randomizations.rb +0 -0
  49. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_reminders.rb +0 -0
  50. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_scoped_queries/filter.rb +0 -0
  51. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_scoped_queries/page.rb +0 -0
  52. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_scoped_queries/sort.rb +0 -0
  53. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_scoped_queries.rb +0 -0
  54. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_slug.rb +0 -0
  55. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_usages.rb +15 -0
  56. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/concerns/with_user_navigation.rb +0 -0
  57. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/content.rb +0 -0
  58. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/course.rb +0 -0
  59. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/discussion.rb +0 -0
  60. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/event.rb +0 -0
  61. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/exam.rb +0 -0
  62. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/exam_authorization.rb +0 -0
  63. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/exercise/challenge.rb +0 -0
  64. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/exercise/interactive.rb +0 -0
  65. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/exercise/playground.rb +0 -0
  66. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/exercise/problem.rb +0 -0
  67. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/exercise/queriable_challenge.rb +0 -0
  68. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/exercise/reading.rb +0 -0
  69. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/exercise.rb +1 -1
  70. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/guide.rb +2 -0
  71. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/invitation.rb +0 -0
  72. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/language.rb +0 -0
  73. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/lesson.rb +0 -0
  74. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/message.rb +0 -0
  75. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/organization.rb +0 -0
  76. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/stats.rb +0 -0
  77. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/subscription.rb +0 -0
  78. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/topic.rb +2 -2
  79. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/topic_container.rb +3 -1
  80. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/upvote.rb +0 -0
  81. data/vendor/bundle/ruby/2.3.0/bundler/gems/mumuki-domain-925adf85cca8/app/models/usage.rb +33 -0
  82. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/user.rb +0 -0
  83. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/app/models/with_stats.rb +0 -0
  84. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/bin/rails +0 -0
  85. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141120231135_create_exercises.rb +0 -0
  86. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141120231735_create_submissions.rb +0 -0
  87. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141121001134_add_status_to_submission.rb +0 -0
  88. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141121013100_add_result_to_submission.rb +0 -0
  89. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141121122921_add_language_to_exercise.rb +0 -0
  90. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141124023403_create_users.rb +0 -0
  91. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141124032114_add_user_to_submission.rb +0 -0
  92. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141207235356_add_submissions_count_to_exercise.rb +0 -0
  93. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141208005050_add_author_to_exercise.rb +0 -0
  94. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141208005125_rename_user_to_submitter.rb +0 -0
  95. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141212044717_acts_as_taggable_on_migration.acts_as_taggable_on_engine.rb +0 -0
  96. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141212044718_add_missing_unique_indices.acts_as_taggable_on_engine.rb +0 -0
  97. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141212044719_add_taggings_counter_cache_to_tags.acts_as_taggable_on_engine.rb +0 -0
  98. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141212044720_add_missing_taggable_index.acts_as_taggable_on_engine.rb +0 -0
  99. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141221213109_create_exercise_repos.rb +0 -0
  100. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141221215035_add_origin_to_exercise.rb +0 -0
  101. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141225034553_rename_exercise_repo_to_guide.rb +0 -0
  102. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141225143218_rename_github_url_to_github_repository.rb +0 -0
  103. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141225195510_create_imports.rb +0 -0
  104. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141225211350_add_status_to_import.rb +0 -0
  105. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141226010922_add_result_to_import.rb +0 -0
  106. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141228151351_change_exercise_description_to_text.rb +0 -0
  107. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141231074400_create_languages.rb +0 -0
  108. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141231191842_change_language_column_type.rb +0 -0
  109. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141231192030_rename_author_to_plugin_author.rb +0 -0
  110. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20141231234940_increment_language_id.rb +0 -0
  111. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150108014005_add_locale_to_exercise.rb +0 -0
  112. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150111160450_add_uniques_to_languages.rb +0 -0
  113. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150125042217_add_test_syntax_hint_to_language.rb +0 -0
  114. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150125051529_add_hint_to_exercise.rb +0 -0
  115. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150126213310_devise_create_admin_users.rb +0 -0
  116. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150126213316_create_active_admin_comments.rb +0 -0
  117. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150315072037_add_description_to_guide.rb +0 -0
  118. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150317052723_remove_language_author.rb +0 -0
  119. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150317053307_remove_language_hint.rb +0 -0
  120. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150321150030_add_extra_code_to_exercise.rb +0 -0
  121. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150328211331_create_expectations.rb +0 -0
  122. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150329163753_add_email_to_user.rb +0 -0
  123. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150330020553_add_expectation_results_to_submission.rb +0 -0
  124. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150405231013_create_exports.rb +0 -0
  125. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150405232603_add_default_guide_to_user.rb +0 -0
  126. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150406020152_add_last_submission_date_to_user.rb +0 -0
  127. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150407225356_add_unique_index_to_users.rb +0 -0
  128. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150408020712_add_status_to_export.rb +0 -0
  129. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150408022654_add_commiter_to_export.rb +0 -0
  130. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150411215351_change_guide_description_to_text.rb +0 -0
  131. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150412042959_add_committer_to_import.rb +0 -0
  132. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150412201651_remove_default_guide_from_user.rb +0 -0
  133. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150415053559_add_image_url_to_user.rb +0 -0
  134. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150415211341_add_position_to_exercise.rb +0 -0
  135. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150415234515_create_relationships.rb +0 -0
  136. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150417052238_add_original_id_format_to_guide.rb +0 -0
  137. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150418055334_add_locale_and_language_to_guide.rb +0 -0
  138. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150424180136_add_guides_users_association_tables.rb +0 -0
  139. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150428195229_add_guides_suggestions.rb +0 -0
  140. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150507215646_remove_relationship.rb +0 -0
  141. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150508015148_create_api_tokens.rb +0 -0
  142. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150509191428_add_name_to_token.rb +0 -0
  143. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150512235847_add_feedback_to_submission.rb +0 -0
  144. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150513203636_create_categories.rb +0 -0
  145. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150513204102_create_starting_points.rb +0 -0
  146. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150517074730_add_extra_code_to_guide.rb +0 -0
  147. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150518174912_add_language_output_visibility_flag.rb +0 -0
  148. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150518185508_add_content_type_to_language.rb +0 -0
  149. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150519131033_set_default_locale_for_guide.rb +0 -0
  150. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150519174628_remove_language_name_uniq.rb +0 -0
  151. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150519220307_rename_api_token_columns.rb +0 -0
  152. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150520011404_convert_starting_point_into_path.rb +0 -0
  153. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150529135324_add_corollary_to_guide.rb +0 -0
  154. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150529141430_add_corollary_to_exercise.rb +0 -0
  155. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150531164450_add_test_extension_to_language.rb +0 -0
  156. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150603003459_remove_language_extension_uniq.rb +0 -0
  157. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150603020457_remove_guide_name_uniq.rb +0 -0
  158. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150605065543_add_highlight_mode.rb +0 -0
  159. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150614173852_add_learning_flag.rb +0 -0
  160. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150614180512_add_beta_flag.rb +0 -0
  161. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150614191257_add_last_exercise.rb +0 -0
  162. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150620181839_add_layout_to_exercise.rb +0 -0
  163. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150701030644_add_unique_to_language_name_index.rb +0 -0
  164. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150701212609_add_test_results_to_submission.rb +0 -0
  165. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150708212022_add_position_to_category.rb +0 -0
  166. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150708212836_change_category_description_to_text.rb +0 -0
  167. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150713120916_add_expectations_column_to_exercise.rb +0 -0
  168. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150714000532_remove_expectations_relation.rb +0 -0
  169. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150722003532_create_event_subscribers.rb +0 -0
  170. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150722030820_create_solutions.rb +0 -0
  171. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150722142019_add_submissions_count_to_solution.rb +0 -0
  172. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150723052640_add_submission_id_to_solution.rb +0 -0
  173. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150724062215_add_language_description.rb +0 -0
  174. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150724062233_add_category_links.rb +0 -0
  175. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150724062249_add_category_long_description.rb +0 -0
  176. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150819194207_convert_submissions_into_solutions.rb +0 -0
  177. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150819202310_remove_submissions.rb +0 -0
  178. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150826023647_create_friendly_id_slugs.rb +0 -0
  179. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150826023757_add_slug_to_guides.rb +0 -0
  180. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150826024859_add_slug_to_exercises.rb +0 -0
  181. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150828013106_add_remember_me_token_to_user.rb +0 -0
  182. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150829211550_add_queriable_to_language.rb +0 -0
  183. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150829215524_add_expectations_column_to_guide.rb +0 -0
  184. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20150905214532_rename_exercise_title_to_name.rb +0 -0
  185. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151001143118_rename_solution_to_assignment.rb +0 -0
  186. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151001183858_rename_assignment_content_to_solution.rb +0 -0
  187. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151003003856_add_type_to_exercise.rb +0 -0
  188. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151020145904_remove_guide_git_information.rb +0 -0
  189. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151104163433_create_tenants.rb +0 -0
  190. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151104172241_create_path_rules.rb +0 -0
  191. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151104173956_remove_guide_position.rb +0 -0
  192. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151104220859_remove_path_from_guide.rb +0 -0
  193. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151107232242_move_slug_to_path_rule.rb +0 -0
  194. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151108173838_remove_slugs.rb +0 -0
  195. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151108182857_remove_act_as_taggable_taggings.rb +0 -0
  196. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151108183319_add_tags_array.rb +0 -0
  197. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151206072741_rename_guide_extra_code_to_extra.rb +0 -0
  198. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151208224736_rename_path_rule_to_chapter_guide.rb +0 -0
  199. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151208224907_rename_category_to_chapter.rb +0 -0
  200. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151208225503_rename_chapter_position_to_number.rb +0 -0
  201. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151208231749_rename_chapter_guide_path_to_chapter.rb +0 -0
  202. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151208233707_rename_url_to_slug.rb +0 -0
  203. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151209021925_add_locale_to_tenant.rb +0 -0
  204. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151210204646_remove_language_extensions.rb +0 -0
  205. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151211032811_drop_collaborators.rb +0 -0
  206. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151211033000_drop_contributors.rb +0 -0
  207. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151211034943_remove_authors.rb +0 -0
  208. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151211035206_add_contact_email_to_tenant.rb +0 -0
  209. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151218172557_drop_import.rb +0 -0
  210. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151222153838_add_default_content_to_exercise.rb +0 -0
  211. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151223014138_change_language_icon_url_into_devicon_id.rb +0 -0
  212. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151224174248_remove_original_id.rb +0 -0
  213. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20151229153839_replace_learning_with_type_in_guides.rb +0 -0
  214. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160108191156_rename_extra_code.rb +0 -0
  215. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160108215313_remove_unique_index_from_users.rb +0 -0
  216. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160119024542_add_preface_to_tenant.rb +0 -0
  217. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160119040351_rename_tenant_to_book.rb +0 -0
  218. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160119191508_rename_position_to_number.rb +0 -0
  219. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160120171336_add_type_to_event_suscriber.rb +0 -0
  220. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160205184243_add_bibliotheca_id_to_exercise.rb +0 -0
  221. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160214191548_required_bibliotheca_id.rb +0 -0
  222. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160222165337_add_hidden_flag_to_extra_code.rb +0 -0
  223. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160222192958_rename_chapter_guide_to_lesson.rb +0 -0
  224. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160307184203_add_prompt_to_language.rb +0 -0
  225. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160331210507_add_comment_model.rb +0 -0
  226. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160401142104_add_readed_to_comment.rb +0 -0
  227. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160404214826_change_readed_to_read.rb +0 -0
  228. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160405184624_change_submission_id_to_string.rb +0 -0
  229. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160412193123_change_content_comment_to_text.rb +0 -0
  230. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160414150800_remove_tenant_subscriber.rb +0 -0
  231. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160426171156_add_new_expectations_to_exercise.rb +0 -0
  232. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160427195306_create_organizations.rb +0 -0
  233. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160427223805_add_chapter_book.rb +0 -0
  234. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160427234538_create_topics.rb +0 -0
  235. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160427235605_add_topic_to_chapter.rb +0 -0
  236. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160428162753_add_topic_id_to_lesson.rb +0 -0
  237. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160428175230_create_exams.rb +0 -0
  238. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160428224823_add_duration_to_exam.rb +0 -0
  239. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160429174901_add_start_end_time_to_exam.rb +0 -0
  240. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160429181825_add_exam_user.rb +0 -0
  241. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160430225048_create_complements.rb +0 -0
  242. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160430231035_remove_chapter_lesson.rb +0 -0
  243. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160430235331_remove_chapter_name_description.rb +0 -0
  244. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160430235656_remove_chapter_locale_image_url.rb +0 -0
  245. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160501003355_add_long_description_to_topic.rb +0 -0
  246. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160501071847_create_usages.rb +0 -0
  247. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160506012945_add_slug_to_topic_and_book.rb +0 -0
  248. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160506035230_remove_slug_from_lesson.rb +0 -0
  249. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160506041446_rename_preface_to_description.rb +0 -0
  250. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160506172239_remove_event_subscriber.rb +0 -0
  251. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160506175610_remove_api_tokens.rb +0 -0
  252. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160506181152_remove_admin_user.rb +0 -0
  253. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160506182333_remove_admin_comments.rb +0 -0
  254. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160510183137_add_private_to_organization.rb +0 -0
  255. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160512134321_add_organization_image.rb +0 -0
  256. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160516191936_add_stateful_console_to_language.rb +0 -0
  257. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160517215229_add_classroom_idto_exams.rb +0 -0
  258. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160518212552_rename_exam_users_to_exam_authorization.rb +0 -0
  259. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160518213912_add_user_start_data_in_exam.rb +0 -0
  260. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160519045220_add_id_to_exam_authorizations.rb +0 -0
  261. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160520141716_remove_chapter_links_and_long_description.rb +0 -0
  262. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160520153115_change_exam_classroom_id_to_string.rb +0 -0
  263. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160526172026_remove_not_null_constraint_exam_duration.rb +0 -0
  264. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160526182119_add_metadata_to_user.rb +0 -0
  265. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160617175235_add_last_organization_to_user.rb +0 -0
  266. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160617195350_change_metadata_to_text.rb +0 -0
  267. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160701195105_add_login_methods_to_organization.rb +0 -0
  268. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160705160244_add_manual_evaluation_to_exercise.rb +0 -0
  269. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160715001254_rename_test_runner_url.rb +0 -0
  270. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160729194600_change_default_content_to_text.rb +0 -0
  271. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160812003350_change_default_login_methods.rb +0 -0
  272. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160815225314_rename_long_description_to_appendix.rb +0 -0
  273. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160819181024_make_organization_private_by_default.rb +0 -0
  274. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160830160937_add_authoring_information_to_guide.rb +0 -0
  275. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20160907010315_remove_exercise_slug.rb +0 -0
  276. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20161004202742_add_editor_to_problem.rb +0 -0
  277. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20161018142147_add_language_extension.rb +0 -0
  278. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20161107171305_remove_devicon_column_from_language.rb +0 -0
  279. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20161222182015_rename_uid_to_social_id.rb +0 -0
  280. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20161222182724_add_uid_to_user.rb +0 -0
  281. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20161226181932_remove_metadata_from_users.rb +0 -0
  282. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20161230055953_add_not_null_constraint_to_uid_in_user.rb +0 -0
  283. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20161231224116_add_permissions_to_user.rb +0 -0
  284. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20170125185012_add_new_fields_on_organization.rb +0 -0
  285. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20170207154702_add_index_to_uid.rb +0 -0
  286. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20170224040846_create_invitations.rb +0 -0
  287. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20170224061531_make_tos_type_text.rb +0 -0
  288. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20170301160253_rename_invitation_slug_to_code.rb +0 -0
  289. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20170330145157_rename_comment_to_messages.rb +0 -0
  290. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20170407190910_add_has_messages_flag_to_assignment.rb +0 -0
  291. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20170526191251_add_community_link_to_organizations.rb +0 -0
  292. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20170526204944_add_has_messages_to_organizations.rb +0 -0
  293. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20170601181759_rename_has_messages_to_raise_hand_enabled_in_organization.rb +0 -0
  294. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20170608033403_remove_has_messages_from_assignment.rb +0 -0
  295. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20170608044038_remove_messages_exercise_id.rb +0 -0
  296. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20170608154055_remove_message_type_column.rb +0 -0
  297. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20170612173212_add_first_name_and_last_name_to_user.rb +0 -0
  298. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20170621222902_introduce_settings_and_themes.rb +0 -0
  299. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20170818185127_add_guide_slug_constraint.rb +0 -0
  300. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20170830020507_change_invitation_expiration_date_type.rb +0 -0
  301. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20171003204152_add_goal_to_exercise.rb +0 -0
  302. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20171003204209_add_queries_to_assignment.rb +0 -0
  303. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20171004134607_add_triable_to_language.rb +0 -0
  304. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20171024182244_add_devicon_and_comment_type_to_language.rb +0 -0
  305. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20171109181818_add_manual_evaluation_commend_and_submission_id_index_in_assignment.rb +0 -0
  306. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20171229042201_add_assets_to_language.rb +0 -0
  307. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180117014110_add_custom_editor_assets_to_language.rb +0 -0
  308. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180123174410_add_initial_and_final_states_to_exercises.rb +0 -0
  309. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180123180836_add_accepts_reminders_to_users.rb +0 -0
  310. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180129142749_add_api_client.rb +0 -0
  311. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180130194923_add_last_reminded_date_to_users.rb +0 -0
  312. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180130204935_add_course.rb +0 -0
  313. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180307150148_add_failed_submissions_count_to_assignments.rb +0 -0
  314. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180323125804_remove_user_name.rb +0 -0
  315. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180323140943_remove_unused_omniauth_fields.rb +0 -0
  316. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180326224511_remove_book_ids.rb +0 -0
  317. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180402015405_remove_course_uid.rb +0 -0
  318. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180504173548_create_discussions.rb +0 -0
  319. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180504185845_add_discussion_id_to_message.rb +0 -0
  320. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180526141344_add_tips_rules_to_exercise.rb +0 -0
  321. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180605143727_add_submission_to_discussion.rb +0 -0
  322. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180611190239_add_randomizations_to_exercises.rb +0 -0
  323. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180619182555_create_subscriptions.rb +0 -0
  324. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180702153442_create_upvotes.rb +0 -0
  325. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180702175220_add_upvotes_count_to_discussions.rb +0 -0
  326. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180704150839_rename_assignment_status_to_submission_status.rb +0 -0
  327. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180725145801_add_submissions_caps_to_exams.rb +0 -0
  328. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20180802190437_add_approved_to_messages.rb +0 -0
  329. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20181004173216_add_free_form_editor_to_exercises.rb +0 -0
  330. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20181014233438_remove_non_null_constraint_from_permissions.rb +0 -0
  331. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20181016203853_add_test_extension_back.rb +0 -0
  332. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20181021151505_add_id_format_back.rb +0 -0
  333. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20181022043658_add_private_flag_for_guides.rb +0 -0
  334. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20181022220518_add_teacher_info_to_guide.rb +0 -0
  335. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20181101180652_add_unique_index_to_organizations_name.rb +0 -0
  336. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20181105152420_remove_contact_email_from_book.rb +0 -0
  337. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20181113183935_rename_guide_contributors_to_collaborators.rb +0 -0
  338. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20181114201620_add_test_template_to_languages.rb +0 -0
  339. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20181117190241_add_feedback_to_language.rb +0 -0
  340. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20181121165956_rename_choices_column.rb +0 -0
  341. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20181210131824_convert_course_invitation_into_fk.rb +0 -0
  342. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20190123180139_add_sources_section.rb +0 -0
  343. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20190123180147_add_learn_more_section.rb +0 -0
  344. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20190312152901_add_content_fk.rb +0 -0
  345. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20190326152631_add_settings_to_content.rb +0 -0
  346. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20190404181724_add_organization_to_discussion.rb +0 -0
  347. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20190506180102_add_multifile_to_languages.rb +0 -0
  348. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20190530173142_add_organization_to_assignment.rb +0 -0
  349. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20190702003600_add_loading_flags_to_language.rb +0 -0
  350. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20190702182407_add_new_profile_fields.rb +0 -0
  351. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20190724190355_add_settings_to_languages.rb +0 -0
  352. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20190905174934_add_submitted_at_to_assignments.rb +0 -0
  353. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20190918134321_remove_new_expectations.rb +0 -0
  354. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20190918140026_add_custom_expectations.rb +0 -0
  355. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/db/migrate/20190929180601_add_expectations_to_language.rb +0 -0
  356. data/vendor/bundle/ruby/2.3.0/bundler/gems/mumuki-domain-925adf85cca8/db/migrate/20191022180238_remove_choice_values_from_exercises.rb +5 -0
  357. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/engine.rb +0 -0
  358. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/evaluation/automated.rb +0 -0
  359. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/evaluation/manual.rb +0 -0
  360. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/evaluation.rb +0 -0
  361. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/exceptions/blocked_forum_error.rb +0 -0
  362. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/exceptions/forbidden_error.rb +0 -0
  363. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/exceptions/gone_error.rb +0 -0
  364. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/exceptions/not_found_error.rb +0 -0
  365. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/exceptions/unauthorized_error.rb +0 -0
  366. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/exceptions.rb +0 -0
  367. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/extensions/array.rb +0 -0
  368. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/extensions/hash.rb +0 -0
  369. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/extensions/module.rb +0 -0
  370. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/extensions/string.rb +0 -0
  371. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/extensions.rb +0 -0
  372. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/api_client_factory.rb +0 -0
  373. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/assignments_factory.rb +0 -0
  374. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/book_factory.rb +0 -0
  375. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/chapter_factory.rb +0 -0
  376. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/complement_factory.rb +0 -0
  377. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/course_factory.rb +0 -0
  378. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/discussion_factory.rb +0 -0
  379. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/exam_factory.rb +0 -0
  380. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/exercise_factory.rb +4 -0
  381. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/guide_factory.rb +7 -0
  382. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/invitation_factory.rb +0 -0
  383. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/lesson_factory.rb +0 -0
  384. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/login_settings_factory.rb +0 -0
  385. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/message_factory.rb +0 -0
  386. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/organization_factory.rb +0 -0
  387. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/topic_factory.rb +6 -0
  388. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/usage_factory.rb +0 -0
  389. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories/user_factory.rb +0 -0
  390. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/factories.rb +0 -0
  391. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/file.rb +0 -0
  392. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/helpers/course.rb +0 -0
  393. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/helpers/organization.rb +0 -0
  394. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/helpers/user.rb +0 -0
  395. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/helpers.rb +0 -0
  396. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/locales/activerecord/en.yml +0 -0
  397. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/locales/activerecord/es.yml +0 -0
  398. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/locales/activerecord/pt.yml +0 -0
  399. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/locales/console_submission/en.yml +0 -0
  400. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/locales/console_submission/es.yml +0 -0
  401. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/locales/console_submission/pt.yml +0 -0
  402. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/organization/profile.rb +0 -0
  403. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/organization/settings.rb +0 -0
  404. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/organization/theme.rb +0 -0
  405. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/organization.rb +0 -0
  406. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/seed.rb +0 -0
  407. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/status/discussion/closed.rb +0 -0
  408. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/status/discussion/discussion.rb +0 -0
  409. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/status/discussion/opened.rb +0 -0
  410. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/status/discussion/pending_review.rb +0 -0
  411. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/status/discussion/solved.rb +0 -0
  412. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/status/submission/aborted.rb +0 -0
  413. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/status/submission/errored.rb +0 -0
  414. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/status/submission/failed.rb +0 -0
  415. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/status/submission/manual_evaluation_pending.rb +0 -0
  416. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/status/submission/passed.rb +0 -0
  417. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/status/submission/passed_with_warnings.rb +0 -0
  418. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/status/submission/pending.rb +0 -0
  419. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/status/submission/running.rb +0 -0
  420. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/status/submission/submission.rb +0 -0
  421. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/status.rb +0 -0
  422. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/store/bibliotheca.rb +0 -0
  423. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/store/github/exercise_schema.rb +0 -0
  424. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/store/github/guide_schema.rb +0 -0
  425. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/store/github.rb +0 -0
  426. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/store/thesaurus.rb +0 -0
  427. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/store.rb +0 -0
  428. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/submission/base.rb +0 -0
  429. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/submission/confirmation.rb +0 -0
  430. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/submission/console_submission.rb +0 -0
  431. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/submission/persistent_submission.rb +0 -0
  432. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/submission/query.rb +0 -0
  433. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/submission/question.rb +0 -0
  434. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/submission/solution.rb +0 -0
  435. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/submission/try.rb +0 -0
  436. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/submission.rb +0 -0
  437. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/syncable/with_resource_fields.rb +0 -0
  438. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/syncable.rb +0 -0
  439. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain/version.rb +1 -1
  440. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/lib/mumuki/domain.rb +0 -0
  441. data/vendor/bundle/ruby/2.3.0/bundler/gems/mumuki-domain-925adf85cca8/mumuki-domain.gemspec +61 -0
  442. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/dummy/Rakefile +0 -0
  443. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/dummy/bin/bundle +0 -0
  444. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/dummy/bin/rails +0 -0
  445. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/dummy/bin/rake +0 -0
  446. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/dummy/bin/setup +0 -0
  447. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/dummy/bin/update +0 -0
  448. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/dummy/config/application.rb +0 -0
  449. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/dummy/config/boot.rb +0 -0
  450. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/dummy/config/database.travis.yml +0 -0
  451. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/dummy/config/database.yml +0 -0
  452. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/dummy/config/environment.rb +0 -0
  453. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/dummy/config/environments/test.rb +0 -0
  454. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/dummy/config.ru +0 -0
  455. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/dummy/db/schema.rb +1 -2
  456. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/evaluation_helper.rb +0 -0
  457. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/lib/bibliotheca_store_spec.rb +0 -0
  458. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/lib/organization_helpers_spec.rb +0 -0
  459. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/lib/thesaurus_store_spec.rb +0 -0
  460. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/lib/user_helpers_spec.rb +0 -0
  461. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/api_client_spec.rb +0 -0
  462. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/assignment_spec.rb +0 -0
  463. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/book_import_spec.rb +0 -0
  464. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/book_spec.rb +37 -12
  465. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/course_spec.rb +0 -0
  466. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/discussion_spec.rb +0 -0
  467. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/event_generation_spec.rb +0 -0
  468. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/event_publishing_spec.rb +0 -0
  469. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/exam_spec.rb +0 -0
  470. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/exercise_spec.rb +0 -11
  471. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/guide_import_spec.rb +0 -0
  472. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/guide_spec.rb +0 -0
  473. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/hash_spec.rb +0 -0
  474. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/interactive_spec.rb +0 -0
  475. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/invitation_spec.rb +0 -0
  476. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/language_spec.rb +0 -0
  477. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/lesson_spec.rb +0 -0
  478. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/message_spec.rb +0 -0
  479. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/navigation_spec.rb +0 -0
  480. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/organization_spec.rb +0 -0
  481. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/playground_spec.rb +0 -0
  482. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/problem_spec.rb +0 -0
  483. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/query_spec.rb +0 -0
  484. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/question_spec.rb +0 -0
  485. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/reading_spec.rb +0 -0
  486. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/solution_spec.rb +0 -0
  487. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/stats_spec.rb +0 -0
  488. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/string_spec.rb +0 -0
  489. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/topic_spec.rb +0 -0
  490. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/usage_spec.rb +0 -0
  491. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/user_changed_spec.rb +0 -0
  492. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/user_spec.rb +0 -0
  493. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/models/with_expectations_spec.rb +0 -0
  494. data/vendor/bundle/ruby/2.3.0/bundler/gems/{mumuki-domain-74da3d4af98c → mumuki-domain-925adf85cca8}/spec/spec_helper.rb +0 -0
  495. metadata +495 -491
  496. data/vendor/bundle/ruby/2.3.0/bundler/gems/mumuki-domain-74da3d4af98c/app/models/usage.rb +0 -20
  497. data/vendor/bundle/ruby/2.3.0/bundler/gems/mumuki-domain-74da3d4af98c/mumuki-domain.gemspec +0 -78
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fefecdaafd2aff8836300bb6b8d6c55659a9a5711da56d5292bf9ed1032665cf
4
- data.tar.gz: e67f18b36ff57074ea152d1847b98c66261ec1f556d645d6d95837784b40161a
3
+ metadata.gz: 3bd2970f76639e5a75d8d495a6d5ee9ae48a9a840be70da8a1c5e58f6c20ff63
4
+ data.tar.gz: e792444dc5edde15edd40d5b2e82f9cea756a0956af8c63fa38a7e9ba739ed7f
5
5
  SHA512:
6
- metadata.gz: 19c366bddb6a6d9babfd542809563febb6763bc8be75cdd4e53aa6b8e32438e1f48363d005faff3597aba9ca038370c471344cedccbce089e05e62dffd86df39
7
- data.tar.gz: cbbab2c71de4a8721a7a9a454f16d2af4c725057079568be7491d667be20d329e0216bf36e24317fc598ec39c174882bcdbd237cf3b022b761baa3fe6778ece9
6
+ metadata.gz: 6dddff8d4c0629e18cda7a408fb3a813a196c1e289f25cc0940566a8d5fc0e2d6746d9576999364dc29a001a5431126b7fada46d605a7c249a1308a81aa8584e
7
+ data.tar.gz: 16f81fc42792c57a868d891fb9c8d761499de386e55611b858b2c7f4c91f5939077380a34fc5f4267c1c71f721c6c32a366e5225a3db67ac3b723a07e0ef58be
@@ -8,13 +8,24 @@ module Mumuki::Laboratory::Controllers::ResultsRendering
8
8
  end
9
9
 
10
10
  def render_results_json(assignment, results = {})
11
+ if assignment.input_kids?
12
+ merge_kids_specific_renders(assignment, results)
13
+ render_results = 'exercise_solutions/kids_results'
14
+ else
15
+ render_results = 'exercise_solutions/results'
16
+ end
17
+
11
18
  render json: results.merge(progress_json).merge(
12
- html: render_results_html(assignment),
13
- title_html: render_results_title_html(assignment),
14
- button_html: render_results_button_html(assignment),
15
- expectations_html: render_results_expectations_html(assignment),
16
- remaining_attempts_html: remaining_attempts_text(assignment),
17
- test_results: assignment.test_results)
19
+ html: render_results_html(render_results, assignment),
20
+ remaining_attempts_html: remaining_attempts_text(assignment))
21
+ end
22
+
23
+ def merge_kids_specific_renders(assignment, results)
24
+ results.merge!(
25
+ button_html: render_results_button_html(assignment),
26
+ title_html: render_results_title_html(assignment),
27
+ expectations_html: render_results_expectations_html(assignment),
28
+ test_results: assignment.test_results)
18
29
  end
19
30
 
20
31
  def progress_json
@@ -24,16 +35,12 @@ module Mumuki::Laboratory::Controllers::ResultsRendering
24
35
  }
25
36
  end
26
37
 
27
- def render_results_html(assignment)
28
- render_to_string partial: results_partial(assignment),
38
+ def render_results_html(results_partial, assignment)
39
+ results_partial = 'out_of_attempts' unless assignment.attempts_left?
40
+ render_to_string partial: results_partial,
29
41
  locals: {assignment: assignment}
30
42
  end
31
43
 
32
- def results_partial(assignment)
33
- return 'out_of_attempts' unless assignment.attempts_left?
34
- assignment.input_kids? ? 'exercise_solutions/kids_results' : 'exercise_solutions/results'
35
- end
36
-
37
44
  def render_results_title_html(assignment)
38
45
  render_to_string partial: 'exercise_solutions/results_title',
39
46
  locals: {contextualization: assignment}
@@ -1,5 +1,5 @@
1
1
  module Mumuki
2
2
  module Laboratory
3
- VERSION = '7.0.12'
3
+ VERSION = '7.1.0'
4
4
  end
5
5
  end
@@ -3,26 +3,55 @@ require 'spec_helper'
3
3
  describe ExerciseSolutionsController, organization_workspace: :test do
4
4
  let(:user) { create(:user) }
5
5
  let(:problem) { create(:problem) }
6
-
6
+ let(:kids_problem) { create(:problem, layout: :input_kids) }
7
7
  let!(:chapter) {
8
8
  create(:chapter, name: 'Functional Programming', lessons: [
9
- create(:lesson, exercises: [problem])
9
+ create(:lesson, exercises: [problem, kids_problem])
10
10
  ]) }
11
11
 
12
12
  before { reindex_current_organization! }
13
13
  before { set_current_user! user }
14
14
 
15
- context 'when simple content is sent' do
16
- before { post :create, params: { exercise_id: problem.id, solution: { content: 'asd' } } }
15
+ def post_problem(problem)
16
+ post :create, params: { exercise_id: problem.id, solution: { content: 'asd' } }
17
+ end
18
+
19
+ describe 'when simple content is sent' do
20
+ before { post_problem(problem) }
17
21
 
18
22
  it { expect(response.status).to eq 200 }
19
- it { expect(response.body).to json_eq(
20
- {status: :failed, guide_finished_by_solution: false},
21
- except: [:class_for_progress_list_item,
22
- :html, :title_html, :button_html,
23
- :expectations_html, :remaining_attempts_html,
24
- :test_results]) }
25
23
  it { expect(Assignment.last.solution).to eq('asd')}
24
+
25
+ context 'for a non-kids exercise' do
26
+ it { expect(response.body).to json_eq({ status: :failed, guide_finished_by_solution: false },
27
+ except: [:class_for_progress_list_item, :html, :remaining_attempts_html]) }
28
+
29
+ it 'does not include kids specific renders' do
30
+ body = JSON.parse(response.body)
31
+
32
+ expect(body.key?('button_html')).to be false
33
+ expect(body.key?('title_html')).to be false
34
+ expect(body.key?('expectations_html')).to be false
35
+ expect(body.key?('test_results')).to be false
36
+ end
37
+ end
38
+
39
+ context 'for a kids exercise' do
40
+ before { post_problem(kids_problem) }
41
+
42
+ it { expect(response.body).to json_eq({ status: :failed, guide_finished_by_solution: false },
43
+ except: [:class_for_progress_list_item, :html, :remaining_attempts_html,
44
+ :title_html, :button_html, :expectations_html, :test_results]) }
45
+
46
+ it 'includes kids specific renders' do
47
+ body = JSON.parse(response.body)
48
+
49
+ expect(body.key?('button_html')).to be true
50
+ expect(body.key?('title_html')).to be true
51
+ expect(body.key?('expectations_html')).to be true
52
+ expect(body.key?('test_results')).to be true
53
+ end
54
+ end
26
55
  end
27
56
 
28
57
  context 'when multifile content is sent' do
@@ -0,0 +1,218 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
3
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
+ <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
5
+ width="1325.991px" height="345.997px" viewBox="0 0 1325.991 345.997" enable-background="new 0 0 1325.991 345.997"
6
+ xml:space="preserve">
7
+ <g id="Layer_1">
8
+ <g id="engranaje_fondo">
9
+ <g id="Layer_3_1_">
10
+ </g>
11
+ </g>
12
+ <g>
13
+ <g>
14
+ <g>
15
+
16
+ <path fill="#A6A8AB" stroke="#A6A8AB" stroke-width="0.611" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
17
+ M555.922,79.735c-3.999,0-3.999-6.201,0-6.201S559.921,79.735,555.922,79.735L555.922,79.735z"/>
18
+ </g>
19
+ </g>
20
+ <g>
21
+ <g>
22
+
23
+ <path fill="#A6A8AB" stroke="#A6A8AB" stroke-width="0.611" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
24
+ M551.923,127.326c-5.28,0-5.28-8.188,0-8.188S557.204,127.326,551.923,127.326L551.923,127.326z"/>
25
+ </g>
26
+ </g>
27
+ <g>
28
+
29
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#A6A8AB" stroke-width="5" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
30
+ M594.327,102.365c-7.61,0-13.779-7.875-13.779-17.587"/>
31
+
32
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#A6A8AB" stroke-width="5" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
33
+ M566.58,102.365c7.609,0,13.779-7.875,13.779-17.587"/>
34
+
35
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#A6A8AB" stroke-width="5" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
36
+ M594.327,102.607c-7.61,0-13.779,7.873-13.779,17.587"/>
37
+
38
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#A6A8AB" stroke-width="5" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
39
+ M566.58,102.607c7.609,0,13.779,7.873,13.779,17.587"/>
40
+ </g>
41
+ <g>
42
+
43
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#A6A8AB" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
44
+ M541.1,142.51c-3.729,0-6.752-3.858-6.752-8.617"/>
45
+
46
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#A6A8AB" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
47
+ M527.504,142.51c3.729,0,6.751-3.858,6.751-8.617"/>
48
+
49
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#A6A8AB" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
50
+ M541.1,142.628c-3.729,0-6.752,3.858-6.752,8.618"/>
51
+
52
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#A6A8AB" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
53
+ M527.504,142.628c3.729,0,6.751,3.858,6.751,8.618"/>
54
+ </g>
55
+ <g>
56
+
57
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#A6A8AB" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
58
+ M535.115,76.575c-3.729,0-7.727-7.759-7.727-12.518"/>
59
+
60
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#A6A8AB" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
61
+ M519.569,76.575c3.729,0,7.727-7.759,7.727-12.518"/>
62
+
63
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#A6A8AB" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
64
+ M535.115,76.694c-3.729,0-7.727,6.783-7.727,11.543"/>
65
+
66
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="none" stroke="#A6A8AB" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
67
+ M519.569,76.694c3.729,0,7.727,6.783,7.727,11.543"/>
68
+ </g>
69
+ <g>
70
+ <g>
71
+
72
+ <path fill="#A6A8AB" stroke="#A6A8AB" stroke-width="0.611" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
73
+ M511.007,110.03c-3.999,0-3.999-6.201,0-6.201S515.006,110.03,511.007,110.03L511.007,110.03z"/>
74
+ </g>
75
+ </g>
76
+ </g>
77
+ </g>
78
+ <g id="Layer_5" display="none">
79
+ <g display="inline">
80
+ <g>
81
+
82
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="#A6A8AB" stroke="#A6A8AB" stroke-width="2.3401" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
83
+ M655.333,238.322l7.915,1.326v8.437l-7.915,1.375c-0.168,0.832-0.379,1.643-0.632,2.433l6.177,5.104l-4.249,7.283l-7.552-2.781
84
+ c-0.285,0.296-0.563,0.579-0.838,0.854c-0.295,0.295-0.59,0.579-0.884,0.853l2.812,7.567l-7.299,4.219l-5.118-6.146
85
+ c-0.791,0.231-1.586,0.432-2.386,0.601l-1.392,7.914h-8.436l-1.327-7.914c-0.832-0.169-1.632-0.369-2.401-0.601l-5.134,6.177
86
+ l-7.314-4.219l2.812-7.63c-0.295-0.274-0.59-0.548-0.885-0.821c-0.295-0.296-0.569-0.579-0.821-0.854l-7.615,2.781l-4.218-7.316
87
+ l6.208-5.102c-0.263-0.79-0.479-1.59-0.647-2.401l-7.946-1.375v-8.437l7.946-1.326c0.169-0.813,0.374-1.606,0.616-2.386
88
+ l-6.177-5.149l4.218-7.284l7.583,2.813c0.274-0.315,0.559-0.621,0.854-0.917c0.295-0.295,0.59-0.568,0.885-0.82l-2.812-7.6
89
+ l7.314-4.219l5.134,6.178c0.77-0.253,1.569-0.464,2.401-0.632l1.327-7.947h8.436l1.392,7.947c0.8,0.168,1.595,0.379,2.386,0.632
90
+ l5.086-6.178l7.314,4.25l-2.795,7.536c0.294,0.273,0.589,0.558,0.884,0.853c0.295,0.296,0.579,0.59,0.854,0.885l7.567-2.812
91
+ l4.218,7.315l-6.146,5.133C654.965,236.689,655.165,237.49,655.333,238.322z M645.949,227.642
92
+ c-4.466-4.477-9.874-6.715-16.225-6.715c-6.331,0-11.739,2.238-16.226,6.715c-4.466,4.486-6.698,9.895-6.698,16.225
93
+ c0,6.341,2.232,11.749,6.698,16.225c4.486,4.487,9.895,6.73,16.226,6.73c6.351,0,11.759-2.243,16.225-6.73
94
+ c4.486-4.476,6.729-9.884,6.729-16.225C652.679,237.537,650.436,232.128,645.949,227.642z"/>
95
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="#A6A8AB" d="M637.565,236.087c2.149,2.148,3.223,4.742,3.223,7.783
96
+ c0,3.045-1.073,5.639-3.223,7.781c-2.154,2.162-4.755,3.242-7.801,3.242c-3.033,0-5.627-1.08-7.782-3.242
97
+ c-2.143-2.143-3.213-4.736-3.213-7.781c0-3.041,1.07-5.635,3.213-7.783c2.155-2.154,4.749-3.232,7.782-3.232
98
+ C632.811,232.855,635.411,233.933,637.565,236.087z"/>
99
+ </g>
100
+ <g>
101
+
102
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="#A6A8AB" stroke="#A6A8AB" stroke-width="1.3887" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
103
+ M610.272,199.481l4.356,1.925l-1.237,4.851l-4.753-0.371c-0.219,0.454-0.459,0.89-0.721,1.307l2.803,3.841l-3.513,3.564
104
+ l-3.934-2.707c-0.207,0.128-0.409,0.249-0.607,0.366c-0.212,0.126-0.424,0.247-0.634,0.362l0.506,4.764l-4.814,1.354
105
+ l-2.042-4.284c-0.488,0.017-0.976,0.015-1.46-0.006l-1.962,4.348l-4.85-1.238l0.398-4.745c-0.454-0.221-0.884-0.452-1.293-0.698
106
+ l-3.858,2.798l-3.587-3.5l2.736-3.974c-0.13-0.201-0.259-0.402-0.388-0.603c-0.127-0.213-0.242-0.416-0.348-0.61l-4.787,0.48
107
+ l-1.351-4.825l4.317-2.022c-0.035-0.493-0.041-0.985-0.02-1.477l-4.367-1.957l1.238-4.851l4.765,0.404
108
+ c0.216-0.442,0.45-0.869,0.704-1.282l-2.797-3.867l3.494-3.569l3.948,2.73c0.204-0.142,0.413-0.275,0.626-0.402
109
+ c0.213-0.126,0.423-0.24,0.629-0.342l-0.501-4.783l4.825-1.352l2.045,4.307c0.479-0.033,0.971-0.037,1.474-0.012l1.929-4.374
110
+ l4.852,1.238l-0.367,4.773c0.435,0.214,0.861,0.452,1.279,0.713l3.832-2.805l3.582,3.517l-2.714,3.923
111
+ c0.129,0.201,0.256,0.407,0.383,0.62c0.126,0.213,0.247,0.425,0.361,0.634l4.764-0.506l1.352,4.825l-4.286,2.049
112
+ C610.301,198.489,610.299,198.978,610.272,199.481z M606.445,191.963c-1.911-3.229-4.692-5.31-8.344-6.242
113
+ c-3.641-0.929-7.079-0.437-10.316,1.479c-3.226,1.924-5.303,4.706-6.232,8.346c-0.931,3.646-0.439,7.084,1.471,10.313
114
+ c1.921,3.239,4.701,5.322,8.342,6.251c3.652,0.934,7.091,0.437,10.316-1.488c3.237-1.914,5.32-4.694,6.251-8.341
115
+ C608.862,198.64,608.366,195.203,606.445,191.963z"/>
116
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="#A6A8AB" d="M601.51,194.923c1.104,1.859,1.388,3.838,0.852,5.936
117
+ c-0.536,2.103-1.734,3.703-3.593,4.803c-1.868,1.112-3.851,1.4-5.954,0.863c-2.093-0.535-3.692-1.736-4.799-3.607
118
+ c-1.101-1.855-1.383-3.834-0.847-5.937c0.536-2.097,1.731-3.698,3.588-4.802c1.866-1.108,3.846-1.396,5.938-0.861
119
+ C598.799,191.855,600.401,193.056,601.51,194.923z"/>
120
+ </g>
121
+ <path fill="#A6A8AB" d="M694.957,133.524c-3.908-1.097-7.747-1.731-11.41-1.884c-0.906-0.037-1.758,0.418-2.231,1.188
122
+ c-0.473,0.771-0.492,1.736-0.051,2.526l14.887,26.563l-25.582,14.337l-14.886-26.563c-0.436-0.776-1.251-1.262-2.141-1.275
123
+ c-0.888-0.015-1.718,0.447-2.176,1.209c-2.007,3.337-3.586,7.023-4.693,10.96c-2.893,10.269-1.649,20.312,3.696,29.851
124
+ c5.353,9.552,13.227,15.757,23.305,18.417c6,1.848,12.007,2.194,17.892,1.041l35.374,63.123c1.783,3.181,4.436,5.285,8.027,6.293
125
+ c3.297,0.722,6.454,0.254,9.384-1.388c3.129-1.754,5.276-4.259,6.379-7.447c0.031-0.092,0.059-0.187,0.08-0.281
126
+ c0.723-3.296,0.201-6.554-1.554-9.683l-35.331-63.046c3.974-4.351,6.695-9.613,8.1-15.674c3.194-10.172,2.105-20.162-3.238-29.696
127
+ C713.435,142.542,705.404,136.291,694.957,133.524z"/>
128
+ </g>
129
+ </g>
130
+ <g id="Layer_7" display="none">
131
+ <g display="inline">
132
+ <g>
133
+ <path fill="#A6A8AB" d="M706.212,277.694c2.68,4.953,0.837,11.141-4.115,13.82c-4.954,2.68-11.142,0.837-13.821-4.116
134
+ l-28.621-52.899l17.937-9.705L706.212,277.694z"/>
135
+ </g>
136
+
137
+ <circle fill="none" stroke="#A6A8AB" stroke-width="10.6625" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" cx="646.258" cy="188.309" r="47"/>
138
+
139
+ <path fill="none" stroke="#A6A8AB" stroke-width="4.3216" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
140
+ M616.621,189.936c-0.602-11.103,5.089-22.085,15.516-27.727"/>
141
+
142
+ <path fill="none" stroke="#A6A8AB" stroke-width="4.3216" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
143
+ M621.122,204.374c-0.884-1.635-1.599-3.315-2.151-5.022"/>
144
+
145
+ <line fill="none" stroke="#FFFFFF" stroke-width="6" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="664.657" y1="253.987" x2="690.124" y2="240.208"/>
146
+ </g>
147
+ </g>
148
+ <g id="Layer_6">
149
+ <g>
150
+
151
+ <path fill="none" stroke="#A6A8AB" stroke-width="10.6625" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
152
+ M604.552,209.232v-29.266c0-16.813,13.63-30.442,30.442-30.442c16.814,0,30.443,13.629,30.443,30.442v29.266H604.552z"/>
153
+ <g>
154
+ <path fill="#A6A8AB" d="M677.823,202.399h-85.654c-1.657,0-3,1.343-3,3v36.37c0,25.27,20.558,45.827,45.827,45.827
155
+ s45.827-20.558,45.827-45.827v-36.37C680.823,203.742,679.479,202.399,677.823,202.399z M643.341,258.185
156
+ c0.068,0.165,0.05,0.354-0.05,0.503c-0.1,0.148-0.267,0.237-0.445,0.237h-15.702c-0.179,0-0.346-0.089-0.445-0.237
157
+ c-0.099-0.149-0.118-0.338-0.049-0.503l4.062-9.832c-2.988-1.584-4.894-4.711-4.894-8.104c0-5.06,4.117-9.177,9.177-9.177
158
+ c5.062,0,9.178,4.117,9.178,9.177c0,3.393-1.904,6.521-4.895,8.104L643.341,258.185z"/>
159
+ </g>
160
+ </g>
161
+ </g>
162
+ <g id="Layer_9" display="none">
163
+ <g display="inline">
164
+ <g>
165
+
166
+ <path fill="none" stroke="#A6A8AB" stroke-width="7.2" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
167
+ M583.38,189.593c0-28.384,23.01-51.392,51.392-51.392c28.384,0,51.394,23.008,51.394,51.392v101.121H583.38V189.593z"/>
168
+ </g>
169
+
170
+ <path fill="none" stroke="#A6A8AB" stroke-width="7.2" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
171
+ M623.794,113.14c0-6.065,4.916-10.981,10.98-10.981s10.98,4.916,10.98,10.981c0,6.064-4.916,10.98-10.98,10.98"/>
172
+
173
+ <path fill="none" stroke="#A6A8AB" stroke-width="7.2805" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
174
+ M628.322,138.603c24.552,3.957,43.329,25.688,43.329,51.905v99.305"/>
175
+
176
+ <line fill="none" stroke="#A6A8AB" stroke-width="7.4511" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="684.783" y1="182.459" x2="584.763" y2="182.459"/>
177
+
178
+ <path fill="none" stroke="#A6A8AB" stroke-width="7.4511" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
179
+ M634.775,143.173c11.521,10.094,18.876,25.439,18.875,42.625v104.015"/>
180
+
181
+ <rect x="537.901" y="206.466" fill="none" stroke="#A6A8AB" stroke-width="7.3537" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" width="45.479" height="64.606"/>
182
+
183
+ <path fill="none" stroke="#A6A8AB" stroke-width="7.2805" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
184
+ M640.861,138.559c-24.687,3.838-43.604,25.633-43.604,51.948v99.305"/>
185
+
186
+ <path fill="none" stroke="#A6A8AB" stroke-width="7.4511" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
187
+ M639.368,139.145c-14.482,9.733-24.112,26.989-24.111,46.653v104.015"/>
188
+
189
+ <path fill="none" stroke="#A6A8AB" stroke-width="8.479" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
190
+ M634.773,125.121v164.692"/>
191
+
192
+ <rect x="583.38" y="206.374" fill="#FFFFFF" stroke="#A6A8AB" stroke-width="7.8172" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" width="51.393" height="64.606"/>
193
+
194
+ <line fill="none" stroke="#A6A8AB" stroke-width="7.2805" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="551.257" y1="206.467" x2="551.257" y2="271.072"/>
195
+
196
+ <line fill="none" stroke="#A6A8AB" stroke-width="7.4511" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="569.257" y1="206.466" x2="569.257" y2="271.072"/>
197
+ <path fill="#A6A8AB" d="M566.026,296.158c0,4.664,3.78,8.444,8.444,8.444h120.608c4.664,0,8.444-3.78,8.444-8.444l0,0
198
+ c0-4.663-3.78-8.443-8.444-8.443H574.471C569.806,287.714,566.026,291.495,566.026,296.158L566.026,296.158z"/>
199
+
200
+ <line fill="none" stroke="#A6A8AB" stroke-width="7.4511" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="684.783" y1="206.459" x2="584.763" y2="206.459"/>
201
+
202
+ <line fill="none" stroke="#A6A8AB" stroke-width="7.4511" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="684.783" y1="271.459" x2="584.763" y2="271.459"/>
203
+
204
+ <line fill="none" stroke="#A6A8AB" stroke-width="6.7623" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="520.546" y1="191.323" x2="506.693" y2="185.294"/>
205
+
206
+ <line fill="none" stroke="#A6A8AB" stroke-width="6.7623" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="520.546" y1="280.3" x2="506.693" y2="286.329"/>
207
+
208
+ <line fill="none" stroke="#A6A8AB" stroke-width="6.7623" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="511.694" y1="238.208" x2="496.4" y2="238.208"/>
209
+ <g>
210
+ <g>
211
+
212
+ <path fill="#A6A8AB" stroke="#A6A8AB" stroke-width="0.611" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
213
+ M534.255,242.77c-5.28,0-5.28-8.188,0-8.188S539.536,242.77,534.255,242.77L534.255,242.77z"/>
214
+ </g>
215
+ </g>
216
+ </g>
217
+ </g>
218
+ </svg>
@@ -5,28 +5,32 @@
5
5
  ### `Language`
6
6
 
7
7
  ```
8
- name
9
8
  comment_type
10
- runner_url
11
- output_content_type
12
- prompt
13
- extension
14
- highlight_mode
15
- visible_success_output
16
9
  devicon
17
- triable
10
+ editor_css_urls
11
+ editor_html_urls
12
+ editor_js_urls
13
+ editor_shows_loading_content
14
+ expectations
15
+ extension
18
16
  feedback
19
- queriable
17
+ highlight_mode
18
+ layout_css_urls
19
+ layout_html_urls
20
+ layout_js_urls
21
+ layout_shows_loading_content
20
22
  multifile
23
+ name
24
+ output_content_type
25
+ prompt
26
+ queriable
27
+ runner_url
28
+ settings
21
29
  stateful_console
22
30
  test_extension
23
31
  test_template
24
- layout_js_urls
25
- layout_html_urls
26
- layout_css_urls
27
- editor_js_urls
28
- editor_html_urls
29
- editor_css_urls
32
+ triable
33
+ visible_success_output
30
34
  ```
31
35
 
32
36
  _as defined in `Language#to_resource_h`_
@@ -67,9 +67,9 @@ class ApplicationRecord < ActiveRecord::Base
67
67
 
68
68
  def self.aggregate_of(association)
69
69
  class_eval do
70
- define_method(:rebuild!) do |children|
70
+ define_method("rebuild_#{association}!") do |children|
71
71
  transaction do
72
- self.send(association).all_except(children).delete_all
72
+ self.send(association).all_except(children).destroy_all
73
73
  self.update! association => children
74
74
  children.each &:save!
75
75
  end
@@ -1,8 +1,10 @@
1
1
  class Book < Content
2
2
  numbered :chapters
3
3
  aggregate_of :chapters
4
+ aggregate_of :complements
4
5
 
5
6
  has_many :chapters, -> { order(number: :asc) }, dependent: :destroy
7
+ has_many :topics, through: :chapters
6
8
  has_many :complements, dependent: :destroy
7
9
 
8
10
  has_many :exercises, through: :chapters
@@ -11,6 +13,8 @@ class Book < Content
11
13
 
12
14
  delegate :first_lesson, to: :first_chapter
13
15
 
16
+ alias_method :children, :topics
17
+
14
18
  def to_s
15
19
  slug
16
20
  end
@@ -23,13 +27,11 @@ class Book < Content
23
27
  user.try(:last_lesson)|| first_lesson
24
28
  end
25
29
 
26
- after_save :reindex_usages!
27
-
28
30
  def import_from_resource_h!(resource_h)
29
31
  self.assign_attributes resource_h.except(:chapters, :complements, :id, :description)
30
32
  self.description = resource_h[:description]&.squeeze(' ')
31
33
 
32
- rebuild! resource_h[:chapters].map { |it| Topic.find_by!(slug: it).as_chapter_of(self) }
34
+ rebuild_chapters! resource_h[:chapters].map { |it| Topic.find_by!(slug: it).as_chapter_of(self) }
33
35
  rebuild_complements! resource_h[:complements].to_a.map { |it| Guide.find_by(slug: it)&.as_complement_of(self) }.compact
34
36
  end
35
37
 
@@ -39,15 +41,6 @@ class Book < Content
39
41
  complements: complements.map(&:slug))
40
42
  end
41
43
 
42
- def rebuild_complements!(complements) #FIXME use rebuild
43
- transaction do
44
- self.complements.all_except(complements).delete_all
45
- self.update! :complements => complements
46
- complements.each &:save!
47
- end
48
- reload
49
- end
50
-
51
44
  def index_usage!(organization)
52
45
  organization.index_usage_of! self, self
53
46
  [chapters, complements].flatten.each { |item| item.index_usage! organization }
@@ -1,5 +1,6 @@
1
1
  module GuideContainer
2
2
  extend ActiveSupport::Concern
3
+ include WithContent
3
4
 
4
5
  included do
5
6
  validates_presence_of :guide
@@ -0,0 +1,13 @@
1
+ module WithContent
2
+ extend ActiveSupport::Concern
3
+
4
+ included do
5
+ before_destroy :destroy_usages!
6
+ end
7
+
8
+ private
9
+
10
+ def destroy_usages!
11
+ Usage.destroy_usages_for self
12
+ end
13
+ end
@@ -16,6 +16,21 @@ module WithUsages
16
16
  item.is_a?(type) ? item : nil
17
17
  end
18
18
 
19
+ class_methods do
20
+ def aggregate_of(association)
21
+ super
22
+
23
+ revamp "rebuild_#{association}!" do |_, this, children, hyper|
24
+ old_children = this.send association
25
+ added_children = children - old_children
26
+ hyper.(children)
27
+ this.usages.each { |it| it.index_children!(added_children) }
28
+
29
+ this
30
+ end
31
+ end
32
+ end
33
+
19
34
  private
20
35
 
21
36
  def ensure_unused!