{"action":"created","issue":{"url":"https://api.github.com/repos/WikiWatershed/model-my-watershed/issues/604","labels_url":"https://api.github.com/repos/WikiWatershed/model-my-watershed/issues/604/labels{/name}","comments_url":"https://api.github.com/repos/WikiWatershed/model-my-watershed/issues/604/comments","events_url":"https://api.github.com/repos/WikiWatershed/model-my-watershed/issues/604/events","html_url":"https://github.com/WikiWatershed/model-my-watershed/pull/604","id":96402314,"number":604,"title":"Use Geotrellis to produce TR-55 Input. ","user":{"login":"jamesmcclain","id":11281373,"avatar_url":"https://avatars.githubusercontent.com/u/11281373?v=3","gravatar_id":"","url":"https://api.github.com/users/jamesmcclain","html_url":"https://github.com/jamesmcclain","followers_url":"https://api.github.com/users/jamesmcclain/followers","following_url":"https://api.github.com/users/jamesmcclain/following{/other_user}","gists_url":"https://api.github.com/users/jamesmcclain/gists{/gist_id}","starred_url":"https://api.github.com/users/jamesmcclain/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jamesmcclain/subscriptions","organizations_url":"https://api.github.com/users/jamesmcclain/orgs","repos_url":"https://api.github.com/users/jamesmcclain/repos","events_url":"https://api.github.com/users/jamesmcclain/events{/privacy}","received_events_url":"https://api.github.com/users/jamesmcclain/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/WikiWatershed/model-my-watershed/labels/in%20review","name":"in review","color":"ededed"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-07-21T19:47:58Z","updated_at":"2015-07-23T19:23:28Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/WikiWatershed/model-my-watershed/pulls/604","html_url":"https://github.com/WikiWatershed/model-my-watershed/pull/604","diff_url":"https://github.com/WikiWatershed/model-my-watershed/pull/604.diff","patch_url":"https://github.com/WikiWatershed/model-my-watershed/pull/604.patch"},"body":"Connects #585\r\n\r\n**To Run**\r\n\r\nDo all of the things needed to run https://github.com/WikiWatershed/model-my-watershed/pull/589\r\n\r\n** Caveats **\r\n\r\n   1. Many of the caveats which apply to https://github.com/WikiWatershed/model-my-watershed/pull/589 also apply here, in particular the small size of the test area.\r\n   2. Do not overlap reclassifications and/or BMPs.  There is no fundamental reason why these cannot overlap on the user's screen, but they must be provided to the code as a non-intersecting collection, which the current front-end code does not do.  At present, overlaps cause undefined results.\r\n   3. Certain BMPS like \"infiltration basins\" and \"porous paving\" are virtually unusable because they are restricted to certain soil types.  Since you cannot tell which areas are allowed and which aren't chances are using either of those BMPs will raise an error.\r\n   4. The water quality results may or may not be valid: those calculations need to know the area of a tile, and the value currently being used may not be correct.\r\n\r\n![screenshot from 2015-07-23 15 13 36](https://cloud.githubusercontent.com/assets/11281373/8859856/00a0ce84-314e-11e5-9a81-fedd832a6336.png)\r\n\r\n![screenshot from 2015-07-23 15 13 06](https://cloud.githubusercontent.com/assets/11281373/8859864/03e53724-314e-11e5-8df2-0b77bbcd4954.png)\r\n\r\n![screenshot from 2015-07-23 15 14 03](https://cloud.githubusercontent.com/assets/11281373/8859867/09a2c1c2-314e-11e5-9ec7-cffa076b40a4.png)\r\n\r\n![screenshot from 2015-07-23 15 14 32](https://cloud.githubusercontent.com/assets/11281373/8859873/14478ed2-314e-11e5-8e5d-9ef661d40880.png)\r\n"},"comment":{"url":"https://api.github.com/repos/WikiWatershed/model-my-watershed/issues/comments/124217226","html_url":"https://github.com/WikiWatershed/model-my-watershed/pull/604#issuecomment-124217226","issue_url":"https://api.github.com/repos/WikiWatershed/model-my-watershed/issues/604","id":124217226,"user":{"login":"jamesmcclain","id":11281373,"avatar_url":"https://avatars.githubusercontent.com/u/11281373?v=3","gravatar_id":"","url":"https://api.github.com/users/jamesmcclain","html_url":"https://github.com/jamesmcclain","followers_url":"https://api.github.com/users/jamesmcclain/followers","following_url":"https://api.github.com/users/jamesmcclain/following{/other_user}","gists_url":"https://api.github.com/users/jamesmcclain/gists{/gist_id}","starred_url":"https://api.github.com/users/jamesmcclain/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jamesmcclain/subscriptions","organizations_url":"https://api.github.com/users/jamesmcclain/orgs","repos_url":"https://api.github.com/users/jamesmcclain/repos","events_url":"https://api.github.com/users/jamesmcclain/events{/privacy}","received_events_url":"https://api.github.com/users/jamesmcclain/received_events","type":"User","site_admin":false},"created_at":"2015-07-23T19:23:28Z","updated_at":"2015-07-23T19:23:28Z","body":"I added some new tests which pass locally but fail on Jenkins.\r\n```\r\n======================================================================\r\nERROR: test_census (app.apps.modeling.tests.ExerciseGeoprocessing)\r\n----------------------------------------------------------------------\r\nTraceback (most recent call last):\r\n  File \"/opt/app/apps/modeling/tests.py\", line 54, in test_census\r\n    actual = geoprocessing.geojson_to_census(self.polygon)\r\n  File \"/opt/app/apps/modeling/geoprocessing.py\", line 103, in geojson_to_census\r\n    data = json.loads(geotrellis(polygon))\r\n  File \"/usr/lib/python2.7/json/__init__.py\", line 338, in loads\r\n    return _default_decoder.decode(s)\r\n  File \"/usr/lib/python2.7/json/decoder.py\", line 366, in decode\r\n    obj, end = self.raw_decode(s, idx=_w(s, 0).end())\r\nTypeError: expected string or buffer\r\n\r\n======================================================================\r\nERROR: test_geotrellis_good (app.apps.modeling.tests.ExerciseGeoprocessing)\r\n----------------------------------------------------------------------\r\nTraceback (most recent call last):\r\n  File \"/opt/app/apps/modeling/tests.py\", line 41, in test_geotrellis_good\r\n    self.assertEqual(json.loads(actual), json.loads(expected), \"Discrepant answer from Geotrellis\")  # noqa\r\n  File \"/usr/lib/python2.7/json/__init__.py\", line 338, in loads\r\n    return _default_decoder.decode(s)\r\n  File \"/usr/lib/python2.7/json/decoder.py\", line 366, in decode\r\n    obj, end = self.raw_decode(s, idx=_w(s, 0).end())\r\nTypeError: expected string or buffer\r\n\r\n======================================================================\r\nERROR: test_survey (app.apps.modeling.tests.ExerciseGeoprocessing)\r\n----------------------------------------------------------------------\r\nTraceback (most recent call last):\r\n  File \"/opt/app/apps/modeling/tests.py\", line 49, in test_survey\r\n    actual = geoprocessing.geojson_to_survey(self.polygon)\r\n  File \"/opt/app/apps/modeling/geoprocessing.py\", line 173, in geojson_to_survey\r\n    data = json.loads(geotrellis(polygon))\r\n  File \"/usr/lib/python2.7/json/__init__.py\", line 338, in loads\r\n    return _default_decoder.decode(s)\r\n  File \"/usr/lib/python2.7/json/decoder.py\", line 366, in decode\r\n    obj, end = self.raw_decode(s, idx=_w(s, 0).end())\r\nTypeError: expected string or buffer\r\n\r\n======================================================================\r\nERROR: test_tr55_job_runs_in_chain (app.apps.modeling.tests.TaskRunnerTestCase)\r\n----------------------------------------------------------------------\r\nTraceback (most recent call last):\r\n  File \"/usr/local/lib/python2.7/dist-packages/django/test/utils.py\", line 196, in inner\r\n    return test_func(*args, **kwargs)\r\n  File \"/opt/app/apps/modeling/tests.py\", line 111, in test_tr55_job_runs_in_chain\r\n    self.job.id)\r\n  File \"/opt/app/apps/modeling/views.py\", line 215, in _initiate_tr55_job_chain\r\n    return chain(job_chain).apply_async(link_error=save_job_error.s(job_id))\r\n  File \"/usr/local/lib/python2.7/dist-packages/celery/canvas.py\", line 251, in apply_async\r\n    return _apply(args, kwargs, **options)\r\n  File \"/usr/local/lib/python2.7/dist-packages/celery/app/builtins.py\", line 275, in apply_async\r\n    return self.apply(args, kwargs, **options)\r\n  File \"/usr/local/lib/python2.7/dist-packages/celery/app/builtins.py\", line 302, in apply\r\n    last and (last.get(), ),\r\n  File \"/usr/local/lib/python2.7/dist-packages/celery/result.py\", line 870, in get\r\n    raise self.result\r\nTypeError: expected string or buffer\r\n\r\n======================================================================\r\nFAIL: test_geotrellis_bad (app.apps.modeling.tests.ExerciseGeoprocessing)\r\n----------------------------------------------------------------------\r\nTraceback (most recent call last):\r\n  File \"/opt/app/apps/modeling/tests.py\", line 46, in test_geotrellis_bad\r\n    self.assertEqual(actual, expected, \"Discrepant answer from Geotrellis\")\r\nAssertionError: Discrepant answer from Geotrellis\r\n```"}}