private void GenerateEvents(int userCount, int userEventCount) { var repository = DependencyResolver.Current.GetService <IRepository>(); var users = repository.Users.ToList().OrderBy(p => Guid.NewGuid()).Take(userCount); var allUsers = repository.Users.ToList(); var cities = repository.Cities.ToList(); foreach (var user in users) { var @event = new Event() { UserID = user.ID, EventDate = DateTime.Now.AddDays(rand.Next(30)), Name = Team.GetRandom(), ImagePath = Imaginarium.SaveRandomImage("/Content/files/uploads/"), Place = Team.GetRandom(), Description = Textarium.GetRandomText(1).Teaser(140), CityID = cities.OrderBy(p => Guid.NewGuid()).First().ID, Coordinate = (rand.NextDouble() * 80).ToString() + "|" + (rand.NextDouble() * 80).ToString() }; repository.CreateEvent(@event); var userEventCout = rand.Next(userEventCount) + 3; for (int i = 0; i < userEventCout; i++) { var userE = allUsers.OrderBy(p => Guid.NewGuid()).FirstOrDefault(); var userEvent = new UserEvent() { EventID = @event.ID, UserID = userE.ID }; repository.CreateUserEvent(userEvent); } } }
private void GenerateGroups(int userCount, int userGroupCount) { var repository = DependencyResolver.Current.GetService <IRepository>(); var users = repository.Users.ToList().OrderBy(p => Guid.NewGuid()).Take(userCount); var cities = repository.Cities.ToList(); foreach (var user in users) { for (int i = 0; i < userGroupCount; i++) { var group = new Group() { UserID = user.ID, Name = Team.GetRandom(), AvatarUrl = Imaginarium.SaveRandomImage("/Content/files/uploads/", 600, 60), Info = Textarium.GetRandomText(2), IsBanned = false, IsVip = rand.Next(100) % 2 == 0 }; repository.CreateGroup(group); } } }
public void GenerateMakeGifts() { var repository = DependencyResolver.Current.GetService <IRepository>(); var users = repository.Users.OrderByDescending(p => p.ID).ToList(); var gifts = repository.Gifts.ToList(); foreach (var user in users) { var countGifts = rand.Next(2) + 1; for (int i = 0; i < countGifts; i++) { var gift = gifts.OrderBy(p => Guid.NewGuid()).FirstOrDefault(); var otherUser = users.Where(p => p.ID != user.ID).OrderBy(p => Guid.NewGuid()).FirstOrDefault(); var userGift = new UserGift() { SenderID = user.ID, ReceiverID = otherUser.ID, GiftID = gift.ID, Text = Textarium.GetRandomText(2), Visible = rand.Next(100) % 2 == 0 }; repository.CreateUserGift(userGift); Console.WriteLine("Человечек " + user.FirstName + " подарил подарок : " + otherUser.FirstName); } } Assert.AreEqual(0, 0); }
public void GenerateUsers(int count = 10) { var repository = DependencyResolver.Current.GetService <IRepository>(); var cities = repository.Cities.ToList(); for (int i = 0; i < count; i++) { var city = cities.OrderBy(p => Guid.NewGuid()).FirstOrDefault(); var firstName = Name.GetRandom(); var lastName = Surname.GetRandom(); var user = new User() { CityID = city.ID, FirstName = string.Format("{0} {1}", firstName, lastName), Password = "******", Description = Textarium.GetRandomText(1).Teaser(250), Birthday = GetRandomBirthDay(18, 75), AvatarPath = Imaginarium.SaveRandomImage("/Content/files/avatars/"), Sex = rand.Next(2) == 1, Height = rand.Next(30) + 160, Weight = rand.Next(40) + 50, Rating = rand.Next(1000) }; user.Email = Email.GetRandom(firstName, lastName); user.Login = user.Email; repository.CreateUser(user); Console.WriteLine("Создан человечек : " + user.FirstName); var status = Textarium.GetRandomText(1).Teaser(120, "..."); var userStatus = new UserStatus() { UserID = user.ID, Text = status, }; repository.CreateUserStatus(userStatus); Console.WriteLine("Человечек " + user.FirstName + " сделал статус: " + userStatus.Text); var max = rand.Next(3) + 3; var preferences = repository.Preferences.ToList(); for (int j = 0; j < max; j++) { var preference = preferences.OrderBy(p => Guid.NewGuid()).First(); var userPreference = new UserPreference() { UserID = user.ID, PreferenceID = preference.ID }; repository.CreateUserPreference(userPreference); Console.WriteLine("Человечек " + user.FirstName + " любит : " + preference.Name); } } Assert.AreEqual(0, 0); }
public void GenerateMessages(int count = 10, int messageCount = 100) { var repository = DependencyResolver.Current.GetService <IRepository>(); var users = repository.Users.OrderBy(p => p.ID).ToList(); var me = repository.Users.FirstOrDefault(p => p.ID == 2); for (int i = 0; i < count; i++) { var talkUsers = users.OrderBy(p => Guid.NewGuid()).Take(2).ToList(); var first = me; var second = me.ID == talkUsers[0].ID ? talkUsers[1] : talkUsers[0]; var connect = repository.Connects.FirstOrDefault(p => (p.UserID == first.ID && p.OtherUserID == second.ID) || (p.OtherUserID == first.ID && p.UserID == second.ID)); if (connect == null) { connect = new Connect() { UserID = first.ID, OtherUserID = second.ID }; repository.CreateConnect(connect); } var currentDate = DateTime.Now.AddDays(-(rand.Next(100))); for (int j = 0; j < messageCount; j++) { currentDate = currentDate.AddMinutes(rand.Next(100)); var message = new Message() { SenderID = rand.Next(10) % 2 == 0 ? first.ID : second.ID, AddedDate = currentDate, Text = Textarium.GetRandomText(2).Teaser(rand.Next(800) + 100, "") }; message.ReceiverID = first.ID == message.SenderID ? second.ID : first.ID; repository.CreateMessage(message); Console.WriteLine(string.Format("{0} написал {1} ({2}...)", message.Sender.FirstName, message.Receiver.FirstName, message.Text.Teaser(10))); } } }
private void GenerateMeetings(int userCount, int meetingCount) { var repository = DependencyResolver.Current.GetService <IRepository>(); var users = repository.Users.ToList().OrderBy(p => Guid.NewGuid()).Take(userCount); var cities = repository.Cities.ToList(); foreach (var user in users) { for (int i = 0; i < meetingCount; i++) { if (user.Money >= 50) { var meeting = new Meeting() { UserID = user.ID, MeetingDate = DateTime.Now.AddDays(rand.Next(30)), Text = Textarium.GetRandomText(1).Teaser(140), CityID = cities.OrderBy(p => Guid.NewGuid()).First().ID, }; var moneyDetail = new MoneyDetail() { Type = (int)MoneyDetail.TypeEnum.PayForMeeting, Sum = -50, Description = "Оплата создания встречи", UserID = user.ID }; var guid = Guid.NewGuid(); repository.CreateMoneyDetail(moneyDetail, guid); repository.CreateMeeting(meeting); repository.SubmitMoney(guid); } } } }
public void GenerateBlogPosts(int count) { var repository = DependencyResolver.Current.GetService <IRepository>(); var users = repository.Users.ToList(); foreach (var user in users) { var countNew = count - rand.Next(20) + 10; for (int i = 0; i < countNew; i++) { var blogPost = new BlogPost() { UserID = user.ID, Text = Textarium.GetRandomHtmlText(1 + rand.Next(3)), Attach = rand.Next(12) % 4 == 0 ? Imaginarium.SaveRandomImage("/Content/files/uploads/") : null, Header = Team.GetRandom() + " " + Team.GetRandom(), }; repository.CreateBlogPost(blogPost); Console.WriteLine(string.Format("{0} написал в блоге {1}", user.FirstName, blogPost.Header)); } } }
public void GenerateGroupBlogPosts(int countGroup, int countPost, int countComment) { var repository = DependencyResolver.Current.GetService <IRepository>(); var groups = repository.Groups.ToList().OrderBy(p => Guid.NewGuid()).Take(countGroup); var users = repository.Users.ToList(); foreach (var group in groups) { var countNew = countPost + rand.Next(4) - 2; for (int i = 0; i < countNew; i++) { var randomGroupUser = group.SubUsers.ToList().OrderBy(p => Guid.NewGuid()).First(); var groupBlogPost = new GroupBlogPost() { GroupID = group.ID, UserID = randomGroupUser.ID, Text = Textarium.GetRandomHtmlText(1 + rand.Next(3)), Attach = rand.Next(12) % 4 == 0 ? Imaginarium.SaveRandomImage("/Content/files/uploads/") : null, Header = Team.GetRandom() + " " + Team.GetRandom(), }; repository.CreateGroupBlogPost(groupBlogPost); Console.WriteLine(string.Format("{0} написал в блоге группы {1}", randomGroupUser.FirstName, groupBlogPost.Header)); var newestCount = countComment + rand.Next(3) - 2; for (int j = 0; j < newestCount; j++) { var user = users.OrderBy(p => Guid.NewGuid()).FirstOrDefault(); var comment = new Comment() { UserID = user.ID, Text = Textarium.GetRandomText(1 + rand.Next(2)), }; repository.CreateComment(comment); var commentGroupBlogPost = new CommentGroupBlogPost() { CommentID = comment.ID, GroupBlogPostID = groupBlogPost.ID }; repository.CreateCommentGroupBlogPost(commentGroupBlogPost); if (commentGroupBlogPost.GroupBlogPost.UserID != user.ID) { var feed = new Feed() { ActionType = (int)Feed.ActionTypeEnum.AddEventComment, GroupBlogPostID = commentGroupBlogPost.GroupBlogPost.UserID, CommentID = comment.ID, UserID = commentGroupBlogPost.GroupBlogPost.UserID, ActorID = user.ID, IsNew = true, }; repository.CreateFeed(feed); } Console.WriteLine(string.Format("{0} написал комментарий в блоге {1}", user.FirstName, comment.Text.Teaser(50))); if (rand.Next(100) % 2 == 0) { var user2 = users.OrderBy(p => Guid.NewGuid()).FirstOrDefault(); var replyComment = new Comment() { ParentID = comment.ID, UserID = user2.ID, Text = Textarium.GetRandomText(1 + rand.Next(2)), }; repository.CreateComment(replyComment); var replyCommentGroupBlog = new CommentGroupBlogPost() { CommentID = replyComment.ID, GroupBlogPostID = groupBlogPost.ID }; repository.CreateCommentGroupBlogPost(replyCommentGroupBlog); if (replyCommentGroupBlog.GroupBlogPost.UserID != user.ID) { var feed = new Feed() { ActionType = (int)Feed.ActionTypeEnum.AddEventComment, GroupBlogPostID = replyCommentGroupBlog.GroupBlogPost.UserID, CommentID = comment.ID, UserID = replyCommentGroupBlog.GroupBlogPost.UserID, ActorID = user.ID, IsNew = true, }; repository.CreateFeed(feed); } Console.WriteLine(string.Format("{0} ответил комментарием в блоге {1}", user2.FirstName, replyComment.Text.Teaser(50))); } } } } }
public void GenerateEventComments() { var repository = DependencyResolver.Current.GetService <IRepository>(); var users = repository.Users.ToList(); var events = repository.Events.ToList(); foreach (var @event in events) { var countNew = rand.Next(3) + 2; for (int i = 0; i < countNew; i++) { var user = users.OrderBy(p => Guid.NewGuid()).FirstOrDefault(); var comment = new Comment() { UserID = user.ID, Text = Textarium.GetRandomText(1 + rand.Next(2)), }; repository.CreateComment(comment); var eventComment = new CommentEvent() { CommentID = comment.ID, EventID = @event.ID }; repository.CreateCommentEvent(eventComment); if (eventComment.Event.UserID != user.ID) { var feed = new Feed() { ActionType = (int)Feed.ActionTypeEnum.AddEventComment, EventID = eventComment.EventID, CommentID = comment.ID, UserID = eventComment.Event.UserID, ActorID = user.ID, IsNew = true, }; repository.CreateFeed(feed); } Console.WriteLine(string.Format("{0} написал комментарий в блоге {1}", user.FirstName, comment.Text.Teaser(50))); if (rand.Next(100) % 2 == 0) { var user2 = users.OrderBy(p => Guid.NewGuid()).FirstOrDefault(); var replyComment = new Comment() { ParentID = comment.ID, UserID = user2.ID, Text = Textarium.GetRandomText(1 + rand.Next(2)), }; repository.CreateComment(replyComment); var replyEventComment = new CommentEvent() { CommentID = replyComment.ID, EventID = @event.ID }; repository.CreateCommentEvent(replyEventComment); if (replyEventComment.Event.UserID != user.ID) { var feed = new Feed() { ActionType = (int)Feed.ActionTypeEnum.AddEventComment, EventID = replyEventComment.EventID, CommentID = comment.ID, UserID = replyEventComment.Event.UserID, ActorID = user.ID, IsNew = true, }; repository.CreateFeed(feed); } Console.WriteLine(string.Format("{0} ответил комментарием в блоге {1}", user2.FirstName, replyComment.Text.Teaser(50))); } } } }