Go to file
Neil Gupta 94c5ae0267 Fix Submission#retrieve_lti_tii_score to be more robust
Also adds backtrace to TII helper error emails

Fixes CNVS-31702

Test plan:
* Setup TII as an LTI tool
* As a teacher, create a new assignment
* As a student, submit the assignment
* Start rails console
*   a = Assignment.find(<assignment_id>)
*   s = a.submissions.first
*   s.turnitin_data = {
      last_processed_attempt: 1,
      "attachment_42" => {
        status: "error",
        outcome_response: {
          outcomes_tool_placement_url: "https://api.turnitin.com/api/lti/1p0/invalid?lang=en_us",
          paperid: "607954245",
          lis_result_sourcedid: "10-5-42-8-invalid"
        },
        public_error_message: "Turnitin has not returned a score after 11 attempts to retrieve one."
      }
    }
*   s.save
*   s.retrieve_lti_tii_score

It should return nil (and definitely not crash with "undefined method `key?' for 1:Fixnum")

Change-Id: I12929a002b746bdce65373ba23439fa5757e54d2
Reviewed-on: https://gerrit.instructure.com/89865
Reviewed-by: Keith T. Garner <kgarner@instructure.com>
Tested-by: Jenkins
QA-Review: KC Naegle <knaegle@instructure.com>
Product-Review: Keith T. Garner <kgarner@instructure.com>
Product-Review: Neil Gupta <ngupta@instructure.com>
2016-09-12 19:46:47 +00:00
Gemfile.d bump switchman 2016-09-09 19:49:19 +00:00
app Fix Submission#retrieve_lti_tii_score to be more robust 2016-09-12 19:46:47 +00:00
bin avoid port conflicts for remote debugging 2016-06-02 15:37:32 +00:00
client_apps move "old_unsupported_react" to client_apps 2016-08-05 19:26:33 +00:00
config clean up duplicate account tabs code 2016-09-12 18:26:53 +00:00
db/migrate add migration_id index to context_external_tools 2016-09-08 15:18:26 +00:00
doc Live events - Attachments 2016-09-09 16:37:54 +00:00
docker-compose Fix consul init values when running docker 2016-09-07 17:09:32 +00:00
frontend_build upgrade to node 6 2016-08-09 23:37:07 +00:00
gems use find_each over each for terms report 2016-09-06 19:06:36 +00:00
guard let people write specs in jsx 2015-12-05 09:52:45 +00:00
lib Fix Submission#retrieve_lti_tii_score to be more robust 2016-09-12 19:46:47 +00:00
public polyfill Promise & a few other methods for ie11 2016-09-12 19:09:48 +00:00
script polyfill Promise & a few other methods for ie11 2016-09-12 19:09:48 +00:00
spec Fix Submission#retrieve_lti_tii_score to be more robust 2016-09-12 19:46:47 +00:00
.babelrc Bump Babel to version 6 2016-07-15 21:55:10 +00:00
.bowerrc introduced bower to manage js dependencies 2013-12-13 17:45:57 +00:00
.dockerignore docker-compose based dev environment 2015-03-30 20:59:48 +00:00
.fontcustom-manifest.json add "mastery-path" icon to the existing canvas icon-font 2016-09-07 02:39:21 +00:00
.gitignore upgrade to node 6 2016-08-09 23:37:07 +00:00
.i18nignore bump rails 3 to github branch for ruby 2.2 compatibility 2015-02-18 22:55:20 +00:00
.i18nrc upgrade to node 6 2016-08-09 23:37:07 +00:00
.jshintrc make jslint settings more sane 2012-08-17 11:04:40 -06:00
.npmrc fix brand config previewing and skipping 2015-10-27 16:16:15 +00:00
.nvmrc upgrade to node 6 2016-08-09 23:37:07 +00:00
.rubocop.yml Moving ParallelAssignment back to style 2016-01-18 21:47:22 +00:00
.selinimumignore spec: selinimize more things, fixes SD-1260 2016-06-20 19:43:14 +00:00
.travis.yml more travis builds 2014-02-10 16:23:19 +00:00
CONTRIBUTING.md Add guidelines section to CONTRIBUTING.md 2016-01-13 19:50:06 +00:00
COPYRIGHT Initial commit. 2011-01-31 18:57:29 -07:00
Gemfile fix plugin loading from outside rails root directory 2016-07-22 15:18:59 +00:00
Guardfile ensure node_modules are up-to-date for guard & compile_assets 2015-07-16 19:17:54 +00:00
LICENSE Initial commit. 2011-01-31 18:57:29 -07:00
README.md remove travis.ci badge until we are re-enabled 2014-07-01 23:08:00 +00:00
Rakefile remove rails 2 support 2014-08-06 18:16:19 +00:00
bower.json Bump version of react-tray to 2.0.1 2016-08-08 21:16:43 +00:00
code_of_conduct.md contributor code of conduct 2014-12-23 18:13:59 +00:00
config.ru start adding rails 3.0 support 2013-03-22 19:08:40 +00:00
docker-compose.yml fix local docker selenium configuration 2016-06-21 21:21:45 +00:00
gulpfile.js polyfill Promise & a few other methods for ie11 2016-09-12 19:09:48 +00:00
issue_template.md Add issue_template.md for GitHub issues 2016-02-17 21:00:48 +00:00
karma.conf.js Make karma load source maps from non-karma generated sources 2016-09-08 15:45:25 +00:00
package.json polyfill Promise & a few other methods for ie11 2016-09-12 19:09:48 +00:00
webpack.config.babel.js Bump Babel to version 6 2016-07-15 21:55:10 +00:00
webpack.production.config.babel.js Bump Babel to version 6 2016-07-15 21:55:10 +00:00
webpack.test.config.babel.js Bump Babel to version 6 2016-07-15 21:55:10 +00:00

README.md

Canvas LMS

Canvas is a new, open-source LMS by Instructure Inc. It is released under the AGPLv3 license for use by anyone interested in learning more about or using learning management systems.

Please see our main wiki page for more information

Installation

Detailed instructions for installation and configuration of Canvas are provided on our wiki.