예제 #1
0
        public void FromContentLine()
        {
            var status = new RequestStatus(new ContentLine("REQUEST-STATUS:2.0;Success"));
            Assert.AreEqual("2.0", status.Code);
            Assert.AreEqual("Success", status.Description);
            Assert.AreEqual(LanguageTag.Unspecified, status.Description.Language);
            Assert.AreEqual(null, status.RelatedData);
            Assert.IsTrue(status.IsSuccess);

            status = new RequestStatus(new ContentLine("REQUEST-STATUS:3.1;Invalid property value;DTSTART:96-Apr-01"));
            Assert.AreEqual("3.1", status.Code);
            Assert.AreEqual("Invalid property value", status.Description);
            Assert.AreEqual(LanguageTag.Unspecified, status.Description.Language);
            Assert.AreEqual("DTSTART:96-Apr-01", status.RelatedData);
            Assert.IsTrue(status.IsClientError);

            status = new RequestStatus(new ContentLine("REQUEST-STATUS;LANGUAGE=en:3.1;Invalid property value;DTSTART:96-Apr-01"));
            Assert.AreEqual("3.1", status.Code);
            Assert.AreEqual("Invalid property value", status.Description);
            Assert.AreEqual("en", status.Description.Language);
            Assert.AreEqual("DTSTART:96-Apr-01", status.RelatedData);
            Assert.IsTrue(status.IsClientError);

            status = new RequestStatus(new ContentLine(@"REQUEST-STATUS:2.8; Success\, repeating event ignored. Scheduled as a single event.;RRULE:FREQ=WEEKLY;INTERVAL=2"));
            Assert.AreEqual("2.8", status.Code);
            Assert.AreEqual("Success, repeating event ignored. Scheduled as a single event.", status.Description);
            Assert.AreEqual(LanguageTag.Unspecified, status.Description.Language);
            Assert.AreEqual("RRULE:FREQ=WEEKLY;INTERVAL=2", status.RelatedData);
            Assert.IsTrue(status.IsSuccess);
        }
예제 #2
0
        public void Writing()
        {
            var status = new RequestStatus()
            {
                Code = "3.1",
                Description = new Text("en", "Invalid property value"),
                RelatedData = "DTSTART:96-Apr-01"
            };
            Assert.AreEqual("REQUEST-STATUS;LANGUAGE=en:3.1;Invalid property value;DTSTART:96-Apr-01", status.ToString());

            status = new RequestStatus()
            {
                Code = "3.1",
                Description = new Text(LanguageTag.Unspecified, "Invalid property value"),
                RelatedData = "DTSTART:96-Apr-01"
            };
            Assert.AreEqual("REQUEST-STATUS:3.1;Invalid property value;DTSTART:96-Apr-01", status.ToString());

            status = new RequestStatus()
            {
                Code = "3.1",
                Description = new Text(LanguageTag.Unspecified, "Invalid property value")
            };
            Assert.AreEqual("REQUEST-STATUS:3.1;Invalid property value", status.ToString());

            status = new RequestStatus()
            {
                Code = "3.1"
            };
            Assert.AreEqual("REQUEST-STATUS:3.1", status.ToString());

            status = new RequestStatus()
            {
                Code = "2.8",
                Description = new Text(LanguageTag.Unspecified, "Success, repeating event ignored. Scheduled as a single event."),
                RelatedData = "RRULE:FREQ=WEEKLY;INTERVAL=2"
            };
            Assert.AreEqual(@"REQUEST-STATUS:2.8;Success\, repeating event ignored. Scheduled as a single event.;RRULE:FREQ=WEEKLY;INTERVAL=2", status.ToString());
        }