def test_remove_color(self): rat = get_rat(self.raster_layer_color, 1) model = RATModel(rat) tester = QAbstractItemModelTester( model, QAbstractItemModelTester.FailureReportingMode.Warning) self.assertTrue({'R', 'G', 'B'}.issubset(rat.keys)) self.assertTrue({'R', 'G', 'B'}.issubset(model.headers)) self.assertTrue(model.has_color) column_count = model.columnCount(QModelIndex()) self.assertEqual(column_count, 17) # Remove colors self.assertTrue(model.remove_color()) self.assertEqual(model.columnCount(QModelIndex()), column_count - 4) self.assertFalse(rat.has_color) self.assertFalse(model.has_color) self.assertFalse({'R', 'G', 'B'}.issubset(rat.keys)) self.assertFalse({'R', 'G', 'B'}.issubset(model.headers)) # Add color back (with alpha) self.assertTrue(model.insert_color(2)) self.assertEqual(model.columnCount(QModelIndex()), column_count + 1) self.assertTrue({'R', 'G', 'B'}.issubset(rat.keys)) self.assertTrue({'R', 'G', 'B'}.issubset(model.headers)) self.assertTrue(rat.has_color) self.assertTrue(model.has_color) self.assertTrue(RAT_COLOR_HEADER_NAME in rat.keys)
def test_remove_column(self): rat = get_rat(self.raster_layer, 1) self.assertTrue(rat.isValid()) model = RATModel(rat) tester = QAbstractItemModelTester( model, QAbstractItemModelTester.FailureReportingMode.Warning) column_count = model.columnCount(QModelIndex()) self.assertFalse(model.remove_column(0)[0]) self.assertFalse(model.remove_column(1)[0]) self.assertTrue(model.remove_column(2)[0]) self.assertEqual(model.columnCount(QModelIndex()), column_count - 1)
def test_insert_column_color(self): rat = get_rat(self.raster_layer_color, 1) self.assertTrue(rat.isValid()) model = RATModel(rat) tester = QAbstractItemModelTester( model, QAbstractItemModelTester.FailureReportingMode.Warning) column_count = model.columnCount(QModelIndex()) field = RATField('f1', gdal.GFU_Generic, gdal.GFT_String) self.assertTrue(model.insert_column(3, field)[0]) self.assertEqual(model.columnCount(QModelIndex()), column_count + 1) self.assertEqual(model.headers.index('f1'), 3) # Error field = RATField('f1', gdal.GFU_Generic, gdal.GFT_String) self.assertFalse(model.insert_column(3, field)[0]) self.assertEqual(model.columnCount(QModelIndex()), column_count + 1)