Esempio n. 1
0
        public void ValidateParameters_Invalid_MultipleParameters()
        {
            var validationService = new FhirValidation(_iValidationHelper);

            var parameters = new Parameters
            {
                Parameter = new List <Parameters.ParameterComponent>
                {
                    new Parameters.ParameterComponent
                    {
                        Name = "operation",
                        Part = new List <Parameters.ParameterComponent>
                        {
                            new Parameters.ParameterComponent
                            {
                                Name  = "type",
                                Value = new Code("replace")
                            },
                            new Parameters.ParameterComponent
                            {
                                Name  = "path",
                                Value = new FhirString("DocumentReference.status")
                            },
                            new Parameters.ParameterComponent
                            {
                                Name  = "value",
                                Value = new FhirString("entered-in-error")
                            }
                        }
                    },
                    new Parameters.ParameterComponent
                    {
                        Name = "operation",
                        Part = new List <Parameters.ParameterComponent>
                        {
                            new Parameters.ParameterComponent
                            {
                                Name  = "type",
                                Value = new Code("replace")
                            },
                            new Parameters.ParameterComponent
                            {
                                Name  = "path",
                                Value = new FhirString("DocumentReference.status")
                            },
                            new Parameters.ParameterComponent
                            {
                                Name  = "value",
                                Value = new FhirString("entered-in-error")
                            }
                        }
                    }
                }
            };

            var actual = validationService.ValidateParameters(parameters);

            Assert.IsType <OperationOutcome>(actual);
            Assert.True(actual.Success);
        }
Esempio n. 2
0
        public void ValidateParameters_Invalid_Empty()
        {
            var validationService = new FhirValidation(_iValidationHelper);

            var parameters = new Parameters();

            var actual = validationService.ValidateParameters(parameters);

            Assert.IsType <OperationOutcome>(actual);
            Assert.False(actual.Success);

            Assert.Single(actual.Issue);
            Assert.Equal("Resource is invalid : parameter", actual.Issue.First().Diagnostics);
        }
Esempio n. 3
0
        public void ValidateParameters_Invalid_BadValue()
        {
            var validationService = new FhirValidation(_iValidationHelper);

            var parameters = new Parameters
            {
                Parameter = new List <Parameters.ParameterComponent>
                {
                    new Parameters.ParameterComponent
                    {
                        Name = "operation",
                        Part = new List <Parameters.ParameterComponent>
                        {
                            new Parameters.ParameterComponent
                            {
                                Name  = "type",
                                Value = new Code("replace")
                            },
                            new Parameters.ParameterComponent
                            {
                                Name  = "path",
                                Value = new FhirString("DocumentReference.status")
                            },
                            new Parameters.ParameterComponent
                            {
                                Name  = "value",
                                Value = new FhirString("current")
                            }
                        }
                    }
                }
            };

            var actual = validationService.ValidateParameters(parameters);

            Assert.IsType <OperationOutcome>(actual);
            Assert.False(actual.Success);

            Assert.Single(actual.Issue);
            Assert.Equal("Resource is invalid : parameter.part.value", actual.Issue.First().Diagnostics);
        }
Esempio n. 4
0
        public void ValidateParameters_Invalid_No_Parts()
        {
            var validationService = new FhirValidation(_iValidationHelper);

            var parameters = new Parameters
            {
                Parameter = new List <Parameters.ParameterComponent>
                {
                    new Parameters.ParameterComponent
                    {
                        Name = "operation"
                    }
                }
            };

            var actual = validationService.ValidateParameters(parameters);

            //Type check is hit first in parts section so this error will be thrown
            Assert.IsType <OperationOutcome>(actual);
            Assert.False(actual.Success);

            Assert.Single(actual.Issue);
            Assert.Equal("Resource is invalid : parameter.part.type", actual.Issue.First().Diagnostics);
        }