public void HudHeatMapViewModelToolCanBeSerializedDeserializedWithProtobuf()
        {
            var hudLayoutToolExpected = new HudLayoutHeatMapTool
            {
                BaseStat = new StatInfo {
                    Stat = Stat.S3Bet
                }
            };

            var hudElement = new HudElementViewModel
            {
                Seat = 1,
            };

            var hudToolViewModelExpected = hudLayoutToolExpected.CreateViewModel(hudElement) as HudHeatMapViewModel;

            var heatMap = new HeatMapDto();

            heatMap.OccuredByCardRange.Add("AA", 10);

            hudToolViewModelExpected.HeatMap = heatMap;

            var hudToolViewModelActual = SerializerHelper.GetSerializedDeserializedObject(hudToolViewModelExpected);

            Assert.That(hudToolViewModelActual.Id, Is.EqualTo(hudToolViewModelExpected.Id));
            Assert.That(hudToolViewModelActual.ToolType, Is.EqualTo(hudToolViewModelExpected.ToolType));
            Assert.That(hudToolViewModelActual.BaseStat.Stat, Is.EqualTo(hudToolViewModelExpected.BaseStat.Stat));
            Assert.That(hudToolViewModelActual.Width, Is.EqualTo(hudToolViewModelExpected.Width));
            Assert.That(hudToolViewModelActual.Height, Is.EqualTo(hudToolViewModelExpected.Height));
            Assert.That(hudToolViewModelActual.Position, Is.EqualTo(hudToolViewModelExpected.Position));
            Assert.That(hudToolViewModelActual.HeatMap.OccuredByCardRange.Count, Is.EqualTo(hudToolViewModelExpected.HeatMap.OccuredByCardRange.Count));
            Assert.That(hudToolViewModelActual.HeatMap.OccuredByCardRange.Keys.First(), Is.EqualTo(hudToolViewModelExpected.HeatMap.OccuredByCardRange.Keys.First()));
        }
示例#2
0
        public async Task <IActionResult> Post(int?id, [FromBody] HeatMapDto heatMap)
        {
            if (id == null || id <= 0)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                Project projectToUpdate = await context.Projects
                                          .SingleOrDefaultAsync(p => p.ProjectId == id);

                if (projectToUpdate == null)
                {
                    return(NotFound());
                }
                HeatMap heatMapToInsert = mapper.Map <HeatMap>(heatMap);

                context.HeatMaps.Add(heatMapToInsert);
                projectToUpdate.DateUpdated = DateTime.Now;

                await context.SaveChangesAsync();

                return(Ok(mapper.Map <HeatMapDto>(heatMapToInsert)));
            }

            return(BadRequest(ModelState));
        }