Beispiel #1
0
 private void RequireUserExists(Guid user)
 {
     using (var uow = new UnitOfWork())
     {
         if (!uow.Query<User>().Exists(user))
             throw new ArgumentException("Unknown user", "user");
     }
 }
Beispiel #2
0
        public Guid EnsureUserExists(string name, string email)
        {
            using (var uow = new UnitOfWork())
            {
                var foundUser = uow.AllOf<User>().FirstOrDefault(u => u.Name == name);
                if (foundUser != null) return foundUser.Id;

                return User.Create(name, email).Id;
            }
        }
            public void should_convert_collection_to_capped()
            {
                const int mb10 = 10 * 1024 * 1024;

                using (new UnitOfWork())
                {
                    TestRoot.Create("boo");
                    TestRoot.Create("hoo");
                }

                using (var uow = new UnitOfWork())
                {
                    var database = (MongoDatabase)uow.DomainDataSession.DataSession.NativeSession;

                    database.EnsureCappedCollectionExists<TestRoot>(10);

                    var stats = database.GetCollection<TestRoot>().GetStats();

                    stats.IsCapped.Should().BeTrue();
                    stats.StorageSize.Should().BeInRange(mb10, mb10 + 8192); //TODO: get exact metadata size?

                    uow.Query<TestRoot>().Count().Should().Be(2);
                }
            }
            public void should_create_valid_capped_collection()
            {
                const int mb10 = 10 * 1024 * 1024;

                using (var uow = new UnitOfWork())
                {
                    var database = (MongoDatabase)uow.DomainDataSession.DataSession.NativeSession;

                    database.CollectionExists("TestRoot").Should().BeFalse();

                    database.EnsureCappedCollectionExists<TestRoot>(10);

                    database.CollectionExists("TestRoot").Should().BeTrue();

                    var stats = database.GetCollection<TestRoot>().GetStats();

                    stats.IsCapped.Should().BeTrue();
                    stats.StorageSize.Should().BeInRange(mb10, mb10 + 8192); //TODO: get exact metadata size?
                }
            }
            public void should_return_valid_object()
            {
                TestRoot createdRoot;
                using (new UnitOfWork())
                {
                    createdRoot = TestRoot.Create("test data");
                }

                using (var uow = new UnitOfWork())
                {
                    var foundRoot = uow.Query<TestRoot>().GetOne(createdRoot.Id);

                    foundRoot.Id.Should().Be(createdRoot.Id);
                    foundRoot.Data.Should().Be(createdRoot.Data);
                }
            }
            public void should_return_collection_with_name_as_derived_root_name()
            {
                using (var uow = new UnitOfWork())
                {
                    var collection = (uow.DomainDataSession.DataSession.NativeSession as MongoDatabase).GetCollection<DerivedTestRoot>();

                    collection.Should().NotBeNull();
                    collection.Name.Should().Be(typeof(DerivedTestRoot).Name);
                }
            }