Esempio n. 1
0
 /// <summary>
 /// Сохранить объекты сущности
 /// </summary>
 /// <param name="entities">Объекты сущности</param>
 public void Save(params Message[] entities)
 {
     using (var context = new MessagesDbContext())
     {
         context.Messages.AddRange(entities);
     }
 }
        public void DeleteChannel_WhenIsExistingAndNonEmpty_ShoulReturn409()
        {
            // Arrange -> create a channel
            TestingEngine.CleanDatabase();

            MessagesDbContext dbContext = new MessagesDbContext();
            var existingChannel         = new Channel()
            {
                Name = "Existing Channel"
            };

            existingChannel.ChannelMessages.Add(new ChannelMessage()
            {
                Id       = 11,
                Text     = "Some text",
                DateSent = DateTime.Now,
                Sender   = null
            });
            dbContext.Channels.Add(existingChannel);
            dbContext.SaveChanges();

            // Act -> delete the channel
            var httpDeleteResponse = TestingEngine.HttpClient.DeleteAsync(
                "/api/channels/" + existingChannel.Id).Result;

            // Assert -> HTTP status code is 409
            Assert.AreEqual(HttpStatusCode.Conflict, httpDeleteResponse.StatusCode);
            var result = httpDeleteResponse.Content.ReadAsStringAsync().Result;

            Assert.IsNotNull(result);
            Assert.AreEqual(1, dbContext.Channels.Count());
        }
 private void SeedChannels(MessagesDbContext context)
 {
     var channel = new Channel()
     {
         Name = "Channel1"
     };
     context.Channels.Add(channel);
     context.SaveChanges();
     //var message = new ChannelMessage()
     //{
     //    Text = "New message",
     //    DateSent = DateTime.Now,
     //    Sender = context.Users.FirstOrDefault(),
     //    Channel = channel
     //};
     //context.ChannelMessages.Add(message);
     //context.SaveChanges();
     var channel2 = new Channel()
         {
             Name = "Channel2",
             ChannelMessages = new HashSet<ChannelMessage>()
         };
     context.Channels.Add(channel2);
     context.SaveChanges();
 }
Esempio n. 4
0
 /// <summary>
 /// Получить все
 /// </summary>
 /// <returns></returns>
 public IEnumerable <Message> GetAll()
 {
     using (var context = new MessagesDbContext())
     {
         return(context.Messages);
     }
 }
 public void DeleteNonExistingChannel_ShouldReturnNotFound()
 {
     var context = new MessagesDbContext();
     var channelId= -1;
     var response = this.SendDeleteChannelRequest(channelId);
     Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode);
 }
Esempio n. 6
0
 public static int GetChannelsCountFromDb()
 {
     using (var dbContext = new MessagesDbContext())
     {
         return(dbContext.Channels.Count());
     }
 }
 public void DeleteChannelWithMessages_ShouldReturnConflict()
 {
     var context = new MessagesDbContext();
     var channel = context.Channels.FirstOrDefault(c => c.ChannelMessages.Any());
     var response = this.SendDeleteChannelRequest(channel.Id);
     Assert.AreEqual(HttpStatusCode.Conflict, response.StatusCode);
 }
 public void DeleteChannelWithoutMessages_ShouldReturn200OK()
 {
     var context = new MessagesDbContext();
     var channel = context.Channels.First(c=>c.Name=="Channel2");
     var response = this.SendDeleteChannelRequest(channel.Id);
     Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
 }
        public void DeleteChannel_WhenIsExistingAndNonEmpty_ShoulReturn409()
        {
            // Arrange -> create a channel
            TestingEngine.CleanDatabase();

            MessagesDbContext dbContext = new MessagesDbContext();
            var existingChannel = new Channel()
            {
                Name = "Existing Channel"
            };
            existingChannel.ChannelMessages.Add(new ChannelMessage()
            {
                Id = 11,
                Text = "Some text",
                DateSent = DateTime.Now,
                Sender = null
            });
            dbContext.Channels.Add(existingChannel);
            dbContext.SaveChanges();

            // Act -> delete the channel
            var httpDeleteResponse = TestingEngine.HttpClient.DeleteAsync(
                "/api/channels/" + existingChannel.Id).Result;

            // Assert -> HTTP status code is 409
            Assert.AreEqual(HttpStatusCode.Conflict, httpDeleteResponse.StatusCode);
            var result = httpDeleteResponse.Content.ReadAsStringAsync().Result;
            Assert.IsNotNull(result);
            Assert.AreEqual(1, dbContext.Channels.Count());
        }
