Struct TestScriptSetupActionOperation

Source
pub struct TestScriptSetupActionOperation {
Show 37 fields pub id: Option<String>, pub extension: Vec<Extension>, pub modifier_extension: Vec<Extension>, pub type: Option<Coding>, pub type_ext: Option<FieldExtension>, pub resource: Option<String>, pub resource_ext: Option<FieldExtension>, pub label: Option<String>, pub label_ext: Option<FieldExtension>, pub description: Option<String>, pub description_ext: Option<FieldExtension>, pub accept: Option<String>, pub accept_ext: Option<FieldExtension>, pub content_type: Option<String>, pub content_type_ext: Option<FieldExtension>, pub destination: Option<i32>, pub destination_ext: Option<FieldExtension>, pub encode_request_url: bool, pub encode_request_url_ext: Option<FieldExtension>, pub method: Option<TestScriptRequestMethodCode>, pub method_ext: Option<FieldExtension>, pub origin: Option<i32>, pub origin_ext: Option<FieldExtension>, pub params: Option<String>, pub params_ext: Option<FieldExtension>, pub request_header: Vec<Option<TestScriptSetupActionOperationRequestHeader>>, pub request_header_ext: Vec<Option<FieldExtension>>, pub request_id: Option<String>, pub request_id_ext: Option<FieldExtension>, pub response_id: Option<String>, pub response_id_ext: Option<FieldExtension>, pub source_id: Option<String>, pub source_id_ext: Option<FieldExtension>, pub target_id: Option<String>, pub target_id_ext: Option<FieldExtension>, pub url: Option<String>, pub url_ext: Option<FieldExtension>,
}
Expand description

Sub-fields of the operation field in TestScriptSetupAction

Fields§

§id: Option<String>

Unique id for inter-element referencing

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

§extension: Vec<Extension>

Additional content defined by implementations

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

§modifier_extension: Vec<Extension>

Extensions that cannot be ignored even if unrecognized

May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element’s descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

§type: Option<Coding>

TestScriptOperationCode; The operation code type that will be executed

Server interaction or operation type.

See the list of server interactions.

§type_ext: Option<FieldExtension>

Extension field.

§resource: Option<String>

FHIRConcreteTypes; Resource type

The type of the FHIR resource. See the resource list. Data type of uri is needed when non-HL7 artifacts are identified.

If “url” element is specified, then “targetId”, “params”, and “resource” elements will be ignored as “url” element will have everything needed for constructing the request url. If “params” element is specified, then “targetId” element is ignored. For FHIR operations that require a resource (e.g. “read” and “vread” operations), the “resource” element must be specified when “params” element is specified. If “url” and “params” elements are absent, then the request url will be constructed from “targetId” fixture if present. For “read” operation, the resource and id values will be extracted from “targetId” fixture and used to construct the url. For “vread” and “history” operations, the versionId value will also be used.

§resource_ext: Option<FieldExtension>

Extension field.

§label: Option<String>

Tracking/logging operation label

The label would be used for tracking/logging purposes by test engines.

This has no impact on the verification itself.

§label_ext: Option<FieldExtension>

Extension field.

§description: Option<String>

Tracking/reporting operation description

The description would be used by test engines for tracking and reporting purposes.

This has no impact on the verification itself.

§description_ext: Option<FieldExtension>

Extension field.

§accept: Option<String>

MimeType; Mime type to accept in the payload of the response, with charset etc

The mime-type to use for RESTful operation in the ‘Accept’ header.

If this is specified, then test engine shall set the ‘Accept’ header to the corresponding value. If you’d like to explicitly set the ‘Accept’ to some other value then use the ‘requestHeader’ element.

§accept_ext: Option<FieldExtension>

Extension field.

§content_type: Option<String>

MimeType; Mime type of the request payload contents, with charset etc

The mime-type to use for RESTful operation in the ‘Content-Type’ header.

If this is specified, then test engine shall set the ‘Content-Type’ header to the corresponding value. If you’d like to explicitly set the ‘Content-Type’ to some other value then use the ‘requestHeader’ element.

§content_type_ext: Option<FieldExtension>

Extension field.

§destination: Option<i32>

Server responding to the request

The server where the request message is destined for. Must be one of the server numbers listed in TestScript.destination section.

If multiple TestScript.destination elements are defined and operation.destination is undefined, test engine will report an error as it cannot determine what destination to use for the exchange.

§destination_ext: Option<FieldExtension>

Extension field.

§encode_request_url: bool

Whether or not to send the request url in encoded format

Whether or not to implicitly send the request url in encoded format. The default is true to match the standard RESTful client behavior. Set to false when communicating with a server that does not support encoded url paths.

§encode_request_url_ext: Option<FieldExtension>

Extension field.

§method: Option<TestScriptRequestMethodCode>

TestScriptRequestMethodCode; delete | get | options | patch | post | put | head

The HTTP method the test engine MUST use for this operation regardless of any other operation details.

The primary purpose of the explicit HTTP method is support of HTTP POST method invocation of the FHIR search. Other uses will include support of negative testing.

§method_ext: Option<FieldExtension>

Extension field.

§origin: Option<i32>

Server initiating the request

