AppActs.API.Test.Integration.EventMapperTest.Save_AppUsageSummary_ValuesIncrement C# (CSharp) Method

Save_AppUsageSummary_ValuesIncrement() private method

private Save_AppUsageSummary_ValuesIncrement ( ) : void
return void
        public void Save_AppUsageSummary_ValuesIncrement()
        {
            EventMapper eventMapper = new EventMapper(this.client, this.database);
            Guid applicationId = Guid.NewGuid();
            Guid deviceId = Guid.NewGuid();

            AppUsageSummary expected = new AppUsageSummary()
            {
                ApplicationId = applicationId,
                Count = 2,
                Date = date,
                PlatformId = platform,
                Version = version,
                TimeGroup = new TimeOfDayGroup()
                {
                    _10 = 2
                },
                WeekGroup = new DayOfWeekGroup()
                {
                    Wed = 2
                },
                FrequencyUsageGroup = new FrequencyOfUsageGroup(),
                DevicesVisits = new List<DeviceAppVisit>()
                {
                    new DeviceAppVisit(deviceId)
                    {
                        Count = 2
                    }
                },
                NewReturningGroup = new NewReturningGroup(2, 0)
            };

            Event eventItem = new Event()
            {
                ApplicationId = applicationId,
                Date = date,
                Version = version,
                PlatformId = platform,
                DateCreatedOnDevice = dateCreatedOnDevice,
                DeviceId = deviceId,
                DateCreated = date
            };

            AppUsageSummary summary = new AppUsageSummary(eventItem, null);

            eventMapper.Save(summary);
            eventMapper.Save(summary);

            IMongoQuery query = Query.And
                (
                    Query<AppUsageSummary>.EQ<DateTime>(mem => mem.Date, date),
                    Query<AppUsageSummary>.EQ<Guid>(mem => mem.ApplicationId, applicationId),
                    Query<AppUsageSummary>.EQ<string>(mem => mem.Version, version),
                    Query<AppUsageSummary>.EQ<PlatformType>(mem => mem.PlatformId, platform)
                );

            AppUsageSummary actual = this.GetCollection<AppUsageSummary>().FindOne(query);

            actual.ShouldHave().AllPropertiesBut(x => x.Id)
                .IncludingNestedObjects().EqualTo(expected);
        }