Esempio n. 10
0
        private static void ClearDatabase()
        {
            var context = new MessagesDbContext();

            context.Channels.Delete();
            context.SaveChanges();
        }
 public static int GetChannelsCountFromDb()
 {
     using (var dbContext = new MessagesDbContext())
     {
         return dbContext.Channels.Count();
     }
 }
Esempio n. 12
0
        public MessagesSrvc()
        {
            var options = new DbContextOptionsBuilder <MessagesDbContext>()
                          .UseInMemoryDatabase(databaseName: "messages_db")
                          .Options;

            _context = new MessagesDbContext(options);
        }
Esempio n. 13
0
        /// <summary>
        /// Сохранить объекты сущности асинхронно
        /// </summary>
        /// <param name="entities">Объекты сущности</param>
        /// <returns></returns>
        public async Task SaveAsync(params Message[] entities)
        {
            using (var context = new MessagesDbContext())
            {
                await Task.Run(() => context.Messages.AddRange(entities));

                await context.SaveChangesAsync();
            }
        }
Esempio n. 14
0
 public static void CleanDatabase()
 {
     using (var dbContext = new MessagesDbContext())
     {
         dbContext.ChannelMessages.Delete();
         dbContext.UserMessages.Delete();
         dbContext.Users.Delete();
         dbContext.Channels.Delete();
         dbContext.SaveChanges();
     }
 }
 public static void CleanDatabase()
 {
     using (var dbContext = new MessagesDbContext())
     {
         dbContext.ChannelMessages.Delete();
         dbContext.UserMessages.Delete();
         dbContext.Users.Delete();
         dbContext.Channels.Delete();
         dbContext.SaveChanges();
     }
 }
Esempio n. 16
0
        public void TestDeleteChannelByIdWhenChannelIdIsValidAndHasMessagesShouldReturnConflict()
        {
            var context   = new MessagesDbContext();
            var channelId = context.Channels.First(c => c.Name == "ChannelWithMessages").Id;
            var response  = this.DeleteChannelById(channelId);

            Assert.AreEqual(HttpStatusCode.Conflict, response.StatusCode);

            var dbChannel = context.Channels.FirstOrDefault(c => c.Id == channelId);

            Assert.IsNotNull(dbChannel);
        }
Esempio n. 17
0
        public void TestDeleteChannelByIdWhenChannelIdIsInvalidShouldReturnNotFound()
        {
            var invalidId = 10000;
            var context   = new MessagesDbContext();
            var dbChannel = context.Channels.FirstOrDefault(c => c.Id == invalidId);

            Assert.IsNull(dbChannel);

            var response = this.DeleteChannelById(invalidId);

            Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode);
        }
        public void Seed()
        {
            var context = new MessagesDbContext();
            if (!context.Users.Any(u => u.UserName == TestUserUsername))
            {
                SeedUsers(context);
            }

            if (!context.Channels.Any())
            {
                SeedChannels(context);
            }
            }
