Exemple #1
0
    def test_deletion(self, user_response):
        tab = GeneTab()
        model = Model()
        gene1 = Gene("r1")
        gene2 = Gene("r2")
        gene3 = Gene("r3")
        model.add_gene(gene1)
        model.add_gene(gene2)
        model.add_gene(gene3)
        model.setup_gene_table()
        assert len(model.genes) == model.QtGeneTable.rowCount() == 3
        tab.set_model(model)
        tab.confirmDeletion = Mock(return_value=user_response)

        item = tab.dataTable.item(1, 0)
        selected_gene = item.link
        source_index = tab.dataTable.indexFromItem(item)
        view_index = tab.proxyModel.mapFromSource(source_index)
        tab.dataView.selectRow(view_index.row())

        assert tab.confirmDeletion.called is False
        tab.deleteItemSlot()
        assert tab.confirmDeletion.called is True
        assert (selected_gene in model.genes) is not user_response
        assert tab.dataTable.findItems(selected_gene.id) is not user_response
        if user_response:
            assert len(model.genes) == model.QtGeneTable.rowCount() == 2
Exemple #2
0
 def test_edit_item_dialog_reject(self):
     tab = GeneTab()
     model = Model()
     gene1 = Gene("r1")
     model.add_gene(gene1)
     model.setup_gene_table()
     model.QtGeneTable.update_row_from_link = Mock()
     tab.set_model(model)
     tab.dataView.selectRow(0)
     assert model.QtGeneTable.update_row_from_link.called is False
     tab.editItemSlot()
     assert model.QtGeneTable.update_row_from_link.called is False