def _matches(self, series): equals = self._get_equals_function(series) if len(self.as_dict) != len(series): return False for key in self.as_dict: if not equals(series[key], self.as_dict[key]): return False return True
def lists_match(list1, list2, places=None): """ Compares two lists and returns True if they are exactly the same, False otherwise. places: int The number of decimal places to check when comparing data values. Defaults to None, in which case full equality is checked (good for ints, but not for floats). """ return len(list1) == len(list2) and \ all([equals(list1[i], list2[i], places=places) for i in xrange(len(list1))])
def _matches(self, dataframe): expected_num_rows = len(self.as_list) if expected_num_rows != dataframe.shape[0]: return False row_lengths = map(len, self.as_list) if len(set(row_lengths)) != 1: # row lengths are not all the same return False expected_num_columns = row_lengths[0] if expected_num_columns != dataframe.shape[1]: return False for i, row in enumerate(self.as_list): actual_row = dataframe.ix[i].tolist() for j, expected in enumerate(row): if not equals(actual_row[j], expected, places=self.places): return False return True
def _numeric_equals(self, val1, val2): return equals(val1, val2, self.places)