3
3
from plotly .exceptions import PlotlyError
4
4
5
5
import plotly .tools as tls
6
+ from plotly .tests .test_optional .optional_utils import NumpyTestUtilsMixin
6
7
import math
7
8
from nose .tools import raises
8
9
@@ -246,7 +247,7 @@ def test_simple_streamline(self):
246
247
expected_strln_0_100 ['x' ])
247
248
248
249
249
- class TestDendrogram (TestCase ):
250
+ class TestDendrogram (NumpyTestUtilsMixin , TestCase ):
250
251
251
252
def test_default_dendrogram (self ):
252
253
X = np .array ([[1 , 2 , 3 , 4 ], [1 , 1 , 3 , 4 ], [1 , 2 , 1 , 4 ], [1 , 2 , 3 , 1 ]])
@@ -297,24 +298,17 @@ def test_default_dendrogram(self):
297
298
'showline' : True ,
298
299
'rangemode' : 'tozero' ,
299
300
'type' : 'linear' },
300
- 'hovermode' : 'closest' }
301
-
302
- # Make sure data is as expected
303
- self .assertEqual (len (dendro ['data' ]), len (expected_data ))
304
- for i in range (1 , len (dendro ['data' ])):
305
- self .assertTrue (np .allclose (dendro ['data' ][i ]['x' ],
306
- expected_data [i ]['x' ]))
307
- self .assertTrue (np .allclose (dendro ['data' ][i ]['y' ],
308
- expected_data [i ]['y' ]))
309
-
310
- # Make sure layout is as expected
311
- self .assertTrue (np .array_equal (dendro ['layout' ]['xaxis' ]['ticktext' ],
312
- expected_layout ['xaxis' ]['ticktext' ]))
313
- self .assertTrue (np .array_equal (dendro ['layout' ]['xaxis' ]['tickvals' ],
314
- expected_layout ['xaxis' ]['tickvals' ]))
315
- self .assertEqual (dendro ['layout' ]['xaxis' ]['ticks' ], 'outside' )
316
- self .assertEqual (dendro ['layout' ]['yaxis' ]['ticks' ], 'outside' )
317
- self .assertEqual (dendro ['layout' ]['width' ], expected_layout ['width' ])
301
+ 'hovermode' : 'closest' }
302
+
303
+ expected_dendro = {'data' : expected_data , 'layout' : expected_layout }
304
+ self .assertEqual (len (dendro ['data' ]), 3 )
305
+
306
+ # this is actually a bit clearer when debugging tests.
307
+ self .assert_dict_equal (dendro ['data' ][0 ], expected_dendro ['data' ][0 ])
308
+ self .assert_dict_equal (dendro ['data' ][1 ], expected_dendro ['data' ][1 ])
309
+ self .assert_dict_equal (dendro ['data' ][2 ], expected_dendro ['data' ][2 ])
310
+
311
+ self .assert_dict_equal (dendro ['layout' ], expected_dendro ['layout' ])
318
312
319
313
def test_dendrogram_random_matrix (self ):
320
314
# create a random uncorrelated matrix
0 commit comments