Skip to content

Commit

Permalink
DMN 1.4 - 1153-boxed-some (#604)
Browse files Browse the repository at this point in the history
* 1152-boxed-for

* commented out test 3/4 for undecided list coercion. Also changed test 7 to reflect Octavian comment re 'two things wrong in the same test'
  • Loading branch information
StrayAlien committed Nov 16, 2023
1 parent 3b7763d commit 3e6bc9b
Show file tree
Hide file tree
Showing 2 changed files with 155 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- Contributed to DMN TCK by StrayAlien -->
<testCases xmlns="http://www.omg.org/spec/DMN/20160719/testcase"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=""
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<modelName>1153-boxed-some.dmn</modelName>

<testCase id="001">
<description>Will report true when 'in' elements satisfy expression</description>
<resultNode name="decision001" type="decision">
<expected>
<value xsi:type="xsd:boolean">true</value>
</expected>
</resultNode>
</testCase>

<testCase id="002">
<description>Will report false when no 'in' elements satisfy expression</description>
<resultNode name="decision002" type="decision">
<expected>
<value xsi:type="xsd:boolean">false</value>
</expected>
</resultNode>
</testCase>

<!-- commented out pending RTF. https://github.com/dmn-tck/tck/pull/602#issuecomment-1770863632 -->
<!--
<testCase id="003">
<description>Will return null when 'in' expression is not a list</description>
<resultNode name="decision003" type="decision" errorResult="true">
<expected>
<value xsi:nil="true"/>
</expected>
</resultNode>
</testCase>
-->

<!-- commented out pending RTF. https://github.com/dmn-tck/tck/pull/602#issuecomment-1770863632 -->
<!--
<testCase id="004">
<description>Will not coerce single value 'in' expression to list - and return null</description>
<resultNode name="decision004" type="decision" errorResult="true">
<expected>
<value xsi:nil="true"/>
</expected>
</resultNode>
</testCase>
-->

<testCase id="005">
<description>Will return null when 'satisfies' does not return boolean</description>
<resultNode name="decision005" type="decision" errorResult="true">
<expected>
<value xsi:nil="true"/>
</expected>
</resultNode>
</testCase>

<testCase id="006">
<description>Will return null when any 'satisfies' does not return boolean</description>
<resultNode name="decision006" type="decision" errorResult="true">
<expected>
<value xsi:nil="true"/>
</expected>
</resultNode>
</testCase>

<testCase id="007">
<description>Will return false for empty list</description>
<resultNode name="decision007" type="decision">
<expected>
<value xsi:type="xsd:boolean">false</value>
</expected>
</resultNode>
</testCase>



</testCases>
75 changes: 75 additions & 0 deletions TestCases/compliance-level-3/1153-boxed-some/1153-boxed-some.dmn
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<definitions namespace="http://www.montera.com.au/spec/DMN/1153-boxed-some"
name="1153-boxed-some"
id="_i9fboPUUEeesLuP4RHs4vA"
xmlns="https://www.omg.org/spec/DMN/20211108/MODEL/"
xmlns:di="http://www.omg.org/spec/DMN/20180521/DI/"
xmlns:dmndi="https://www.omg.org/spec/DMN/20191111/DMNDI/"
xmlns:dc="http://www.omg.org/spec/DMN/20180521/DC/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<description>Boxed Some Expression</description>

<decision name="decision001" id="_decision001">
<variable name="decision001"/>
<some iteratorVariable="element">
<in><literalExpression><text>[1,2,3,4,5]</text></literalExpression></in>
<satisfies><literalExpression><text>element >= 3</text></literalExpression></satisfies>
</some>
</decision>

<decision name="decision002" id="_decision002">
<variable name="decision002"/>
<some iteratorVariable="element">
<in><literalExpression><text>[1,2,3,4,5]</text></literalExpression></in>
<satisfies><literalExpression><text>element > 5</text></literalExpression></satisfies>
</some>
</decision>

<!-- commented out pending RTF. https://github.com/dmn-tck/tck/pull/602#issuecomment-1770863632 -->
<!--
<decision name="decision003" id="_decision003">
<variable name="decision003"/>
<some iteratorVariable="element">
<in><literalExpression><text>"not a list"</text></literalExpression></in>
<satisfies><literalExpression><text>element</text></literalExpression></satisfies>
</some>
</decision>
-->

<!-- commented out pending RTF. https://github.com/dmn-tck/tck/pull/602#issuecomment-1770863632 -->
<!--
<decision name="decision004" id="_decision004">
<variable name="decision004"/>
<some iteratorVariable="element">
<in><literalExpression><text>1</text></literalExpression></in>
<satisfies><literalExpression><text>element * 2</text></literalExpression></satisfies>
</some>
</decision>
-->

<decision name="decision005" id="_decision005">
<variable name="decision005"/>
<some iteratorVariable="element">
<in><literalExpression><text>1</text></literalExpression></in>
<satisfies><literalExpression><text>"not a boolean"</text></literalExpression></satisfies>
</some>
</decision>

<decision name="decision006" id="_decision006">
<variable name="decision006"/>
<some iteratorVariable="element">
<in><literalExpression><text>[1,2]</text></literalExpression></in>
<satisfies><literalExpression><text>if (element = 2) then true else "not a boolean"</text></literalExpression></satisfies>
</some>
</decision>

<decision name="decision007" id="_decision007">
<variable name="decision007"/>
<some iteratorVariable="element">
<in><literalExpression><text>[]</text></literalExpression></in>
<satisfies><literalExpression><text>true</text></literalExpression></satisfies>
</some>
</decision>

</definitions>

0 comments on commit 3e6bc9b

Please sign in to comment.