mirror of
https://github.com/Kingsrook/qqq.git
synced 2025-07-18 13:10:44 +00:00
CE-882 Add TRUE and FALSE operators
This commit is contained in:
@ -42,7 +42,6 @@ import java.util.stream.Collectors;
|
||||
import com.kingsrook.qqq.backend.core.actions.ActionHelper;
|
||||
import com.kingsrook.qqq.backend.core.actions.values.QValueFormatter;
|
||||
import com.kingsrook.qqq.backend.core.context.QContext;
|
||||
import com.kingsrook.qqq.backend.core.exceptions.QException;
|
||||
import com.kingsrook.qqq.backend.core.exceptions.QValueException;
|
||||
import com.kingsrook.qqq.backend.core.logging.QLogger;
|
||||
import com.kingsrook.qqq.backend.core.model.actions.AbstractTableActionInput;
|
||||
@ -592,9 +591,17 @@ public abstract class AbstractRDBMSAction
|
||||
expectedNoOfParams = 2;
|
||||
break;
|
||||
}
|
||||
default:
|
||||
case TRUE:
|
||||
{
|
||||
throw new IllegalArgumentException("Unexpected operator: " + criterion.getOperator());
|
||||
clause = " 1 = 1 ";
|
||||
expectedNoOfParams = 0;
|
||||
break;
|
||||
}
|
||||
case FALSE:
|
||||
{
|
||||
clause = " 0 = 1 ";
|
||||
expectedNoOfParams = 0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -99,6 +99,34 @@ public class RDBMSQueryActionTest extends RDBMSActionTest
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
@Test
|
||||
public void testTrueQuery() throws QException
|
||||
{
|
||||
QueryInput queryInput = initQueryRequest();
|
||||
queryInput.setFilter(new QQueryFilter(new QFilterCriteria("email", QCriteriaOperator.TRUE)));
|
||||
QueryOutput queryOutput = new RDBMSQueryAction().execute(queryInput);
|
||||
assertEquals(5, queryOutput.getRecords().size(), "'TRUE' query should find all rows");
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
@Test
|
||||
public void testFalseQuery() throws QException
|
||||
{
|
||||
QueryInput queryInput = initQueryRequest();
|
||||
queryInput.setFilter(new QQueryFilter(new QFilterCriteria("email", QCriteriaOperator.FALSE)));
|
||||
QueryOutput queryOutput = new RDBMSQueryAction().execute(queryInput);
|
||||
assertEquals(0, queryOutput.getRecords().size(), "'FALSE' query should find no rows");
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
**
|
||||
*******************************************************************************/
|
||||
|
Reference in New Issue
Block a user