public void HudPlainStatBoxViewModelToolCanBeSerializedDeserializedWithProtobuf()
        {
            var hudLayoutToolExpected = new HudLayoutPlainBoxTool
            {
                Stats = new ReactiveList <StatInfo>
                {
                    new StatInfo {
                        Stat = Stat.VPIP
                    },
                    new StatInfo {
                        Stat = Stat.PFR
                    },
                    new StatInfo {
                        Stat = Stat.S3Bet
                    },
                    new StatInfo {
                        Stat = Stat.ColdCall
                    }
                }
            };

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

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

            hudToolViewModelExpected.Width             = 100;
            hudToolViewModelExpected.Height            = 150;
            hudToolViewModelExpected.Position          = new System.Windows.Point(10, 10);
            hudToolViewModelExpected.Opacity           = 50;
            hudToolViewModelExpected.IsNoteIconEnabled = true;

            Assert.IsNotNull(hudToolViewModelExpected);

            var hudToolViewModelActual = SerializerHelper.GetSerializedDeserializedObject(hudToolViewModelExpected);

            Assert.That(hudToolViewModelActual.Id, Is.EqualTo(hudToolViewModelExpected.Id));
            Assert.That(hudToolViewModelActual.ToolType, Is.EqualTo(hudToolViewModelExpected.ToolType));
            Assert.That(hudToolViewModelActual.Stats.Count, Is.EqualTo(hudToolViewModelExpected.Stats.Count));
            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.Opacity, Is.EqualTo(hudToolViewModelExpected.Opacity));
            Assert.That(hudToolViewModelActual.IsNoteIconEnabled, Is.EqualTo(hudToolViewModelExpected.IsNoteIconEnabled));
        }
Beispiel #2
0
        /// <summary>
        /// Creates plain stat box view model
        /// </summary>
        /// <param name="creationInfo"><see cref="HudToolCreationInfo"/></param>
        /// <returns>Plain stat box view model</returns>
        private HudBaseToolViewModel CreatePlainStatBoxTool(HudToolCreationInfo creationInfo)
        {
            Check.Require(creationInfo.Layout != null, "Layout isn't defined. Plain stat box has not been created.");

            var layoutTool = new HudLayoutPlainBoxTool
            {
                Stats       = new ReactiveList <StatInfo>(),
                UIPositions = GetHudUIPositions(EnumTableType.HU, EnumTableType.HU, creationInfo.Position)
            };

            layoutTool.UIPositions.ForEach(x =>
            {
                x.Width  = HudDefaultSettings.PlainStatBoxWidth;
                x.Height = HudDefaultSettings.PlainStatBoxHeight;
            });

            var toolViewModel = layoutTool.CreateViewModel(creationInfo.HudElement);

            toolViewModel.InitializePositions();

            creationInfo.Layout.LayoutTools.Add(layoutTool);

            return(toolViewModel);
        }