Inheritance: MonoBehaviour
Example #1
0
    public void CreateEventRecord(EventsController.majorEvent eventType, Sprite eventSprite)
    {
        GameObject eventObject = Instantiate(eventRecordPrefab, sliderPos, Quaternion.identity) as GameObject;

        eventObject.transform.SetParent(this.transform, false);
        eventObject.GetComponentsInChildren<Image>()[2].sprite = eventSprite;
    }
        public void GetEvents_Returns_200_OK_For_Events()
        {
            //Arrange
            var eventService = new StubIEventsService()
            {
                GetEvents = () => EventTestData.SingleEvent
            };

            EventsController sut = new EventsController(eventService);
            ContextConfigure.SetupController(sut, "events");

            //acct
            HttpResponseMessage response = sut.GetEvents();

            //Assert
            Assert.True(response.StatusCode == HttpStatusCode.OK);
        }
        public void GetEvents_Returns_204_NoContent_For_No_Events()
        {
            //Arrange
            var eventService = new StubIEventsService() {
                GetEvents = () => Enumerable.Empty<Event>()
            };

            EventsController sut = new EventsController(eventService);

            ContextConfigure.SetupController(sut, "events");

            //acct
            HttpResponseMessage response =  sut.GetEvents();

            //Assert
            Assert.True(response.StatusCode == HttpStatusCode.NoContent);
        }
    public void ActivateMajorEvent(EventsController.majorEvent newEvent)
    {
        string nameString = "No Critter Found";
        string effectString = "";

        SetCritter();

        if (critter)
        {
            nameString = critter.GetName();

            if (newEvent == EventsController.majorEvent.ERUPTIONS){ }
            else if (newEvent == EventsController.majorEvent.ICEAGE) { }
            else if (newEvent == EventsController.majorEvent.METEOR) { }
            else if (newEvent == EventsController.majorEvent.METHANE) { }
            else if (newEvent == EventsController.majorEvent.SHIFT) { }
        }

        SetText(nameString, effectString);
    }
        public async void GetEvents_Returns_Correct_Events()
        {
            //Arrange
            var eventService = new StubIEventsService()
            {
                GetEvents = () => EventTestData.MultipleEvents
            };

            EventsController sut = new EventsController(eventService);

            ContextConfigure.SetupController(sut, "events");

            //acct
            HttpResponseMessage response = sut.GetEvents();
            var results = await response.Content.ReadAsAsync<IEnumerable<Event>>();
            results.First().Description = results.First().Host = "";

            //Assert
            Assert.Equal(results, EventTestData.MultipleEvents);
            Assert.Equal(results.Count(), EventTestData.MultipleEvents.Count());            
        }
        public void GetEventsByEventCodeAndGenderValidReturnsOk()
        {
            //Setup
            var mockEventsRepo       = new Mock <IEventRepo>();
            var mockEventResultsRepo = new Mock <IEventResultsRepo>();
            var mockUserRepo         = new Mock <IUserRepo>();
            var listOfEvents         = new List <Event>
            {
                new Event()
                {
                    EventId     = 1,
                    EventAge    = "15",
                    EventCode   = "01",
                    EventGender = "Mix",
                    MeetId      = 2,
                    Round       = "F"
                },
                new Event()
                {
                    EventId     = 2,
                    EventAge    = "15",
                    EventCode   = "02",
                    EventGender = "F",
                    MeetId      = 2,
                    Round       = "F"
                }
            };

            mockEventsRepo.Setup(mER => mER.GetEventsByEventCodeAndGender("01", "M")).Returns(listOfEvents);

            var sut = new EventsController(mockEventsRepo.Object, mockEventResultsRepo.Object, mockUserRepo.Object);

            //Action
            var res = sut.GetEventsByEventCodeAndGender("01", "M");

            //Assert
            res.Should().BeOfType <OkNegotiatedContentResult <List <Event> > >();
            res.As <OkNegotiatedContentResult <List <Event> > >().Content.Should().BeEquivalentTo(listOfEvents);
        }
        public EventsController Arrange_Event_Controller()
        {
            var testEvent1 = new Event {
                Id = 1
            };
            var testEvent2 = new Event {
                Id = 2
            };

            var testUser = new SchedulerUser {
                Id = "99fd20b8-7194-31e1-945b-e6736c732499", Events = new List <Event> {
                    testEvent1, testEvent2
                }
            };

            var users = new List <SchedulerUser> {
                testUser
            }.AsQueryable();
            var service = new Service();


            var mockSet = new Mock <DbSet <SchedulerUser> >();

            mockSet.As <IQueryable <SchedulerUser> >().Setup(m => m.Provider).Returns(users.Provider);
            mockSet.As <IQueryable <SchedulerUser> >().Setup(m => m.Expression).Returns(users.Expression);
            mockSet.As <IQueryable <SchedulerUser> >().Setup(m => m.ElementType).Returns(users.ElementType);
            mockSet.As <IQueryable <SchedulerUser> >().Setup(m => m.GetEnumerator()).Returns(users.GetEnumerator);

            var context = new Mock <SchedulerDbContext>();

            context.Setup(c => c.Users).Returns(mockSet.Object);

            var controller = new EventsController(context.Object, service)
            {
                ControllerContext = MockContext()
            };

            return(controller);
        }
        public async void CreateAdd_RedirectToActionResult()
        {
            //Arrange
            EventsController eventsController = new EventsController(context);

            //Act
            var result = await eventsController.Create(new Event()
            {
                Id                = 2,
                OrganizerId       = 1,
                EventsStartTime   = DateTime.Now,
                EventsStartEnd    = DateTime.Now,
                NumberOfAttendies = 12,
                PrivacySetting    = true,
                VerifiedOnly      = true,
                EventTypeId       = 1,
                VenueAddressId    = 1
            });

            //Assert
            Assert.IsType <RedirectToActionResult>(result);
        }
