Ejemplo n.º 1
0
        public void ToDocument_AnnouncementWithAnId_IdIsRepresentedAsObjectId()
        {
            var announcement = new Announcement();

            announcement.Id = ObjectId.GenerateNewId().ToString();

            var document = announcement.ToBsonDocument();

            Expect(document["_id"].BsonType, Is.EqualTo(BsonType.ObjectId));
        }
Ejemplo n.º 2
0
        public void New_Announcement_Should_Be_Deserialized_Correctly()
        {
            var newAnnouncement = new NewAnnouncement
            {
                Title = "Test Announcement 1",
                Description = new[] {"Test Test"},
                ValidTill = DateTime.UtcNow.AddDays(7)
            };

            var announcement = new Announcement(newAnnouncement);

            Console.WriteLine(announcement.ToBsonDocument());
        }
Ejemplo n.º 3
0
        public void ToDocument_AnnouncementWithPublishDate_PublishDateShouldAlwaysBeLocal()
        {
            // Arrange
            var announcement = new Announcement();

            // Act
            // Being saved as UTC time
            announcement.PublishedOn = DateTime.UtcNow;
            var document = announcement.ToBsonDocument();
            var converted = BsonSerializer.Deserialize<Announcement>(document);

            // Assert
            // Verify that it is deserialized as local date / time
            Console.WriteLine("Kind: " + converted.PublishedOn.Kind);
            Console.WriteLine("Converted: " + converted.PublishedOn);
            Console.WriteLine("Original: " + announcement.PublishedOn);

            Expect(converted.PublishedOn.Kind, Is.EqualTo(DateTimeKind.Local));
            Expect(converted.PublishedOn.ToString(), Is.EqualTo(announcement.PublishedOn.ToLocalTime().ToString()));
        }