To add a collaborator to this project you will need to use the Relish gem to add the collaborator via a terminal command. Soon you'll be able to also add collaborators here!
More about adding a collaboratorCreate runtime objects
At runtime the client applicaiton can execute a set of test
against the domain model and compare the results against a list of
expect returns. This feature covers the response of the domain model,
context and roles to those test.
- Scenarios
-
- Client submits runtime job to create TestObjectCollection
- Client submits runtime job to create ObjectA with bad name.
- Client submits runtime test job to create ObjectA with bad version number.
- Client submits a runtime test job to create ObjectA without specifying a UIC.
- Client submits a runtime test job to create ObjectA without all minimum parameters.
- Client submits a runtime test job to create test objects with minimum parameters.
- Client submits a runtime test job to create test type 5 with minimum parameters.
- Client submits runtime job to create TestObjectCollection
-
This job is required to be run before any of the other test collections are run.
This object will hold all the test objects.- Given
- a :request_to_create_test_object_collection is made for version "1" for "Create Test Object Collection"
- When
- the request is received
- Then
- the :created_test_object_collection is returned via the response object
- Client submits runtime job to create ObjectA with bad name.
-
The job makes a request for the runtime test but the name requested the job is incorrect.
This would the be case in the event of a programming error.- Given
- a :runtime_test_request_payload is made for version "1" for "Runtime_Error_in_NaMe$"
- And
- 'Runtime_Error_in_NaMe$ is not a valid job name'
- And
- 'the rest of the request is correctly formed'
- Then
- an API::Exception::ContextNotFoundException is raised with the message "A matching context for job name 'Runtime_Error_in_NaMe$' with version 1 cannot be found" when the request is received
- Client submits runtime test job to create ObjectA with bad version number.
-
The job makes are request for the runtime test but the version requested by the job is incorrect.
This would the be case in the event of a programming error or operational error that saw the incorrect version deployed- Given
- a :runtime_test_request_payload is made for version "0.0.0.1" for "Create Runtime Test Objects"
- And
- '0.0.0.1 is not a valid version number'
- And
- 'the rest of the request is correctly formed'
- Then
- an API::Exception::ContextNotFoundException is raised with the message "A matching context for job name 'Create Runtime Test Objects' with version 0.0.0.1 cannot be found" when the request is received
- Client submits a runtime test job to create ObjectA without specifying a UIC.
-
The job makes the request for a runtime test but there is no associated UIC for the job.
This again would be the case in the event of a programming error where code has not passed operational QA.- Given
- a :runtime_test_request_payload is made for version "1" for "Create Runtime Test Objects"
- And
- no UIC has been specified in the request
- Then
- an API::Exception::MissingInputException is raised with the message "Expected to find uic for Create Runtime Test Objects with version 1 but nothing was found" when the request is received
- Client submits a runtime test job to create ObjectA without all minimum parameters.
-
The job request passes all the initial checking but then fails because the min parameters were not supplied in the UIC.
This could happen if there is an error or an mismatch between the versions of the object specification.- Given
- a :runtime_test_request_payload_with_invalid_min_param is made for version "1" for "Create Runtime Test Objects"
- And
- 'the min required parameters are not supplied in the UIC'
- And
- the :test_object_collection_where_all_test_objects_hangs_off is already created previously
- When
- the request is received
- Then
- a Data::Exception::IllegalArgumentException is raised with the message "Object TestType1 requires 'color' as one of its minimum parameter" via the response object
- Client submits a runtime test job to create test objects with minimum parameters.
-
The job creates the requested objects using the information handed in via the UIC.
It then carries out the required checks and hands it off to the response object.- Given
- a :runtime_test_request_payload_with_valid_min_param is made for version "1" for "Create Runtime Test Objects"
- And
- 'the objects that are requested to be created are all specified in the UIC'
- And
- the :test_object_collection_where_all_test_objects_hangs_off is already created previously
- When
- the request is received
- Then
-
the following objects are created
name TestType1 TestType2 - And
- each object has a parent being the test object collection of the of the user requesting it's creation
- And
- each has audit entry showing who, what, when of its creation
- And
- 'each object has a uniqueID different from other objects being created'
- And
- 'each object contains the defined minimum data points'
- And
- each object is in active state
- Client submits a runtime test job to create test type 5 with minimum parameters.
-
In this scenario, when type5 is created, we will attach an email command definition.
This command definition will be triggered when type5 is updated (i.e. set send_email to true)- Given
- a :payload_to_create_type5 is made for version "1" for "Create Runtime Type5 Object"
- And
- 'the object that is requested to be created is specified in the UIC'
- And
- the :test_object_collection_where_all_test_objects_hangs_off is already created previously
- When
- the request is received
- Then
- the :created_type5 is returned via the response object
- And
- 'the type5 object has a parent being the test object collection of the of the user requesting it's creation'
- And
- the :created_type5 has audit entry showing who, what, when of its creation
- And
- 'the object has 1 email trigger definition attached to it'
- And
- the :created_email_trigger_definition_for_type5 is returned via the response object
Last published over 7 years ago by nbeagley.