示例#1
0
        void すでに同じIDを持つデータ存在していることを判定することができる()
        {
            using (var mock = new InmemoryDbTestMock <MeetupsApiContext>())
            {
                var context      = mock.Context();
                var targetEntity = new ConnpassEventDataEntity();
                context.ConnpassEventDataEntities.Add(targetEntity);
                context.SaveChanges();

                var target = new ConnpassDatabaseRepository(context);
                Assert.True(target.exitsEntity(targetEntity));
            }
        }
示例#2
0
        void イベントデータを保存することができる()
        {
            using (var mock = new InmemoryDbTestMock <MeetupsApiContext>())
            {
                var connpassDatabaseRepository = new ConnpassDatabaseRepository(mock.Context());
                var dummyEventData             = new List <ConnpassEventDataEntity>();
                var entity = new ConnpassEventDataEntity();
                dummyEventData.Add(entity);
                connpassDatabaseRepository.SaveEventData(dummyEventData);

                Assert.Equal(1, mock.Context().ConnpassEventDataEntities.Count());
            }
        }
示例#3
0
        void DBにデータを保存することができる()
        {
            using (var testMock = new InmemoryDbTestMock <DummyDbContext>())
            {
                var context = testMock.Context();

                var person = new person
                {
                    Name = "Kuxu",
                    Age  = 10
                };
                context.Persons.Add(person);
                context.SaveChanges();

                Assert.Equal(1, context.Persons.Count());
                testMock.Dispose();
            }
        }
示例#4
0
        async Task 最新の任意の件数の勉強会を取得することができる(int count)
        {
            using (var mock = new InmemoryDbTestMock <MeetupsApiContext>())
            {
                using (var context = mock.Context())
                {
                    var dummyData = Enumerable.Range(1, count).Select(id => new ConnpassEventDataEntity {
                        Id = id
                    });
                    context.ConnpassEventDataEntities.AddRange(dummyData);
                    context.SaveChanges();

                    var connpassDatabaseRepository = new ConnpassDatabaseRepository(context);
                    var eventList = await connpassDatabaseRepository.loadEventList(count);

                    Assert.Equal(count, eventList.Count);
                }
            }
        }
示例#5
0
        async Task イベント詳細に含まれるキーワード検索することができる(string targetKeyword, string dummyDescription, int searchResultCount)
        {
            using (var mock = new InmemoryDbTestMock <MeetupsApiContext>())
            {
                using (var context = mock.Context())
                {
                    var dummyData = new List <ConnpassEventDataEntity>();
                    dummyData.Add(new ConnpassEventDataEntity {
                        description = dummyDescription
                    });

                    context.ConnpassEventDataEntities.AddRange(dummyData);
                    context.SaveChanges();

                    var connpassDatabaseRepository = new ConnpassDatabaseRepository(context);
                    var searchResult = await connpassDatabaseRepository.SearchEvent(targetKeyword);

                    Assert.Equal(searchResultCount, searchResult.Count);
                }
            }
        }
示例#6
0
        void 重複するデータを書き込むと上書きされる()
        {
            using (var mock = new InmemoryDbTestMock <MeetupsApiContext>())
            {
                var connpassDatabaseRepository = new ConnpassDatabaseRepository(mock.Context());

                var dummyEventData = new List <ConnpassEventDataEntity>();
                var entity         = new ConnpassEventDataEntity
                {
                    Id    = 12,
                    title = "タイトル1"
                };

                dummyEventData.Add(entity);

                connpassDatabaseRepository.SaveEventData(dummyEventData);
            }

            using (var mock = new InmemoryDbTestMock <MeetupsApiContext>())
            {
                var connpassDatabaseRepository = new ConnpassDatabaseRepository(mock.Context());
                var dummyEventData2            = new List <ConnpassEventDataEntity>();
                var entity2 = new ConnpassEventDataEntity
                {
                    Id    = 12,
                    title = "タイトル2"
                };
                dummyEventData2.Add(entity2);

                connpassDatabaseRepository.SaveEventData(dummyEventData2);

                Assert.Equal(1, mock.Context().ConnpassEventDataEntities.Count());

                Assert.Equal(
                    entity2.title,
                    mock.Context().ConnpassEventDataEntities.First().title
                    );
            }
        }
示例#7
0
        void  じIDを持ったデータが存在していないことを判定することができる()
        {
            using (var mock = new InmemoryDbTestMock <MeetupsApiContext>())
            {
                var target = new ConnpassDatabaseRepository(mock.Context());

                var targetEntity = new ConnpassEventDataEntity
                {
                    Id = 114514
                };

                Assert.False(target.exitsEntity(targetEntity));

                var writingEntityList = new List <ConnpassEventDataEntity>();
                writingEntityList.Add(
                    new ConnpassEventDataEntity
                {
                    Id = 810
                }
                    );
                target.SaveEventData(writingEntityList);
                Assert.False(target.exitsEntity(targetEntity));
            }
        }
示例#8
0
        void DBに連続して書き込みを行ってもDisposableな実装にしていると以前のデータベースは消えている()
        {
            using (var testMock = new InmemoryDbTestMock <DummyDbContext>())
            {
                var context = testMock.Context();

                var person = new person
                {
                    Name = "Kuxu",
                    Age  = 10
                };
                context.Persons.Add(person);
                context.SaveChanges();

                Assert.Equal(1, context.Persons.Count());
                testMock.Dispose();
            }

            using (var testMock = new InmemoryDbTestMock <DummyDbContext>())
            {
                var context = testMock.Context();

                Assert.Equal(0, context.Persons.Count());

                var person = new person
                {
                    Name = "Kuxu",
                    Age  = 10
                };
                context.Persons.Add(person);
                context.SaveChanges();

                Assert.Equal(1, context.Persons.Count());
                testMock.Dispose();
            }
        }