def METHOD_NAME(self):
    # We should have 14 signals in the database
    # 2 parent signals
    self.assertEqual(2, Signal.objects.filter(children__isnull=False).distinct().count())
    # 4 child signals
    self.assertEqual(4, Signal.objects.filter(parent__isnull=False).count())
    # 8 "normal: signals
    self.assertEqual(8, Signal.objects.exclude(Q(children__isnull=False) | Q(parent__isnull=False)).count())
    response = self.client.get(self.endpoint, **self.request_headers)
    self.assertEqual(response.status_code, HTTP_200_OK)
    signals_qs = Signal.objects.exclude(parent__isnull=False).order_by('-created_at')
    data = response.json()
    self.assertEqual(len(data['results']), signals_qs.count())
    for signal, signal_response_data in zip(list(signals_qs), data['results']):
        self.assertEqual(signal.get_id_display(), signal_response_data['_display'])
        self.assertEqual(str(signal.uuid), signal_response_data['uuid'])
        self.assertEqual(signal.get_id_display(), signal_response_data['id_display'])
        self.assertEqual(signal.text, signal_response_data['text'])
        if signal.status.state in [AFGEHANDELD, GEANNULEERD, GESPLITST, ]:
            self.assertEqual('CLOSED', signal_response_data['status']['state'])
            self.assertEqual('Afgesloten', signal_response_data['status']['state_display'])
        else:
            self.assertEqual('OPEN', signal_response_data['status']['state'])
            self.assertEqual('Open', signal_response_data['status']['state_display'])