Esempio n. 19
0
        protected void MessageButton_Click(object sender, EventArgs e)
        {
            var db = new MessagesDbContext();

            db.Messages.Add(new Message()
            {
                Date = DateTime.Now,
                Text = this.MessageText.Text
            });
            db.SaveChanges();

            this.MessageText.Text = string.Empty;

            this.DataBind();
        }
        private void SeedUsers(MessagesDbContext context)
        {
            var userStore = new UserStore<User>(context);
            var userManager = new ApplicationUserManager(userStore);

            var user = new User()
            {
                UserName = TestUserUsername,
                Email = string.Format("{0}@gmail.com", TestUserUsername)
            };

            var userResult = userManager.CreateAsync(user, TestUserPassword).Result;
            if (!userResult.Succeeded)
            {
                Assert.Fail(string.Join("\n", userResult.Errors));
            }
        }
        public void DeleteChannel_WhenIsExisting_ShoulReturn200()
        {
            // Arrange -> create a channel
            TestingEngine.CleanDatabase();
            var existingChannel = new Channel() 
            {
                Name = "Existing Channel"
            };
            MessagesDbContext dbContext = new MessagesDbContext();
            dbContext.Channels.Add(existingChannel);
            dbContext.SaveChanges();

            // Act -> delete the channel
            var httpDeleteResponse = TestingEngine.HttpClient.DeleteAsync(
                "/api/channels/" + existingChannel.Id).Result;

            // Assert -> HTTP status code is 200
            Assert.AreEqual(HttpStatusCode.OK, httpDeleteResponse.StatusCode);
            var result = httpDeleteResponse.Content.ReadAsStringAsync().Result;
            Assert.IsNotNull(result);
            Assert.AreEqual(0, dbContext.Channels.Count());
        }
Esempio n. 22
0
        private static void SeedChannels(MessagesDbContext context)
        {
            context.Channels.Add(new Channel()
            {
                Name            = "EmptyChannel",
                ChannelMessages = new List <ChannelMessage>()
            });
            context.Channels.Add(new Channel()
            {
                Name            = "ChannelWithMessages",
                ChannelMessages = new List <ChannelMessage>()
                {
                    new ChannelMessage()
                    {
                        Text     = "seedSeed",
                        DateSent = DateTime.Now,
                        Sender   = null
                    }
                }
            });

            context.SaveChanges();
        }
        public void DeleteChannel_WhenIsExisting_ShoulReturn200()
        {
            // Arrange -> create a channel
            TestingEngine.CleanDatabase();
            var existingChannel = new Channel()
            {
                Name = "Existing Channel"
            };
            MessagesDbContext dbContext = new MessagesDbContext();

            dbContext.Channels.Add(existingChannel);
            dbContext.SaveChanges();

            // Act -> delete the channel
            var httpDeleteResponse = TestingEngine.HttpClient.DeleteAsync(
                "/api/channels/" + existingChannel.Id).Result;

            // Assert -> HTTP status code is 200
            Assert.AreEqual(HttpStatusCode.OK, httpDeleteResponse.StatusCode);
            var result = httpDeleteResponse.Content.ReadAsStringAsync().Result;

            Assert.IsNotNull(result);
            Assert.AreEqual(0, dbContext.Channels.Count());
        }
Esempio n. 24
0
        private static void SeedDatabase()
        {
            var context = new MessagesDbContext();

            SeedChannels(context);
        }
Esempio n. 25
0
 public MessagesController(MessagesDbContext dbContext)
 {
     this.dbContext = dbContext;
 }
Esempio n. 26
0
 public UserController(MessagesDbContext db)
 {
     this.db          = db;
     this.jwtSettings = new JwtSettings();
 }
Esempio n. 27
0
 public MessagesController(MessagesDbContext context)
 {
     this.context = context;
 }
Esempio n. 28
0
 public MessagesService(MessagesDbContext context)
 {
     this.context = context;
 }
Esempio n. 29
0
 public MessageService(MessagesDbContext messagesDbContext)
 {
     this.messagesDbContext = messagesDbContext;
 }
 protected BaseApiController(MessagesDbContext data)
 {
     this.Data = data;
 }
Esempio n. 31
0
 protected BaseApiController(MessagesDbContext data)
 {
     this.data = data;
 }
 public BaseApiController(MessagesDbContext data)
 {
     this.Data = data;
 }
Esempio n. 33
0
 public MessageOutboxRepository(MessagesDbContext messagesDbContext)
 {
     _messagesDbContext = messagesDbContext;
 }
Esempio n. 34
0
 public UserService(MessagesDbContext context)
 {
     this.context     = context;
     this.jwtSettings = new JwtSettings();
 }
Esempio n. 35
0
 public BaseApiController(MessagesDbContext data)
 {
     this.Data = data;
 }