OCL API 2

Build: #1836 failed

Job: Run tests failed

Stages & jobs

  1. Build

  2. Test

  3. Deploy for testing

    Requires a user to start manually
  4. Release

    Requires a user to start manually

Job result summary

Completed
Duration
5 minutes
Agent
yu.openmrs.org
Revision
f0b746d7b8780c259c61e55009a07de040794e20 f0b746d7b8780c259c61e55009a07de040794e20
Fixed in
#1837 (Code changes detected)
No failed test found. A possible compilation error occurred.

Error summary

The build generated some errors. See the full build log for more details.

  File "/usr/local/lib/python3.10/site-packages/django/core/management/base.py", line 458, in execute
    output = self.handle(*args, **options)
  File "/code/core/common/management/commands/import_lookup_values.py", line 58, in handle
    self.create_concepts(source, conf['file'], ocladmin)
  File "/code/core/common/management/commands/import_lookup_values.py", line 126, in create_concepts
    Concept.persist_new(data, user)
  File "/code/core/concepts/models.py", line 732, in persist_new
    concept.set_checksums()
  File "/code/core/common/checksums.py", line 65, in set_checksums
    self.checksums = self._calculate_checksums()
  File "/code/core/common/checksums.py", line 147, in _calculate_checksums
    return self.get_all_checksums()
  File "/code/core/common/checksums.py", line 105, in get_all_checksums
    checksums[self.STANDARD_CHECKSUM_KEY] = self._calculate_standard_checksum()
  File "/code/core/common/checksums.py", line 127, in _calculate_standard_checksum
    return None if fields is None else self.generate_checksum(fields)
  File "/code/core/common/checksums.py", line 113, in generate_checksum
    return Checksum.generate(ChecksumModel._cleanup(data))
  File "/code/core/common/checksums.py", line 154, in generate
    serialized_obj = cls._serialize(obj).encode('utf-8')
  File "/code/core/common/checksums.py", line 170, in _serialize
    acc += f"{cls._serialize(obj[key])},"
  File "/code/core/common/checksums.py", line 165, in _serialize
    return json.dumps(hash(tuple(set(obj))))
TypeError: unhashable type: 'dict'

======================================================================
ERROR: test_pepfar_import (core.importers.tests.BulkImportInlineTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/mock/mock.py", line 1452, in patched
    return func(*newargs, **newkeywargs)
  File "/code/core/importers/tests.py", line 744, in test_pepfar_import
    importer.run()
  File "/code/core/importers/models.py", line 752, in run
    _result = concept_importer.delete() if action == 'delete' else concept_importer.run()
  File "/code/core/importers/models.py", line 168, in run
    return self.process()
  File "/code/core/importers/models.py", line 436, in process
    self.instance = Concept.persist_new(
  File "/code/core/concepts/models.py", line 732, in persist_new
    concept.set_checksums()
  File "/code/core/common/checksums.py", line 65, in set_checksums
    self.checksums = self._calculate_checksums()
  File "/code/core/common/checksums.py", line 147, in _calculate_checksums
    return self.get_all_checksums()
  File "/code/core/common/checksums.py", line 105, in get_all_checksums
    checksums[self.STANDARD_CHECKSUM_KEY] = self._calculate_standard_checksum()
  File "/code/core/common/checksums.py", line 127, in _calculate_standard_checksum
    return None if fields is None else self.generate_checksum(fields)
  File "/code/core/common/checksums.py", line 113, in generate_checksum
    return Checksum.generate(ChecksumModel._cleanup(data))
  File "/code/core/common/checksums.py", line 154, in generate
    serialized_obj = cls._serialize(obj).encode('utf-8')
  File "/code/core/common/checksums.py", line 170, in _serialize
    acc += f"{cls._serialize(obj[key])},"
  File "/code/core/common/checksums.py", line 165, in _serialize
    return json.dumps(hash(tuple(set(obj))))
TypeError: unhashable type: 'dict'

======================================================================
ERROR: test_reference_import (core.importers.tests.BulkImportInlineTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/mock/mock.py", line 1452, in patched
    return func(*newargs, **newkeywargs)
  File "/code/core/importers/tests.py", line 477, in test_reference_import
    importer.run()
  File "/code/core/importers/models.py", line 752, in run
    _result = concept_importer.delete() if action == 'delete' else concept_importer.run()
  File "/code/core/importers/models.py", line 168, in run
    return self.process()
  File "/code/core/importers/models.py", line 436, in process
    self.instance = Concept.persist_new(
  File "/code/core/concepts/models.py", line 732, in persist_new
    concept.set_checksums()
  File "/code/core/common/checksums.py", line 65, in set_checksums
    self.checksums = self._calculate_checksums()
  File "/code/core/common/checksums.py", line 147, in _calculate_checksums
    return self.get_all_checksums()
  File "/code/core/common/checksums.py", line 105, in get_all_checksums
    checksums[self.STANDARD_CHECKSUM_KEY] = self._calculate_standard_checksum()
  File "/code/core/common/checksums.py", line 127, in _calculate_standard_checksum
    return None if fields is None else self.generate_checksum(fields)
  File "/code/core/common/checksums.py", line 113, in generate_checksum
    return Checksum.generate(ChecksumModel._cleanup(data))
  File "/code/core/common/checksums.py", line 154, in generate
    serialized_obj = cls._serialize(obj).encode('utf-8')
  File "/code/core/common/checksums.py", line 170, in _serialize
    acc += f"{cls._serialize(obj[key])},"
  File "/code/core/common/checksums.py", line 165, in _serialize
    return json.dumps(hash(tuple(set(obj))))
TypeError: unhashable type: 'dict'

----------------------------------------------------------------------
Ran 796 tests in 236.243s

FAILED (errors=6)
Preserving test database for alias 'default' ('test_postgres')...
1
Stopping ocl-oclapi2-rt_db_1 ...
Stopping ocl-oclapi2-rt_es_1 ...
Stopping ocl-oclapi2-rt_db_1 ... done
Stopping ocl-oclapi2-rt_es_1 ... done
Removing ocl-oclapi2-rt_db_1 ...
Removing ocl-oclapi2-rt_es_1 ...
Removing ocl-oclapi2-rt_es_1 ... done
Removing ocl-oclapi2-rt_db_1 ... done
Removing network ocl-oclapi2-rt_default
Removing volume ocl-oclapi2-rt_postgres-data
Removing volume ocl-oclapi2-rt_es-data
Removing volume ocl-oclapi2-rt_redis-data