Example #1
0
    def test_drag_information_are_correct(self):
        rw = RecipesWidget()
        self.assertIn('application/vnd.re-eat.recipe', rw.mimeTypes())

        items = [rw.item(i) for i in (0, 1)]
        ids = [item.data(Qt.UserRole) for item in items]
        data = rw.mimeData(items)
        stream = QDataStream(data.data('application/vnd.re-eat.recipe'))
        result = []
        while not stream.atEnd():
            result.append(stream.readInt())
        self.assertListEqual(result, ids)
Example #2
0
    def test_drag_information_are_correct(self):
        rw = RecipesWidget()
        self.assertIn('application/vnd.re-eat.recipe', rw.mimeTypes())

        items = [rw.item(i) for i in (0, 1)]
        ids = [item.data(Qt.UserRole) for item in items]
        data = rw.mimeData(items)
        stream = QDataStream(data.data('application/vnd.re-eat.recipe'))
        result = []
        while not stream.atEnd():
            result.append(stream.readInt())
        self.assertListEqual(result, ids)
Example #3
0
    def test_dropping_the_data_emits_the_signal(self):
        rw = RecipesWidget()
        self.assertEqual(rw.supportedDropActions(),
                         Qt.CopyAction | Qt.MoveAction)
        self.assertIn('application/vnd.re-eat.meal_recipe', rw.mimeTypes())
        assert rw.viewport().acceptDrops()

        rw.recipeRemoved = DummySignal()

        mimeData = QMimeData()
        encodedData = QByteArray()
        stream = QDataStream(encodedData, QIODevice.WriteOnly)
        stream.writeInt(1)
        stream.writeQVariant(datetime.date.today())
        stream.writeInt(2)
        mimeData.setData('application/vnd.re-eat.meal_recipe', encodedData)

        rw.dropMimeData(0, mimeData, Qt.CopyAction)
        self.assertListEqual(rw.recipeRemoved.received,
                             [(1, datetime.date.today(), 2)])
Example #4
0
    def test_dropping_the_data_emits_the_signal(self):
        rw = RecipesWidget()
        self.assertEqual(rw.supportedDropActions(),
                         Qt.CopyAction|Qt.MoveAction)
        self.assertIn('application/vnd.re-eat.meal_recipe', rw.mimeTypes())
        assert rw.viewport().acceptDrops()

        rw.recipeRemoved = DummySignal()

        mimeData = QMimeData()
        encodedData = QByteArray()
        stream = QDataStream(encodedData, QIODevice.WriteOnly)
        stream.writeInt(1)
        stream.writeQVariant(datetime.date.today())
        stream.writeInt(2)
        mimeData.setData('application/vnd.re-eat.meal_recipe', encodedData)

        rw.dropMimeData(0, mimeData, Qt.CopyAction)
        self.assertListEqual(rw.recipeRemoved.received,
                             [(1, datetime.date.today(), 2)])