'Check arbitrary workflow with classification data'

def test_scores_updates_cls(self):

    self.send_signal(self.widget.Inputs.data, self.iris)
    self.send_signal(self.widget.Inputs.scorer, self.log_reg, 1)
    self.assertEqual(self.get_output(self.widget.Outputs.scores).X.shape, (len(self.iris.domain.attributes), 5))
    self.widget.score_checks[2].setChecked(False)
    self.assertEqual(self.get_output(self.widget.Outputs.scores).X.shape, (len(self.iris.domain.attributes), 4))
    self.widget.score_checks[2].setChecked(True)
    self.assertEqual(self.get_output(self.widget.Outputs.scores).X.shape, (len(self.iris.domain.attributes), 5))
    self.send_signal(self.widget.Inputs.scorer, self.log_reg, 2)
    self.assertEqual(self.get_output(self.widget.Outputs.scores).X.shape, (len(self.iris.domain.attributes), 8))
    self.send_signal(self.widget.Inputs.scorer, None, 1)
    self.assertEqual(self.get_output(self.widget.Outputs.scores).X.shape, (len(self.iris.domain.attributes), 5))
    self.send_signal(self.widget.Inputs.scorer, self.log_reg, 1)
    self.assertEqual(self.get_output(self.widget.Outputs.scores).X.shape, (len(self.iris.domain.attributes), 8))
    self.send_signal(self.widget.Inputs.scorer, self.lin_reg, 3)
    self.assertEqual(self.get_output(self.widget.Outputs.scores).X.shape, (len(self.iris.domain.attributes), 9))
