コード例 #1
0
        public void DefaultMessageValidator_WorksCorrectly()
        {
            var target  = new DefaultMessageValidator();
            var message = Message.Create("Minimal message");

            target.Validate("test", message);
        }
コード例 #2
0
        public void DefaultMessageValidator_ThrowsOnMissingRetryOptionsForEmergencyMessage()
        {
            var target  = new DefaultMessageValidator();
            var message = new Message {
                Body = "Test", Priority = Priority.Emergency
            };

            target.Validate("test", message);
        }
コード例 #3
0
        public void DefaultMessageValidator_ThrowsOnInvalidPriority()
        {
            var target  = new DefaultMessageValidator();
            var message = new Message {
                Body = "Test", Priority = (Priority)999
            };

            target.Validate("test", message);
        }
コード例 #4
0
        public void DefaultMessageValidator_ThrowsOnTitleLimitExceeded()
        {
            var target  = new DefaultMessageValidator();
            var message = new Message {
                Body = "Test", Priority = Priority.Normal, Title = new string('X', 251)
            };

            target.Validate("test", message);
        }
コード例 #5
0
        public void DefaultMessageValidator_ThrowsOnBodyLimitExceeded()
        {
            var target  = new DefaultMessageValidator();
            var message = new Message {
                Body = new string('X', 1025), Priority = Priority.Normal
            };

            target.Validate("test", message);
        }
コード例 #6
0
        public void DefaultMessageValidator_ThrowsOnNullBody()
        {
            var target  = new DefaultMessageValidator();
            var message = new Message {
                Body = null, Priority = Priority.Normal
            };

            target.Validate("test", message);
        }
コード例 #7
0
        public void DefaultMessageValidator_ThrowsOnRetryOptionsForNonEmergencyMessage()
        {
            var target  = new DefaultMessageValidator();
            var message = new Message {
                Body = "Test", Priority = Priority.Normal, RetryOptions = new RetryOptions {
                }
            };

            target.Validate("test", message);
        }
コード例 #8
0
        public void DefaultMessageValidator_ThrowsOnSupplementaryURLTooLongTitle()
        {
            var target  = new DefaultMessageValidator();
            var message = new Message
            {
                Body             = "Test",
                Priority         = Priority.Normal,
                SupplementaryUrl = new SupplementaryURL {
                    Uri = new Uri("http://robiii.me"), Title = new string('X', 101)
                }
            };

            target.Validate("test", message);
        }
コード例 #9
0
        public void DefaultMessageValidator_AllowsSupplementaryURLNullTitle()
        {
            var target  = new DefaultMessageValidator();
            var message = new Message
            {
                Body             = "Test",
                Priority         = Priority.Normal,
                SupplementaryUrl = new SupplementaryURL {
                    Uri = new Uri("http://robiii.me"), Title = null
                }
            };

            target.Validate("test", message);
        }
コード例 #10
0
        public void DefaultMessageValidator_ThrowsOnSupplementaryURLNullUri()
        {
            var target  = new DefaultMessageValidator();
            var message = new Message
            {
                Body             = "Test",
                Priority         = Priority.Normal,
                SupplementaryUrl = new SupplementaryURL {
                    Uri = null, Title = "Foo"
                }
            };

            target.Validate("test", message);
        }
コード例 #11
0
        public void DefaultMessageValidator_ThrowsOnNegativeRetryPeriodForEmergencyMessage()
        {
            var target  = new DefaultMessageValidator();
            var message = new Message
            {
                Body         = "Test",
                Priority     = Priority.Emergency,
                RetryOptions = new RetryOptions {
                    RetryEvery = TimeSpan.FromSeconds(30), RetryPeriod = TimeSpan.FromSeconds(-1)
                }
            };

            target.Validate("test", message);
        }
コード例 #12
0
        public void DefaultMessageValidator_ThrowsOnTooLongRetryIntervalForEmergencyMessage()
        {
            var target  = new DefaultMessageValidator();
            var message = new Message
            {
                Body         = "Test",
                Priority     = Priority.Emergency,
                RetryOptions = new RetryOptions {
                    RetryEvery = TimeSpan.FromHours(25), RetryPeriod = TimeSpan.FromHours(1)
                }
            };

            target.Validate("test", message);
        }
コード例 #13
0
        public void DefaultMessageValidator_ThrowsOnNullValue()
        {
            var target = new DefaultMessageValidator();

            target.Validate("test", null);
        }