The server where the request message originates from. Must be one of the server numbers listed in TestScript.origin section.

If absent, test engine will send the message. When present, test engine will not send the request message but will wait for the request message to be sent from this origin server.

§origin_ext: Option<FieldExtension>

Extension field.

§params: Option<String>

Explicitly defined path parameters

Path plus parameters after [type]. Used to set parts of the request URL explicitly.

If “url” element is specified, then “targetId”, “params”, and “resource” elements will be ignored as “url” element will have everything needed for constructing the request url. If “params” element is specified, then “targetId” element is ignored. For FHIR operations that require a resource (e.g. “read” and “vread” operations), the “resource” element must be specified when “params” element is specified. If “url” and “params” elements are absent, then the request url will be constructed from “targetId” fixture if present. For “read” operation, the resource and id values will be extracted from “targetId” fixture and used to construct the url. For “vread” and “history” operations, the versionId value will also be used. Test engines would append whatever is specified for “params” to the URL after the resource type without tampering with the string (beyond encoding the URL for HTTP). The “params” element does not correspond exactly to “search parameters”. Nor is it the “path”. It corresponds to the part of the URL that comes after the [type] (when “resource” element is specified); e.g. It corresponds to “/[id]/_history/[vid] {?_format=[mime-type]}” in the following operation: GET [base]/[type]/[id]/_history/[vid] {?_format=[mime-type]} Test engines do have to look for placeholders (${}) and replace the variable placeholders with the variable values at runtime before sending the request.

§params_ext: Option<FieldExtension>

Extension field.

§request_header: Vec<Option<TestScriptSetupActionOperationRequestHeader>>

Each operation can have one or more header elements

Header elements would be used to set HTTP headers.

This gives control to test-script writers to set headers explicitly based on test requirements. It will allow for testing using: - “If-Modified-Since” and “If-None-Match” headers. “If-Match” header. See Conditional Create using “If-None-Exist”. See Invalid “Content-Type” header for negative testing. - etc.

§request_header_ext: Vec<Option<FieldExtension>>

Extension field.

§request_id: Option<String>

Fixture Id of mapped request

The fixture id (maybe new) to map to the request.

If a requestId is supplied, then the resulting request (both headers and body) is mapped to the fixture ID (which may be entirely new and previously undeclared) designated by “requestId”. If requestId is not specified, it is the test engine’s responsibility to store the request and use it as the requestId in subsequent assertions when assertion path and/or headerField is specified, direction is equal to request, and the requestId in not specified.

§request_id_ext: Option<FieldExtension>

Extension field.

§response_id: Option<String>

Fixture Id of mapped response

The fixture id (maybe new) to map to the response.

If a responseId is supplied, and the server responds, then the resulting response (both headers and body) is mapped to the fixture ID (which may be entirely new and previously undeclared) designated by “responseId”. If responseId is not specified, it is the test engine’s responsibility to store the response and use it as the responseId in subsequent assertions when assertion path and/or headerField is specified and the responseId is not specified.

§response_id_ext: Option<FieldExtension>

Extension field.

§source_id: Option<String>

Fixture Id of body for PUT and POST requests

The id of the fixture used as the body of a PUT or POST request.

§source_id_ext: Option<FieldExtension>

Extension field.

§target_id: Option<String>

Id of fixture used for extracting the [id], [type], and [vid] for GET requests

Id of fixture used for extracting the [id], [type], and [vid] for GET requests.

If “url” element is specified, then “targetId”, “params”, and “resource” elements will be ignored as “url” element will have everything needed for constructing the request url. If “params” element is specified, then “targetId” element is ignored. For FHIR operations that require a resource (e.g. “read” and “vread” operations), the “resource” element must be specified when “params” element is specified. If “url” and “params” elements are absent, then the request url will be constructed from “targetId” fixture if present. For “read” operation, the resource and id values will be extracted from “targetId” fixture and used to construct the url. For “vread” and “history” operations, the versionId value will also be used.

§target_id_ext: Option<FieldExtension>

Extension field.

§url: Option<String>

Request URL

Complete request URL.

Used to set the request URL explicitly. If “url” element is defined, then “targetId”, “resource”, and “params” elements will be ignored. Test engines would use whatever is specified in “url” without tampering with the string (beyond encoding the URL for HTTP). Test engines do have to look for placeholders (${}) and replace the variable placeholders with the variable values at runtime before sending the request.

§url_ext: Option<FieldExtension>

Extension field.

Implementations§

Trait Implementations§

Source§

impl Clone for TestScriptSetupActionOperation

Source§

fn clone(&self) -> TestScriptSetupActionOperation

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for TestScriptSetupActionOperation

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for TestScriptSetupActionOperation

Source§

fn deserialize<__D>( __deserializer: __D, ) -> Result<TestScriptSetupActionOperation, <__D as Deserializer<'de>>::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl PartialEq for TestScriptSetupActionOperation

Source§

fn eq(&self, other: &TestScriptSetupActionOperation) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for TestScriptSetupActionOperation

Source§

fn serialize<__S>( &self, __serializer: __S, ) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl StructuralPartialEq for TestScriptSetupActionOperation

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> ErasedDestructor for T
where T: 'static,