Example #9
0
        public async void can_delete_event()
        {
            var options = new DbContextOptionsBuilder <DatabaseContext>().UseInMemoryDatabase(databaseName: "EventTest8").Options;
            var userId  = "1";

            using (var context = new DatabaseContext(options))
            {
                context.Events.Add(new Event()
                {
                    Id = 1, StartDate = new DateTime(), EndDate = new DateTime(), Title = "Event1", OwnerId = userId
                });
                context.SaveChanges();
                var controller = new EventsController(context);
                AddUserClaim(controller, userId);

                Assert.Equal(1, context.Events.Count());

                var result = await controller.DeleteEvent(1);

                Assert.Equal(0, context.Events.Count());
            }
        }
Example #10
0
        public async void delete_event_not_ownedshould_return_unauthorized()
        {
            var options = new DbContextOptionsBuilder <DatabaseContext>().UseInMemoryDatabase(databaseName: "EventTest8").Options;
            var userId  = "1";

            using (var context = new DatabaseContext(options))
            {
                context.Events.Add(new Event()
                {
                    Id = 1, StartDate = new DateTime(), EndDate = new DateTime(), Title = "Event1", OwnerId = "2"
                });
                context.SaveChanges();
                var controller = new EventsController(context);
                AddUserClaim(controller, userId);

                Assert.Equal(1, context.Events.Count());

                var result = await controller.DeleteEvent(1);

                result.Result.Should().BeOfType <UnauthorizedResult>();
            }
        }
        public void GetAllPatients_IfThereIsNoEvents_ShouldReturnNotFoundAndEmptyList()
        {
            // Arrange
            _events.Clear();
            _patientServiceMock.Setup(p => p.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(new PatientData {
                Id = 1, Name = "TestPatient"
            });
            _doctorServiceMock.Setup(p => p.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(new DoctorData {
                Id = 1, Name = "TestDoctor"
            });
            _eventServiceMock.Setup(p => p.GetEvents()).ReturnsAsync(_events);
            _eventsController = new EventsController(_eventServiceMock.Object, _patientServiceMock.Object, _doctorServiceMock.Object, _loggerMock.Object);

            // Act
            var response = _eventsController.GetAllEvents().GetAwaiter().GetResult();

            var notFoundResult = response as NotFoundResult;

            // Assert
            Assert.IsNotNull(notFoundResult);
            Assert.AreEqual(404, notFoundResult.StatusCode);
        }
Example #12
0
        public async void can_get_all_events_per_user()
        {
            var options = new DbContextOptionsBuilder <DatabaseContext>().UseInMemoryDatabase(databaseName: "EventTest1").Options;
            var userId  = "1";

            using (var context = new DatabaseContext(options))
            {
                context.Events.Add(new Event()
                {
                    Id = 1, StartDate = new DateTime(), EndDate = new DateTime(), Title = "Event1", OwnerId = userId
                });
                context.SaveChanges();
                var controller = new EventsController(context);
                AddUserClaim(controller, userId);
                var result = await controller.GetEvents("1");

                var count = result.Value.Count();
                var value = result.Value.ToArray();
                Assert.Equal(1, count);
                Assert.Equal("Event1", (value[0]).Title);
            }
        }
Example #13
0
        public void CreateEventViewModelToEventMethodShouldReturnCorrectEventProperties()
        {
            var userList = new List <ApplicationUser>
            {
                new ApplicationUser {
                    Id = null, Addresses = new List <Address> {
                        new Address()
                    }
                }
            };

            var usersRepoMock = new Mock <IRepository <ApplicationUser> >(MockBehavior.Strict);

            usersRepoMock.Setup(x => x.All()).Returns(userList.AsQueryable());

            var uowDataMock = new Mock <IUowData>(MockBehavior.Strict);

            uowDataMock.Setup(x => x.Users).Returns(usersRepoMock.Object);

            var controller = new EventsController(uowDataMock.Object);

            var model = new CreateEventViewModel
            {
                EndDate   = new DateTime(2014, 12, 14),
                EndTime   = new DateTime(2014, 12, 14, 12, 0, 0),
                EventType = EventType.Single,
                StartDate = new DateTime(2014, 12, 13),
                StartTime = new DateTime(2014, 12, 13, 10, 30, 0),
            };

            var ev = CreateEventViewModel.ToEvent(model, controller);

            Assert.AreEqual(model.EndDate, ev.EndDateTime.Date);
            Assert.AreEqual(model.EndTime.ToShortTimeString(), ev.EndDateTime.ToShortTimeString());
            Assert.AreEqual(model.EventType, ev.EventType);
            Assert.AreEqual(model.StartDate, ev.StartDateTime.Date);
            Assert.AreEqual(model.StartTime.ToShortTimeString(), ev.StartDateTime.ToShortTimeString());
        }
Example #14
0
        private void get_event(Guid eventId, ref string responseText)
        {
            if (!paramsContainer.GBEdit)
            {
                return;
            }

            Event evt = EventsController.get_event(paramsContainer.Tenant.Id, eventId, true);

            if (evt == null)
            {
                responseText = "{\"ErrorText\":\"" + Messages.OperationFailed + "\"}";
                return;
            }

            responseText = "{\"EventID\":\"" + eventId.ToString() + "\"" +
                           ",\"Title\":\"" + Base64.encode(evt.Title) + "\"" +
                           ",\"Type\":\"" + Base64.encode(evt.EventType) + "\"" +
                           ",\"Description\":\"" + Base64.encode(evt.Description) + "\"" +
                           ",\"BeginDate\":\"" + PublicMethods.get_local_date(evt.BeginDate.Value) + "\"" +
                           ",\"FinishDate\":\"" + PublicMethods.get_local_date(evt.FinishDate.Value) + "\"" +
                           "}";
        }
Example #15
0
        public void KeywordSearchNegativeTest()
        {
            // Arrange
            EventsController    eventsController = new EventsController();
            ICollection <Event> events           = new List <Event>()
            {
                new Event()
                {
                    Name = "Ladies night"
                },
                new Event()
                {
                    Name = "Jason's goodbye party"
                }
            };
            List <Event> resultEvents = new List <Event>();

            // Act
            resultEvents = eventsController.FilterEvents(events.AsEnumerable(), null, "Bachelor party", null);

            // Assert
            Assert.AreEqual(0, resultEvents.Count, string.Format("Should return 0 event from the search. Actual result: {0}", resultEvents.Count));
        }
Example #16
0
        public void LocationSearchPositiveTestMultipleResults()
        {
            // Arrange
            EventsController    eventsController = new EventsController();
            ICollection <Event> events           = new List <Event>()
            {
                new Event()
                {
                    Location = "Birmingham, United Kingdom"
                },
                new Event()
                {
                    Location = "Manchester, United Kingdom"
                }
            };
            List <Event> resultEvents = new List <Event>();

            // Act
            resultEvents = eventsController.FilterEvents(events.AsEnumerable(), "United Kingdom", null, null);

            // Assert
            Assert.AreEqual(2, resultEvents.Count, string.Format("Should return 2 events from the search. Actual result: {0}", resultEvents.Count));
        }
        public async Task UpdateById_Ok_Result()
        {
            var options = new DbContextOptionsBuilder <DataBaseContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString())
                          .Options;
            var eventTest = new Event {
                Id = Guid.Parse("3fa85f64-5717-4562-b3fc-2c963f66afa6"), Description = "Test1", DeadlineDate = DateTimeOffset.FromUnixTimeSeconds(1560286800), IsComplete = false
            };
            var updateEventTest = new UpdateEvent {
                Description = "UpdateTest1", DeadlineDate = 1560286800, IsComplete = false
            };
            var context = new DataBaseContext(options);
            var service = new EventsController(context);

            context.Events.Add(eventTest);

            var result = await service.UpdateById(Guid.Parse("3fa85f64-5717-4562-b3fc-2c963f66afa6"), updateEventTest);

            var okResult = result as OkResult;

            Assert.IsNotNull(okResult);
            Assert.AreEqual(200, okResult.StatusCode);
        }
Example #18
0
        private void btnImportEvent_Click(object sender, EventArgs e)
        {
            Stream         myStream = null;
            MultipleOutput mo       = new MultipleOutput();
            OpenFileDialog ofd      = new OpenFileDialog
            {
                InitialDirectory = "C:\\Users\\Matthijs\\Downloads",
                Filter           = "CSV Files (*.csv)|*.csv"
            };

            EventsController ec = new EventsController();

            if (ofd.ShowDialog() == DialogResult.OK)
            {
                using (myStream = ofd.OpenFile())
                {
                    mo = ec.ImportEvent(myStream);
                }
                EventCreationForm ecf = new EventCreationForm(mo);
                this.Hide();
                ecf.Show();
            }
        }
Example #19
0
        public void LocationSearchNegativeTest()
        {
            // Arrange
            EventsController    eventsController = new EventsController();
            ICollection <Event> events           = new List <Event>()
            {
                new Event()
                {
                    Location = "Birmingham, United Kingdom"
                },
                new Event()
                {
                    Location = "Hamburg, Germany"
                }
            };
            List <Event> resultEvents = new List <Event>();

            // Act
            resultEvents = eventsController.FilterEvents(events.AsEnumerable(), "Berlin", null, null);

            // Assert
            Assert.AreEqual(0, resultEvents.Count, string.Format("Should return 0 events from the search. Actual result: {0}", resultEvents.Count));
        }
Example #20
0
        public void GetAllCustomers()
        {
            var eventServiceMock = new Mock <IEventService>();

            eventServiceMock.Setup(x => x.GetCustomers()).Returns(() => new List <Customer>
            {
                new Customer {
                    Id = Guid.Parse("19A5EB62-F189-4C97-A64A-ED4EFB180DB8"), Name = "Customer1"
                },
                new Customer {
                    Id = Guid.Parse("19A5EB63-F189-4C97-A64A-ED4EFB180DB9"), Name = "Customer2"
                },
            });
            var controller = new EventsController(eventServiceMock.Object);

            var result = controller.GetCustomers();

            // Assert
            var okResult  = result.Should().BeOfType <OkObjectResult>().Subject;
            var customers = okResult.Value.Should().BeAssignableTo <IEnumerable <Customer> >().Subject;

            customers.Count().Should().Be(2);
        }
    void ShowWinPopup(JSONNode user)
    {
        EventsController eventsController = new EventsController();

        eventsController.ShowPopup("popupWin");
        if (TournamentController.CURRENT_TOURNAMENT_GAIN_TYPE == TournamentManager.GAIN_TYPE_BUBBLE)
        {
            GameObject.Find("popup_gain").GetComponent <Text>().text = TournamentController.CURRENT_TOURNAMENT_GAIN.ToString();
            if (float.Parse(UserManager.CurrentWater) != user["bubble_credit"].AsFloat)
            {
                UserManager.CurrentWater = user["bubble_credit"].Value;
            }
        }
        else
        {
            GameObject.Find("popup_gain").GetComponent <Text>().text = TournamentController.CURRENT_TOURNAMENT_GAIN + CurrencyManager.CURRENT_CURRENCY;
            GameObject.Find("popup_gain_type").transform.localScale  = Vector3.zero;
            if (float.Parse(UserManager.CurrentMoney) != user["money_credit"].AsFloat)
            {
                UserManager.CurrentMoney = user["money_credit"].Value;
            }
        }
    }
        public void JoinMethodShouldReturnJsonWhenEventIsTaken()
        {
            var ev = new Event {
                Taken = true
            };

            var eventsRepoMock = new Mock <IRepository <Event> >(MockBehavior.Strict);

            eventsRepoMock.Setup(x => x.GetById(It.IsAny <int>())).Returns(ev);

            var uowDataMock = new Mock <IUowData>(MockBehavior.Strict);

            uowDataMock.Setup(x => x.Events).Returns(eventsRepoMock.Object);

            var controller = new EventsController(uowDataMock.Object);

            var jsonResult = controller.Join(100) as JsonResult;

            dynamic jsonResultData = jsonResult.Data;

            Assert.IsNotNull(jsonResult, "JsonResult is null.");
            Assert.AreEqual(true, jsonResultData.taken);
        }
        public void Index()
        {
            // Arrange
            EventsController controller = new EventsController();

            var eventReq = new EventReq {From = "20130613154515", To = "20130614163022"};
              //  var eventReq = new EventReq {From = "20130618202500", To = "20130619182551"};
            // TODO this test need better DTO that gives some data. Should SearchTerm be injected ?
              //  var eventReq = new EventReq {  };
             //   var eventService = new EventService { Repository = TestContainer.Resolve<IEventRepository>() };

            // Act
            ViewResult result = controller.Index(eventReq) as ViewResult;

            // Assert

            Assert.AreEqual("Here is a list of all filtered events from all server nodes.", result.ViewBag.Message);
            Assert.IsNotNull(result, "Response from Eventservice is null");
            Assert.IsInstanceOfType(result.Model, typeof(IEventRecListViewModel), "Returns the wrong ViewModel");
            int evRlCount = ((IEventRecListViewModel)result.Model).EventList.Count;
            Assert.IsTrue(evRlCount > 0, "There should be more then 0 item in the event test list");
              //  Assert.IsTrue(evRlCount == 20, "There should be 20 item in the event test list");
        }
Example #24
0
        public void Get_OneEvent_ShouldPass()
        {
            //Arrange
            var testData = new List <EventListDTO>
            {
                new EventListDTO
                {
                    EventId    = 1,
                    Name       = "Event1",
                    RoomName   = "Room1",
                    Address1   = "Address1",
                    Address2   = "",
                    PostalCode = "SO12AB",
                    City       = "Southampton",
                    DateStart  = new DateTime(2020, 1, 1, 17, 0, 0)
                }
            };

            var mockEventList = new Mock <EventList>();

            mockEventList.Setup(x => x.List())
            .Returns(testData);

            var controller = new EventsController(mockEventList.Object, new NullLogger <EventsController>());

            //Act
            var result = controller.Get();

            //Assert
            var objectResult = Assert.IsType <OkObjectResult>(result);
            var model        = Assert.IsAssignableFrom <List <EventListDTO> >(objectResult.Value);

            Assert.Single(model);
            Assert.Equal(1, model[0].EventId);
            Assert.Equal("Event1", model[0].Name);
        }
Example #25
0
        public void ListTest()
        {
            Mock <IEventService>    eventService    = new Mock <IEventService>();
            Mock <ICategoryService> categoryService = new Mock <ICategoryService>();
            var userManager = GetUserManagerMock();

            EventsController eventsController = new EventsController(categoryService.Object, eventService.Object, userManager.Object);

            categoryService.Setup(item => item.GetCategoryName(TestObjects.Category1.Name)).Returns(
                TestObjects.Category1.Name
                );
            eventService.Setup(item => item.GetAll()).Returns(
                new List <Event>()
            {
                TestObjects.Event1, TestObjects.Event2, TestObjects.Event3
            }
                );
            eventService.Setup(item => item.GetEvents(TestObjects.Category1.Name)).Returns(
                new List <Event>()
            {
                TestObjects.Event1
            }
                );

            var result   = eventsController.List(TestObjects.Category1.Name, 0);
            var expected = new EventsListViewModel()
            {
                Events = new List <Event>()
                {
                    TestObjects.Event1
                },
                CurrentCategory = TestObjects.Category1.Name
            };

            Assert.Equal(expected.ToString(), result.Model.ToString());
        }
Example #26
0
        public async Task Details_ReturnsViewResultWithAttendeeModel()
        {
            //Arrange
            var dbContext = await GetDatabaseContext();

            var eventsController = new EventsController(dbContext);

            //Act
            var result = await eventsController.Details(11);

            //Assert
            var viewResult = Assert.IsType <ViewResult>(result);
            var model      = Assert.IsType <Event>(
                viewResult.ViewData.Model);

            Assert.Equal(11, model.EventID);
            Assert.Equal(11, model.ManagerID);
            Assert.Equal(1, model.EventTypeID);
            Assert.Equal("Test", model.Name);
            Assert.Equal("blah", model.Description);
            Assert.Equal("blah", model.Location);
            Assert.Equal("2 hours", model.Duration);
            Assert.Equal(DateTime.Parse("22-Aug-2021 14:00"), model.StartTime);
        }
Example #27
0
        public ActionResult Branch(int?id)
        {
            string userName = HttpContext.UserIdentity();

            WriteLineForDebug("Branching from candidate " + id.ToString(), userName);
            if (id == null)
            {
                WriteLineForDebug("ID was wrong when branching.", userName);
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Candidate candidate = db.Candidates.Find(id);

            if (candidate == null)
            {
                WriteLineForDebug("Candidate not found when branchin.", userName);
                return(HttpNotFound());
            }
            if (!EventsController.IsFreeEvolSlot(userName))
            {
                return(RedirectToAction("EvolutionBusy"));
            }
            PrepareAndRaiseBranch(id, candidate, userName);
            return(RedirectToAction("WaitingForEvolutionSetup"));
        }
Example #28
0
        public ActionResult ResetEvolution()
        {
            string userName = HttpContext.UserIdentity();

            if (CheckIfUserExists(userName))
            {
                WriteLineForDebug("Reset evolution", userName);
                // The user is active: send a heartbeat
                HeartBeat(userName);
                // If we were branching from a saved genome, then the user had that
                // genome as the parent ID. Reseting evolution means this is no longer
                // the parent (there is none) so we set this ID to null
                ActiveUsersList <NeatGenome> .AddParentToUserName(userName, null);

                ActiveUsersList <NeatGenome> .SetUserWaitingForVideos(userName);

                EventsController.RaiseResetEvolutionEvent(userName);
                return(RedirectToAction("WaitingForEvolutionSetup"));
            }
            else
            {
                return(RedirectToAction("Index"));
            }
        }
    void Start()
    {
        tm = new TournamentManager();
        UserManager um = new UserManager();

        userId = um.getCurrentUserId();
        token  = um.getCurrentSessionToken();
        UnityThreadHelper.CreateThread(() =>
        {
            tournamentJson = tm.getTournament(TournamentController.getCurrentTournamentID(), token);
            UnityThreadHelper.Dispatcher.Dispatch(() =>
            {
                setTournamentData();
                initUI(challenges, participants);

                if (!isAvailable())
                {
                    hidePlayButton();
                }
                if (!isNextChallengeAvailable())
                {
                    hidePlayButton();
                }
            });
        });
        Play.onClick.AddListener(() =>
        {
            EventsController.ChallengeType = "Bracket";
            SceneManager.LoadScene(GamesManager.GAME_SCENE_NAME);
        });
        Great.onClick.AddListener(() =>
        {
            EventsController eventsController = new EventsController();
            eventsController.HidePopup("popupWIN", true);
        });
    }
        public async Task GetById_Ok_Result()
        {
            var options = new DbContextOptionsBuilder <DataBaseContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString())
                          .Options;
            var context   = new DataBaseContext(options);
            var service   = new EventsController(context);
            var id        = Guid.Parse("3fa85f64-5717-4562-b3fc-2c963f66afa6");
            var eventTest = new Event
            {
                Id           = id,
                Description  = "Test1",
                DeadlineDate = DateTimeOffset.FromUnixTimeSeconds(1560286800),
                IsComplete   = false
            };

            context.Events.Add(eventTest);
            context.SaveChanges();

            var result = await service.GetById(id);

            Assert.IsNotNull(result);
            Assert.AreEqual(id, result.Value.Id);
        }
        public void DeleteMethodShouldReturnEventToDelete()
        {
            var eventList = new List <Event>
            {
                new Event
                {
                    Id            = 1, EndDateTime = new DateTime(2014, 1, 12, 12, 0, 0),
                    EventType     = Models.EventType.Single,
                    StartDateTime = new DateTime(2014, 1, 12, 11, 0, 0),
                    Users         = new List <ApplicationUser> {
                        new ApplicationUser {
                            Id = "1"
                        }
                    }
                },
                new Event
                {
                    Id            = 2, EndDateTime = new DateTime(2014, 1, 12, 12, 0, 0),
                    EventType     = Models.EventType.Single,
                    StartDateTime = new DateTime(2014, 1, 12, 11, 0, 0),
                    Users         = new List <ApplicationUser> {
                        new ApplicationUser {
                            Id = "1"
                        }
                    }
                },
                new Event
                {
                    Id            = 3, EndDateTime = new DateTime(2014, 1, 12, 12, 0, 0),
                    EventType     = Models.EventType.Single,
                    StartDateTime = new DateTime(2014, 1, 12, 11, 0, 0),
                    Users         = new List <ApplicationUser> {
                        new ApplicationUser {
                            Id = "1"
                        }
                    }
                },
                new Event
                {
                    Id            = 4, EndDateTime = new DateTime(2014, 1, 12, 12, 0, 0),
                    EventType     = Models.EventType.Double,
                    StartDateTime = new DateTime(2014, 1, 12, 11, 0, 0),
                    Users         = new List <ApplicationUser> {
                        new ApplicationUser {
                            Id = "1"
                        }
                    }
                },
            };

            var eventsRepoMock = new Mock <IRepository <Event> >(MockBehavior.Strict);

            eventsRepoMock.Setup(x => x.All()).Returns(eventList.AsQueryable());

            var uowDataMock = new Mock <IUowData>(MockBehavior.Strict);

            uowDataMock.Setup(x => x.Events).Returns(eventsRepoMock.Object);

            var controller = new EventsController(uowDataMock.Object);

            var viewResult = controller.Delete(4, null) as PartialViewResult;
            var model      = viewResult.Model as CreateEventViewModel;

            Assert.IsNotNull(viewResult, "The result of delete method is null");
            Assert.IsNotNull(model, "The model is null.");
            Assert.AreEqual(4, model.Id, "The expected event is different.");
            Assert.AreEqual(EventType.Double, model.EventType, "EventType is different than expected.");
        }
        public void JoinMethodShouldReturnJsonWhenEventIsNotTaken()
        {
            var ev = new Event {
                Taken = false, Users = new List <ApplicationUser> {
                    new ApplicationUser {
                        Id = "null"
                    }
                }
            };
            var userList = new List <ApplicationUser>
            {
                new ApplicationUser {
                    Id = "1", Addresses = new List <Address> {
                        new Address()
                    }
                },
                new ApplicationUser {
                    Id = "2", Addresses = new List <Address> {
                        new Address()
                    }
                },
                new ApplicationUser {
                    Id = null, Addresses = new List <Address> {
                        new Address()
                    }
                }
            };

            var eventsRepoMock = new Mock <IRepository <Event> >(MockBehavior.Strict);

            eventsRepoMock.Setup(x => x.GetById(It.IsAny <int>())).Returns(ev);
            var usersRepoMock = new Mock <IRepository <ApplicationUser> >(MockBehavior.Strict);

            usersRepoMock.Setup(x => x.All()).Returns(userList.AsQueryable());

            var uowDataMock = new Mock <IUowData>(MockBehavior.Strict);

            uowDataMock.Setup(x => x.Events).Returns(eventsRepoMock.Object);
            uowDataMock.Setup(x => x.Users).Returns(usersRepoMock.Object);
            bool isSaveChangesAsyncExecuted = false;

            uowDataMock.Setup(x => x.SaveChanges()).Returns(It.IsAny <int>).Callback(() => isSaveChangesAsyncExecuted = true);

            var controller = new EventsController(uowDataMock.Object);

            #region To test Url.Action() method.
            var routes = new RouteCollection();
            RouteConfig.RegisterRoutes(routes);

            var request = new Mock <HttpRequestBase>(MockBehavior.Strict);
            request.SetupGet(x => x.ApplicationPath).Returns("/");
            request.SetupGet(x => x.Url).Returns(new Uri("/Events", UriKind.Relative));
            request.SetupGet(x => x.ServerVariables).Returns(new System.Collections.Specialized.NameValueCollection());

            var response = new Mock <HttpResponseBase>(MockBehavior.Strict);
            response.Setup(s => s.ApplyAppPathModifier(It.IsAny <string>())).Returns <string>(s => s);

            var context = new Mock <HttpContextBase>(MockBehavior.Strict);
            context.SetupGet(x => x.Request).Returns(request.Object);
            context.SetupGet(x => x.Response).Returns(response.Object);
            context.Setup(x => x.GetService(It.IsAny <Type>())).Returns(It.IsAny <Type>());

            var fakeIdentity = new GenericIdentity("User");
            var principal    = new GenericPrincipal(fakeIdentity, null);
            context.SetupGet(x => x.User).Returns(principal);

            controller.ControllerContext = new ControllerContext(context.Object, new RouteData(), controller);
            controller.Url = new UrlHelper(new RequestContext(context.Object, new RouteData()), routes);
            #endregion

            var jsonResult = controller.Join(100) as JsonResult;

            dynamic jsonResultData = jsonResult.Data;
            Assert.IsNotNull(jsonResult, "JsonResult is null.");
            Assert.AreEqual(false, jsonResultData.taken);
            Assert.AreEqual("/Events", jsonResultData.url);
            Assert.AreEqual(true, isSaveChangesAsyncExecuted, "SaveChanges method is not invoked.");
        }
        public EventsControllerTest()
        {
            _eventsItem = new Event {
                Title    = "title", Slug = "slug", Teaser = "teaser", ImageUrl = "image.png", ThumbnailImageUrl = "image.png", Description = "description", Fee = "fee",
                Location = "location", SubmittedBy = "submittedBy", EventDate = new DateTime(2016, 12, 30, 00, 00, 00), StartTime = "startTime", EndTime = "endTime", Breadcrumbs = new List <Crumb>(), Group = _group, Alerts = _alerts
            };
            _categories = new List <string> {
                "Category 1", "Category 2"
            };

            var mockTime = new Mock <ITimeProvider>();

            _datetimeCalculator = new DateCalculator(mockTime.Object);

            var eventsCalendar = new EventResponse(new List <Event> {
                _eventsItem
            }, _categories);
            var eventItem = new ProcessedEvents("title", "slug", "teaser", "image.png", "image.png", "description",
                                                "fee", "location", "submittedBy", new DateTime(2016, 12, 30, 00, 00, 00), "startTime", "endTime",
                                                new List <Crumb>(), _categories, new MapDetails(), "booking information", _group, _alerts, string.Empty, string.Empty);

            var eventHomepage = new EventHomepage {
                Categories = new List <EventCategory>(), Rows = new List <EventHomepageRow>()
            };

            // setup responses (with mock data)
            responseListing = new HttpResponse(200, eventsCalendar, "");
            _responseDetail = new HttpResponse(200, eventItem, "");
            var responseHomepage = new HttpResponse(200, eventHomepage, "");
            var response404      = new HttpResponse(404, null, "not found");

            // setup mocks
            _repository.Setup(o => o.Get <EventHomepage>(It.IsAny <string>(), It.IsAny <List <Query> >()))
            .ReturnsAsync(responseHomepage);

            _repository.Setup(o => o.Get <EventResponse>(It.IsAny <string>(), It.IsAny <List <Query> >()))
            .ReturnsAsync(responseListing);

            _processedContentRepository.Setup(o => o.Get <Event>("event-of-the-century", It.Is <List <Query> >(l => l.Count == 0)))
            .ReturnsAsync(_responseDetail);

            _processedContentRepository.Setup(o => o.Get <Event>("404-event", It.Is <List <Query> >(l => l.Count == 0)))
            .ReturnsAsync(response404);

            _emailClient = new Mock <IHttpEmailClient>();
            _applicationConfiguration = new Mock <IApplicationConfiguration>();
            _logger      = new Mock <ILogger <EventsController> >();
            _emaillogger = new Mock <ILogger <EventEmailBuilder> >();

            _applicationConfiguration.Setup(a => a.GetEmailEmailFrom(It.IsAny <string>()))
            .Returns(AppSetting.GetAppSetting("GroupSubmissionEmail"));

            _eventEmailBuilder = new EventEmailBuilder(_emaillogger.Object, _emailClient.Object, _applicationConfiguration.Object, new BusinessId("businessId"));

            _mockRssFeedFactory = new Mock <IRssFeedFactory>();
            _config             = new Mock <IApplicationConfiguration>();
            _filteredUrl        = new Mock <IFilteredUrl>();

            _config.Setup(o => o.GetRssEmail(BusinessId)).Returns(AppSetting.GetAppSetting("rss-email"));
            _config.Setup(o => o.GetEmailAlertsNewSubscriberUrl(BusinessId)).Returns(AppSetting.GetAppSetting("email-alerts-url"));

            _controller = new EventsController(
                _repository.Object,
                _processedContentRepository.Object,
                _eventEmailBuilder,
                _mockRssFeedFactory.Object,
                _logger.Object,
                _config.Object,
                new BusinessId(BusinessId),
                _filteredUrl.Object,
                null,
                null,
                _datetimeCalculator,
                null
                );
        }
        public void Setup()
        {
            var generetor = new RandomGenerator();
            Appointments = Builder<Appointment>.CreateListOfSize(50)
                .WhereAll()
                .Have(
                    a =>
                    a.StartDate =
                    generetor.Next(January.The(1).AddSeconds(1),
                                   December.The(31).AddHours(23).AddMinutes(59).AddSeconds(59)))
                .And(a => a.EndDate = a.StartDate.AddHours(generetor.Next(1, 36)))
                .Build();

            DataRepository = MockRepository.GenerateStub<IDataRepository<Appointment>>();
            Sut = new EventsController(DataRepository);
        }
        public void DeleteConfirmedMethodShouldReturnJsonWhenEventIsDeleted()
        {
            var eventList = new List <Event>
            {
                new Event {
                    Id = 1, Users = new List <ApplicationUser> {
                        new ApplicationUser {
                            Id = "1"
                        }
                    }
                },
                new Event {
                    Id = 2, Users = new List <ApplicationUser> {
                        new ApplicationUser {
                            Id = null
                        }, new ApplicationUser {
                            Id = "1"
                        }
                    }
                },
                new Event {
                    Id = 3, Taken = true, Users = new List <ApplicationUser> {
                        new ApplicationUser {
                            Id = "1"
                        }
                    }
                },
                new Event {
                    Id = 4, Users = new List <ApplicationUser> {
                        new ApplicationUser {
                            Id = "2"
                        }
                    }
                },
                new Event
                {
                    Id            = 5, EndDateTime = new DateTime(2014, 1, 12, 12, 0, 0),
                    EventType     = Models.EventType.Double,
                    StartDateTime = new DateTime(2014, 1, 12, 11, 0, 0),
                    Users         = new List <ApplicationUser> {
                        new ApplicationUser {
                            Id = "1"
                        }, new ApplicationUser {
                            Id = null
                        }
                    }
                }
            };

            var userList = new List <ApplicationUser>
            {
                new ApplicationUser {
                    Id = "1", Addresses = new List <Address> {
                        new Address()
                    }
                },
                new ApplicationUser {
                    Id = "2", Addresses = new List <Address> {
                        new Address()
                    }
                },
                new ApplicationUser {
                    Id = null, Addresses = new List <Address> {
                        new Address()
                    }
                }
            };

            var eventsRepoMock = new Mock <IRepository <Event> >(MockBehavior.Strict);

            eventsRepoMock.Setup(x => x.All()).Returns(eventList.AsQueryable());
            var usersRepoMock = new Mock <IRepository <ApplicationUser> >(MockBehavior.Strict);

            usersRepoMock.Setup(x => x.All()).Returns(userList.AsQueryable());

            var uowDataMock = new Mock <IUowData>(MockBehavior.Strict);

            uowDataMock.Setup(x => x.Events).Returns(eventsRepoMock.Object);
            uowDataMock.Setup(x => x.Users).Returns(usersRepoMock.Object);
            bool isSaveChangesExecuted = false;

            uowDataMock.Setup(x => x.SaveChanges()).Returns(It.IsAny <int>).Callback(() => isSaveChangesExecuted = true);

            var controller = new EventsController(uowDataMock.Object);

            #region To test Url.Action() method.
            var routes = new RouteCollection();
            RouteConfig.RegisterRoutes(routes);

            var request = new Mock <HttpRequestBase>(MockBehavior.Strict);
            request.SetupGet(x => x.ApplicationPath).Returns("/");
            request.SetupGet(x => x.Url).Returns(new Uri("/Events", UriKind.Relative));
            request.SetupGet(x => x.ServerVariables).Returns(new System.Collections.Specialized.NameValueCollection());

            var response = new Mock <HttpResponseBase>(MockBehavior.Strict);
            response.Setup(s => s.ApplyAppPathModifier(It.IsAny <string>())).Returns <string>(s => s);

            var context = new Mock <HttpContextBase>(MockBehavior.Strict);
            context.SetupGet(x => x.Request).Returns(request.Object);
            context.SetupGet(x => x.Response).Returns(response.Object);
            context.Setup(x => x.GetService(It.IsAny <Type>())).Returns(It.IsAny <Type>());

            var fakeIdentity = new GenericIdentity("User");
            var principal    = new GenericPrincipal(fakeIdentity, null);
            context.SetupGet(x => x.User).Returns(principal);

            controller.ControllerContext = new ControllerContext(context.Object, new RouteData(), controller);
            controller.Url = new UrlHelper(new RequestContext(context.Object, new RouteData()), routes);
            #endregion

            int pageNumber = 1;
            var jsonResult = controller.DeleteConfirmed(5, pageNumber) as JsonResult;

            dynamic jsonResultData = jsonResult.Data;
            Assert.IsNotNull(jsonResult, "JsonResult is null.");
            Assert.AreEqual(true, jsonResultData.success);
            Assert.AreEqual("/Events/UserCalendar?pageNumber=" + pageNumber.ToString(), jsonResultData.url);
            Assert.AreEqual(true, isSaveChangesExecuted, "SaveChanges method is not invoked.");
        }
        public void CreateMethodShouldCreateEvent()
        {
            var eventList = new List <Event>
            {
                new Event {
                    Users = new List <ApplicationUser> {
                        new ApplicationUser {
                            Id = "1"
                        }
                    }
                },
                new Event {
                    Users = new List <ApplicationUser> {
                        new ApplicationUser {
                            Id = "1"
                        }
                    }
                },
                new Event {
                    Taken = true, Users = new List <ApplicationUser> {
                        new ApplicationUser {
                            Id = "1"
                        }
                    }
                },
                new Event {
                    Users = new List <ApplicationUser> {
                        new ApplicationUser {
                            Id = "2"
                        }
                    }
                },
            };


            var userList = new List <ApplicationUser>
            {
                new ApplicationUser {
                    Id = "1", Addresses = new List <Address> {
                        new Address()
                    }
                },
                new ApplicationUser {
                    Id = "2", Addresses = new List <Address> {
                        new Address()
                    }
                },
                new ApplicationUser {
                    Id = null, Addresses = new List <Address> {
                        new Address()
                    }
                }
            };

            bool isItemAdded    = false;
            var  eventsRepoMock = new Mock <IRepository <Event> >(MockBehavior.Strict);

            eventsRepoMock.Setup(x => x.Add(It.IsAny <Event>())).Callback(() => isItemAdded = true);
            var usersRepoMock = new Mock <IRepository <ApplicationUser> >(MockBehavior.Strict);

            usersRepoMock.Setup(x => x.All()).Returns(userList.AsQueryable());

            var uowDataMock = new Mock <IUowData>(MockBehavior.Strict);

            uowDataMock.Setup(x => x.Events).Returns(eventsRepoMock.Object);
            bool isSaveChangesExecuted = false;

            // For Async version: uowDataMock.Setup(x => x.SaveChangesAsync()).Returns(It.IsAny<Task<int>>).Callback(() => isSaveChangesExecuted = true);
            uowDataMock.Setup(x => x.SaveChanges()).Returns(It.IsAny <int>).Callback(() => isSaveChangesExecuted = true);
            uowDataMock.Setup(x => x.Users).Returns(usersRepoMock.Object);

            var routes = new RouteCollection();

            RouteConfig.RegisterRoutes(routes);

            var request = new Mock <HttpRequestBase>(MockBehavior.Strict);

            request.SetupGet(x => x.ApplicationPath).Returns("/");
            request.SetupGet(x => x.Url).Returns(new Uri("http://localhost/Events", UriKind.Absolute));
            request.SetupGet(x => x.ServerVariables).Returns(new System.Collections.Specialized.NameValueCollection());

            var response = new Mock <HttpResponseBase>(MockBehavior.Strict);

            response.Setup(s => s.ApplyAppPathModifier(It.IsAny <string>())).Returns <string>(s => s);

            var context = new Mock <HttpContextBase>(MockBehavior.Strict);

            context.SetupGet(x => x.Request).Returns(request.Object);
            context.SetupGet(x => x.Response).Returns(response.Object);
            context.Setup(x => x.GetService(It.IsAny <Type>())).Returns(It.IsAny <Type>());

            var fakeIdentity = new GenericIdentity("User");
            var principal    = new GenericPrincipal(fakeIdentity, null);

            context.SetupGet(x => x.User).Returns(principal);

            var controller = new EventsController(uowDataMock.Object);

            controller.ControllerContext = new ControllerContext(context.Object, new RouteData(), controller);
            controller.Url = new UrlHelper(new RequestContext(context.Object, new RouteData()), routes);

            var model = new CreateEventViewModel
            {
                EndDate   = new DateTime(2014, 12, 13),
                EndTime   = new DateTime(2014, 12, 13, 12, 0, 0),
                EventType = EventType.Single,
                StartDate = new DateTime(2014, 12, 13),
                StartTime = new DateTime(2014, 12, 13, 10, 30, 0),
            };
            var jsonResult = controller.Create(model) as JsonResult;

            Assert.IsNotNull(jsonResult, "UserCalendar action returns null.");
            Assert.AreEqual(true, isItemAdded, "Add method of Events is not invoked.");
            Assert.AreEqual(true, isSaveChangesExecuted, "SaveChanges method is not invoked.");
        }
Example #37
0
 public void TestMethod1()
 {
     var controller = new EventsController();
     //var events = controller.GetAllEvents();
 }