@@ -2693,6 +2693,11 @@ void TestQgsProcessing::parameterEnum()
2693
2693
iNumbers = QgsProcessingParameters::parameterAsEnums ( def.get (), params, context );
2694
2694
QCOMPARE ( iNumbers, QList<int >() << 0 << 2 );
2695
2695
2696
+ // empty list
2697
+ params.insert ( " non_optional" , QVariantList () );
2698
+ iNumbers = QgsProcessingParameters::parameterAsEnums ( def.get (), params, context );
2699
+ QCOMPARE ( iNumbers, QList<int >() );
2700
+
2696
2701
QCOMPARE ( def->valueAsPythonString ( QVariantList () << 1 << 2 , context ), QStringLiteral ( " [1,2]" ) );
2697
2702
QCOMPARE ( def->valueAsPythonString ( QStringLiteral ( " 1,2" ), context ), QStringLiteral ( " [1,2]" ) );
2698
2703
@@ -2760,6 +2765,10 @@ void TestQgsProcessing::parameterEnum()
2760
2765
params.insert ( " optional" , QVariant () );
2761
2766
iNumbers = QgsProcessingParameters::parameterAsEnums ( def.get (), params, context );
2762
2767
QCOMPARE ( iNumbers, QList<int >() << 1 << 2 );
2768
+ // empty list
2769
+ params.insert ( " optional" , QVariantList () );
2770
+ iNumbers = QgsProcessingParameters::parameterAsEnums ( def.get (), params, context );
2771
+ QCOMPARE ( iNumbers, QList<int >() );
2763
2772
2764
2773
code = def->asScriptCode ();
2765
2774
QCOMPARE ( code, QStringLiteral ( " ##optional=optional enum multiple A;B;C 1,2" ) );
0 commit comments