Skip to content

Commit

Permalink
failing test for case attachments
Browse files Browse the repository at this point in the history
  • Loading branch information
snopoke committed Sep 12, 2016
1 parent 92cf48b commit 9a9de02
Showing 1 changed file with 35 additions and 2 deletions.
37 changes: 35 additions & 2 deletions corehq/ex-submodules/casexml/apps/case/tests/test_multimedia.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
import uuid
import os
import hashlib
from unittest.case import skip

from django.conf import settings
from django.template import Template, Context
Expand All @@ -14,13 +15,14 @@
from casexml.apps.case.tests.util import TEST_DOMAIN_NAME
from casexml.apps.case.xml import V2
from corehq.apps.receiverwrapper.util import submit_form_locally
from corehq.blobs import get_blob_db
from corehq.blobs.tests.util import TemporaryS3BlobDB
from corehq.form_processor.interfaces.dbaccessors import CaseAccessors, FormAccessors
from couchforms.models import XFormInstance
from dimagi.utils.parsing import json_format_datetime
from corehq.form_processor.interfaces.processor import FormProcessorInterface
from corehq.form_processor.tests.utils import FormProcessorTestUtils, run_with_all_backends
from corehq.util.test_utils import TestFileMixin

from corehq.util.test_utils import TestFileMixin, trap_extra_setup

TEST_CASE_ID = "EOL9FIAKIQWOFXFOH0QAMWU64"
CREATE_XFORM_ID = "6RGAZTETE3Z2QC0PE2DKM88MO"
Expand Down Expand Up @@ -300,3 +302,34 @@ def test_sync_log_invalidation_bug(self):
# this used to fail before we fixed http://manage.dimagi.com/default.asp?158373
self._doSubmitUpdateWithMultimedia(new_attachments=['commcare_logo_file'], removes=[],
sync_token=sync_log._id)


@skip("Case attachments don't work with S3 API yet")
class CaseMultimediaS3DBTest(BaseCaseMultimediaTest):
"""
Tests new attachments for cases and case properties
Spec: https://github.com/dimagi/commcare/wiki/CaseAttachmentAPI
"""

def setUp(self):
super(CaseMultimediaS3DBTest, self).setUp()
with trap_extra_setup(AttributeError, msg="S3_BLOB_DB_SETTINGS not configured"):
config = settings.S3_BLOB_DB_SETTINGS
self.s3db = TemporaryS3BlobDB(config)
assert get_blob_db() is self.s3db, (get_blob_db(), self.s3db)

def tearDown(self):
self.s3db.close()
super(CaseMultimediaS3DBTest, self).tearDown()

@run_with_all_backends
def test_case_attachment(self):
single_attach = 'fruity_file'
xform, case = self._doCreateCaseWithMultimedia(attachments=[single_attach])

self.assertEqual(1, len(case.case_attachments))
self.assertTrue(single_attach in case.case_attachments)
self.assertEqual(
self._calc_file_hash(single_attach),
hashlib.md5(case.get_attachment(single_attach)).hexdigest()
)

0 comments on commit 9a9de02

Please sign in to comment.