private void ArrangePModeThenAgreementRefIsNotEnough(AS4.Model.PMode.AgreementReference agreementRef)
            {
                ReceivePMode pmode = CreatePModeWithAgreementRef(agreementRef);

                DifferentiatePartyInfo(pmode);
                SetupPModes(pmode, new ReceivePMode());
            }
            public async Task ThenAgreementRefIsNotEnoughAsync(string name, string type)
            {
                // Arrange
                var agreementRef = new AS4.Model.PMode.AgreementReference {
                    Value = name, Type = type, PModeId = "pmode-id"
                };

                ArrangePModeThenAgreementRefIsNotEnough(agreementRef);

                var userMessage = new UserMessage(
                    Guid.NewGuid().ToString(),
                    new AS4.Model.Core.CollaborationInfo(
                        agreement: new AgreementReference(name, type, "pmode-id"),
                        service: new Service("service"),
                        action: "action",
                        conversationId: "1"));

                var messagingContext = new MessagingContext(AS4Message.Create(userMessage), MessagingContextMode.Receive);

                // Act
                StepResult result = await _step.ExecuteAsync(messagingContext);

                // Assert
                Assert.False(result.Succeeded);
                ErrorResult errorResult = result.MessagingContext.ErrorResult;

                Assert.Equal(ErrorCode.Ebms0010, errorResult.Code);
            }
        protected ReceivePMode CreatePModeWithAgreementRef(AS4.Model.PMode.AgreementReference agreementRef)
        {
            ReceivePMode pmode = CreateDefaultPMode("defaultPMode");

            pmode.MessagePackaging.CollaborationInfo.AgreementReference = agreementRef;

            return(pmode);
        }