diff --git a/madarrays/tests/test_madarray.py b/madarrays/tests/test_madarray.py
index 028ff949bae78a2c305c355127d3dc816aba75b8..0b8ab79ced84c0205fdcc58bff10dc81a82d97ad 100644
--- a/madarrays/tests/test_madarray.py
+++ b/madarrays/tests/test_madarray.py
@@ -700,6 +700,47 @@ class TestMadArray:
         string = '<MadArray at {}>'
         assert repr(ma) == string.format(hex(id(ma)))
 
+        # test with missing data, complex values, binary mask
+        x = np.copy(self.x_complex)
+        x[self.m] = np.nan
+        arr_str = np.ndarray.__str__(x)
+        arr_str = arr_str.replace('nan+0.j', '  x    ')
+
+        ma = MadArray(self.x_complex, self.m)
+        n_miss = np.count_nonzero(self.m)
+        string = 'MadArray, dtype=complex128, {} missing entries (50.0%)\n{}'
+        assert str(ma) == string.format(n_miss, arr_str)
+
+        string = '<MadArray at {}>'
+        assert repr(ma) == string.format(hex(id(ma)))
+
+        # test with missing data, complex values, complex_masking
+        x = np.copy(self.x_complex)
+        m_any = np.logical_or(self.mm, self.mp)
+        x[m_any] = np.nan
+        arr_str = np.ndarray.__str__(x)
+        arr_str = arr_str.replace('nan+0.j', '  x    ')
+
+        ma = MadArray(self.x_complex, complex_masking=True,
+                      mask_magnitude=self.mm, mask_phase=self.mp)
+        m_all = np.logical_and(self.mm, self.mp)
+        n_miss = np.count_nonzero(m_all)
+        n_miss_m = np.count_nonzero(self.mm)
+        n_miss_p = np.count_nonzero(self.mp)
+        string = \
+            'MadArray, dtype=complex128, ' \
+            '{} missing magnitudes ({:.1%}) ' \
+            'and {} missing phases ({:.1%}),  ' \
+            'including {} missing magnitudes and phases jointly ({:.1%})' \
+            '\n{}'
+        assert str(ma) == string.format(n_miss_m, n_miss_m / x.size,
+                                        n_miss_p, n_miss_p / x.size,
+                                        n_miss, n_miss / x.size,
+                                        arr_str)
+
+        string = '<MadArray at {}>'
+        assert repr(ma) == string.format(hex(id(ma)))
+
     def test_merge_masks(self):
         ma1 = MadArray(self.x_float, self.m)
         ma2 = MadArray(self.x_float, self.m2)