SCXML Tests assume Invalid Data Model Locations

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

SCXML Tests assume Invalid Data Model Locations

Gavin Kistner-4
Some of the SCXML tests (286, 311, 331, 401, and 402) assume that it is possible to specify an invalid data model location in an <assign> element.

In my data model, this is not possible. Every value of the location attribute, including an empty string, is valid as a data model location. (The implementation of the data model is a Lua table; like an ECMAScript Object, any string is a valid and unique key for storing and retrieving values.) Consequently I cannot possibly convert these test templates into valid tests for my implementation, and thus I cannot create an implementation report showing that I pass these mandatory tests.

I submit that these tests need to be made optional (and any other behavior that they are testing for separated out). Thoughts?
--
(-, /\ \/ / /\/
Reply | Threaded
Open this post in threaded view
|

Re: SCXML Tests assume Invalid Data Model Locations

David Junger
Le 16 apr 2014 à 00:59, Gavin Kistner <[hidden email]> a écrit :

> Some of the SCXML tests (286, 311, 331, 401, and 402) assume that it is possible to specify an invalid data model location in an <assign> element.
>
> In my data model, this is not possible. Every value of the location attribute, including an empty string, is valid as a data model location. (The implementation of the data model is a Lua table; like an ECMAScript Object, any string is a valid and unique key for storing and retrieving values.) Consequently I cannot possibly convert these test templates into valid tests for my implementation, and thus I cannot create an implementation report showing that I pass these mandatory tests.
>
> I submit that these tests need to be made optional (and any other behavior that they are testing for separated out). Thoughts?

See my reply to your previous email. I'm sure there are plenty of invalid left-hand-side expressions in Lua.

                        David
Reply | Threaded
Open this post in threaded view
|

Re: SCXML Tests assume Invalid Data Model Locations

Jim Barnett
In reply to this post by Gavin Kistner-4
If there really is no such thing in your data model, then I think that
you would report that you (vacuously) passed the tests, adding a comment
that there is no such thing as an invalid location in your data model.  
The tests are mandatory in that an interpreter _must_ respond a certain
way if someone tries to assign to an invalid location.  This is not
optional behavior.  Your interpreter is also required to behave this way
- it  just happens that the situation in question cannot arise in your
data model, so there's no way for you to actually run the test.

Overall, these tests have the form: "If X then Y" (more precisely:
"whenever X, then Y").  In logic, such statements are  true when X is
false.  Systems that can make X true have to run the test Systems that
cannot make X true pass without running the test.  But you don't have a
choice about whether to make "Whenever X, then Y" true in your system.  
It just happen to take much work for you to do it...

(Though see David's email - are you sure that there's _nothing_ you
could put on the left hand side of an assign that would cause a data
model error?).

- Jim


On 4/15/2014 6:59 PM, Gavin Kistner wrote:

> Some of the SCXML tests (286, 311, 331, 401, and 402) assume that it
> is possible to specify an invalid data model location in an <assign>
> element.
>
> In my data model, this is not possible. Every value of the location
> attribute, including an empty string, is valid as a data model
> location. (The implementation of the data model is a Lua table; like
> an ECMAScript Object, any string is a valid and unique key for storing
> and retrieving values.) Consequently I cannot possibly convert these
> test templates into valid tests for my implementation, and thus I
> cannot create an implementation report showing that I pass these
> mandatory tests.
>
> I submit that these tests need to be made optional (and any other
> behavior that they are testing for separated out). Thoughts?
> --
> (-, /\ \/ / /\/

--
Jim Barnett
Genesys