public void Setup()
        {
            httpContextHelper = Substitute.For <IHttpContextHelper>();
            httpContextHelper.getAccessToken().Returns("access_token");

            stravaClient = Substitute.For <IStravaClient>();
            IEnumerable <VisualActivity> activities        = TestData.VisualActivitiesList();
            IEnumerable <VisualActivity> newUserActivities = TestData.NewVisualActivitiesList();

            stravaClient.getAllUserActivities("access_token", 123).Returns(activities);
            stravaClient.getAllUserActivities("access_token", 2222).Returns(newUserActivities);
            stravaClient.getUserActivitiesAfter("access_token", Arg.Any <StravaUser>(), Arg.Any <DateTime>()).Returns(newUserActivities);

            map = new Map();

            var userActivity = new StravaUser {
                VisualActivities = (List <VisualActivity>)activities, UserId = 2, LastDownload = DateTime.Now
            };

            userActivities = new List <StravaUser>
            {
                new StravaUser {
                    VisualActivities = (List <VisualActivity>)activities, UserId = 1, LastDownload = DateTime.Now
                },
                userActivity,
                new StravaUser {
                    VisualActivities = (List <VisualActivity>)activities, UserId = 3, LastDownload = DateTime.Now
                },
            }.AsQueryable();
            userActivityRepository = Substitute.For <IStravaVisualizerRepository>();
            userActivityRepository.GetUserActivities().Returns(userActivities);
            userActivityRepository.GetStravaUserById(123).Returns(userActivity);
            userActivityRepository.GetStravaUserById(2222).Returns(new StravaUser());
        }
 public MapController(IHttpContextHelper httpContextHelper, IStravaClient stravaClient, IMap map, IStravaVisualizerRepository userActivityRepository)
 {
     this._httpContextHelper = httpContextHelper;
     this._stravaClient      = stravaClient;
     this._map     = map;
     this._context = userActivityRepository;
 }
        public void Setup()
        {
            visualActivities = (List <VisualActivity>)TestData.VisualActivitiesList();

            users = new List <StravaUser>
            {
                new StravaUser {
                    VisualActivities = visualActivities, UserId = 1, LastDownload = DateTime.Now
                },
                new StravaUser {
                    VisualActivities = visualActivities, UserId = 2, LastDownload = DateTime.Now
                },
                new StravaUser {
                    VisualActivities = visualActivities, UserId = 3, LastDownload = DateTime.Now
                },
            }.AsQueryable();

            visualActivities[0].Summary.StartLatlng.Add(30.0F);
            visualActivities[0].Summary.StartLatlng.Add(40.0F);
            visualActivities[1].Summary.StartLatlng.Add(30.6F);
            visualActivities[1].Summary.StartLatlng.Add(40.6F);

            var userMockSet = Substitute.For <DbSet <StravaUser>, IQueryable <StravaUser> >();

            ((IQueryable <StravaUser>)userMockSet).Provider.Returns(users.Provider);
            ((IQueryable <StravaUser>)userMockSet).Expression.Returns(users.Expression);
            ((IQueryable <StravaUser>)userMockSet).ElementType.Returns(users.ElementType);
            ((IQueryable <StravaUser>)userMockSet).GetEnumerator().Returns(users.GetEnumerator());
            userActivityDbContext = Substitute.For <IMtbVisualizerDbContext>();
            userActivityDbContext.StravaUsers.Returns(userMockSet);

            var mockActivities  = visualActivities.AsQueryable();
            var activityMockSet = Substitute.For <DbSet <VisualActivity>, IQueryable <VisualActivity> >();

            ((IQueryable <VisualActivity>)activityMockSet).Provider.Returns(mockActivities.Provider);
            ((IQueryable <VisualActivity>)activityMockSet).Expression.Returns(mockActivities.Expression);
            ((IQueryable <VisualActivity>)activityMockSet).ElementType.Returns(mockActivities.ElementType);
            ((IQueryable <VisualActivity>)activityMockSet).GetEnumerator().Returns(mockActivities.GetEnumerator());
            //((IQueryable<VisualActivity>)activityMockSet).Contains(visualActivities[0]).Returns(true);
            userActivityDbContext.VisualActivities.Returns(activityMockSet);

            userActivityRepository = new StravaVisualizerRepository(userActivityDbContext);
        }
 public HomeController(IHttpContextHelper httpContextHelper, IStravaClient stravaClient, IStravaVisualizerRepository context)
 {
     this._httpContextHelper = httpContextHelper;
     this._stravaClient      = stravaClient;
     this._context           = context;
 }