Skip to content

Commit

Permalink
Merge pull request #3515 from jamalex/0.13-fixes
Browse files Browse the repository at this point in the history
0.13.x (plus #3514) into central-develop
  • Loading branch information
jamalex committed Apr 12, 2015
2 parents a253c1b + 5841df2 commit c3cc5ef
Show file tree
Hide file tree
Showing 208 changed files with 18 additions and 26 deletions.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.

This file was deleted.

Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
2 changes: 0 additions & 2 deletions kalite/distributed/templates/distributed/homepage.html
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,6 @@
<!-- import handlebars templates here -->
<script src="{% url 'handlebars_templates' module_name="playlists" %}"></script>
<script type="text/javascript" src="{% static 'js/playlist/models.js' %}"></script>
<script type="text/javascript" src="{% static 'js/jquery.dotdotdot.min.js' %}"></script>
<script type="text/javascript" src="{% static 'js/distributed/homepage_playlists.js' %}"></script>
{% if settings.AUTO_LOAD_TEST %}{# TODO(bcipolli): eliminate this, make the load testing app inherit from / override this page #}
<script>
if (window.parent.frames.length === 0) {
Expand Down
2 changes: 1 addition & 1 deletion python-packages/securesync/engine/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,7 @@ def full_clean(self, exclude=None, imported=False):
"""
exclude = exclude or []
if imported:
exclude = list(set(exclude + self._import_excluded_validation_fields))
exclude = list(set(tuple(exclude) + self._import_excluded_validation_fields))
if self.deleted:
exclude = exclude + [f.name for f in self._meta.fields if isinstance(f, models.ForeignKey) ]
return super(SyncedModel, self).full_clean(exclude=exclude)
Expand Down
19 changes: 17 additions & 2 deletions python-packages/securesync/tests/regression_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,15 @@
from mock import patch

from django.test import TestCase
from securesync.devices.views import central_server_down_or_error
from ..devices.views import central_server_down_or_error
from ..devices.models import SyncedModel

class DummySyncedModelClass(SyncedModel):
pass

class CentralServerDownMessageTest(TestCase):
""" Tests that if the central server is down, then an error message
sasying as much is returned. Otherwise assume that an actual error message
saying as much is returned. Otherwise assume that an actual error message
was returned by the central server, and pass it along.
"""

Expand All @@ -27,3 +30,15 @@ def test_error_message_when_central_server_up(self, mock):
error_msg = "Some error message ah!"
expected_msg = "Some error message ah!"
self.assertEqual(central_server_down_or_error(error_msg)['error_msg'], expected_msg)


class SimpleBugRegressionTests(TestCase):
""" Tests for simple regressions, e.g. caused by syntax or runtime errors.
"""

def test_for_full_clean_concatenation_bug(self):
""" Tests that SyncedModel.full_clean does not regress with the error:
`TypeError: can only concatenate list (not "tuple") to list`
"""
m = DummySyncedModelClass()
m.full_clean(imported=True)

0 comments on commit c3cc5ef

Please sign in to comment.