public async Task AddAsync_AddNewEntities_ReturnsAddedEntities()
        {
            // arrange
            if (!IntegrationTestHelper.IsCosmosDbServer)
            {
                return;
            }
            var id1 = Guid.NewGuid();
            var student1Flattened = new StudentFlattened {
                Id = id1, StudentTypeId = 2, FirstName = "meghan", LastName = "doe"
            };
            var id2 = Guid.NewGuid();
            var student2Flattened = new StudentFlattened {
                Id = id2, StudentTypeId = 2, FirstName = "john", LastName = "smith"
            };
            var studentsFlattened = new List <StudentFlattened> {
                student1Flattened, student2Flattened
            };

            // act
            var actualResult = await _sut.AddAsync(studentsFlattened);

            // assert
            var expectedResult = await _sut.GetAllAsync(new RequestOptions { PartitionKey = new PartitionKey(2) });

            Assert.NotNull(actualResult);
            Assert.Equal(expectedResult, actualResult);
        }
Example #2
0
        public void Run()
        {
            if (IntegrationTestHelper.IsCosmosDbServer && IntegrationTestHelper.IsSeedCosmosDbData)
            {
                using var scope = _serviceProvider.CreateScope();
                var guid             = Guid.Parse("eda6ac19-0b7c-4698-a1f7-88279339d9ff");
                var studentFlattened = new StudentFlattened
                {
                    Id            = guid,
                    StudentTypeId = 1,
                    FirstName     = "john",
                    LastName      = "smith",
                    StudentType   = "Grad"
                };

                var recordToBeDeleted = new StudentFlattened
                {
                    Id            = Guid.Parse("ff96d626-3911-4c78-b337-00d7ecd2eadd"),
                    StudentTypeId = 1,
                    FirstName     = "record to be deleted",
                    LastName      = "smith",
                    StudentType   = "Grad"
                };

                var repository = scope.ServiceProvider.GetService <IRepository <StudentFlattened> >();
                repository.AddAsync(studentFlattened).GetAwaiter().GetResult();
                repository.AddAsync(recordToBeDeleted).GetAwaiter().GetResult();
            }
        }
 public void Dispose()
 {
     if (IntegrationTestHelper.IsCosmosDbServer)
     {
         var id      = Guid.Parse("eda6ac19-0b7c-4698-a1f7-88279339d9ff");
         var student = new StudentFlattened {
             Id = id
         };
         _sut.DeleteAsync(student, new RequestOptions {
             PartitionKey = new PartitionKey(1)
         }).GetAwaiter().GetResult();
     }
 }
        public async Task DeleteAsync_DeleteById_DeletesTheEntity()
        {
            // arrange
            if (!IntegrationTestHelper.IsCosmosDbServer)
            {
                return;
            }
            var id = Guid.Parse("ff96d626-3911-4c78-b337-00d7ecd2eadd");
            var studentFlattened = new StudentFlattened {
                Id = id
            };

            // act
            await _sut.DeleteAsync(studentFlattened, new RequestOptions { PartitionKey = new PartitionKey(1) });

            // assert
            var queryResult = await _sut.GetByIdAsync(id, new RequestOptions { PartitionKey = new PartitionKey(1) });

            Assert.Null(queryResult);
        }
        public async Task AddAsync_AddNewEntity_ReturnsAddedEntity()
        {
            // arrange
            if (!IntegrationTestHelper.IsCosmosDbServer)
            {
                return;
            }
            var id = Guid.NewGuid();
            var studentFlattened = new StudentFlattened {
                Id = id, StudentTypeId = 2, FirstName = "meghan", LastName = "doe"
            };

            // act
            await _sut.AddAsync(studentFlattened);

            // assert
            var result = await _sut.GetByIdAsync(id, new RequestOptions { PartitionKey = new PartitionKey(2) });

            Assert.NotNull(result);
            Assert.Equal("meghan", result.FirstName);
        }
        public async Task UpdateAsync_UpdateAnExistingEntity_UpdatesTheEntity()
        {
            // arrange
            if (!IntegrationTestHelper.IsCosmosDbServer)
            {
                return;
            }
            var id      = Guid.Parse("eda6ac19-0b7c-4698-a1f7-88279339d9ff");
            var student = new StudentFlattened {
                Id = id, LastName = "smith jr", FirstName = "john", StudentTypeId = 1
            };

            // act
            await _sut.UpdateAsync(student, new RequestOptions { PartitionKey = new PartitionKey(1) });

            // assert
            var result = (await _sut.FindByAsync(f => f.StudentTypeId == 1 && f.FirstName == "john")).FirstOrDefault();

            Assert.NotNull(result);
            Assert.Equal("smith jr", result.LastName);
        }