From f88db11e4e6060c3f4520eded9bf1f41699ee3b0 Mon Sep 17 00:00:00 2001
From: David Barnes <barnesdavidj@gmail.com>
Date: Mon, 24 Oct 2022 20:11:30 -0400
Subject: [PATCH] Fix bug where iterable length was not shown on dict type. Fix
 test for memoryview to no longer look for an iterable length.

---
 .../templates/django_dump_die/output_types/complex_type.html    | 2 +-
 django_dump_die/templatetags/dump_die.py                        | 2 ++
 tests/test_views/test_complex_type.py                           | 2 +-
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/django_dump_die/templates/django_dump_die/output_types/complex_type.html b/django_dump_die/templates/django_dump_die/output_types/complex_type.html
index 178b387..48463ae 100644
--- a/django_dump_die/templates/django_dump_die/output_types/complex_type.html
+++ b/django_dump_die/templates/django_dump_die/output_types/complex_type.html
@@ -1,5 +1,5 @@
 
-<span class="type" title="{{ type }}">{{ type }}{% if is_iterable %}:{{ object|length }}{% endif %}</span>
+<span class="type" title="{{ type }}">{{ type }}{% if is_iterable or is_dict %}:{{ object|length }}{% endif %}</span>
 
 {% if intermediate %}
   <code class="intermediate">{{ intermediate }}</code>
diff --git a/django_dump_die/templatetags/dump_die.py b/django_dump_die/templatetags/dump_die.py
index 0dfeb6a..f90c2cd 100644
--- a/django_dump_die/templatetags/dump_die.py
+++ b/django_dump_die/templatetags/dump_die.py
@@ -523,6 +523,7 @@ def _handle_complex_type(
     attributes, functions = get_obj_values(obj)
 
     is_iterable_obj = is_iterable(obj) and not is_dict(obj) and not isinstance(obj, memoryview)
+    is_dict_obj = is_dict(obj)
 
     # Return information required to render object.
     context = {
@@ -535,6 +536,7 @@ def _handle_complex_type(
         'root_count': root_count,
         'type': get_obj_type(obj),
         'is_iterable': is_iterable_obj,
+        'is_dict': is_dict_obj,
         'depth': current_depth,
         'root_index_start': root_index_start,
         'root_index_end': root_index_end,
diff --git a/tests/test_views/test_complex_type.py b/tests/test_views/test_complex_type.py
index 8c96b78..447ba51 100644
--- a/tests/test_views/test_complex_type.py
+++ b/tests/test_views/test_complex_type.py
@@ -944,7 +944,7 @@ class DumpDieComplexTypeTestCase(IntegrationTestCase):
                     <span class="dumped_object" title="Dumped Object">
                         <span class="dumped_name">sample_memory_view</span>
                     </span>:
-                    <span class="type" title="memoryview">memoryview:4</span>
+                    <span class="type" title="memoryview">memoryview</span>
                     <span class="braces">{</span>
                     <a
                         class="arrow-toggle collapsed"
-- 
GitLab