Exemplo n.º 1
0
        private void load(RulesetStore rulesets)
        {
            this.rulesets = rulesets;

            Add(modSelect = new TestModSelectOverlay
            {
                RelativeSizeAxes = Axes.X,
                Origin           = Anchor.BottomCentre,
                Anchor           = Anchor.BottomCentre,
            });

            Add(modDisplay = new ModDisplay
            {
                Anchor       = Anchor.TopRight,
                Origin       = Anchor.TopRight,
                AutoSizeAxes = Axes.Both,
                Position     = new Vector2(0, 25),
            });

            modDisplay.Current.UnbindBindings();
            modDisplay.Current.BindTo(modSelect.SelectedMods);

            AddStep("Show", modSelect.Show);
            AddStep("Toggle", modSelect.ToggleVisibility);
            AddStep("Toggle", modSelect.ToggleVisibility);
        }
Exemplo n.º 2
0
        public void TestSettingsNotCrossPolluting()
        {
            Bindable <IReadOnlyList <Mod> > selectedMods2 = null;

            AddStep("select diff adjust", () => SelectedMods.Value = new Mod[] { new OsuModDifficultyAdjust() });

            AddStep("set setting", () => modSelect.ChildrenOfType <SettingsSlider <float> >().First().Current.Value = 8);

            AddAssert("ensure setting is propagated", () => SelectedMods.Value.OfType <OsuModDifficultyAdjust>().Single().CircleSize.Value == 8);

            AddStep("create second bindable", () => selectedMods2 = new Bindable <IReadOnlyList <Mod> >(new Mod[] { new OsuModDifficultyAdjust() }));

            AddStep("create second overlay", () =>
            {
                Add(modSelect = new TestModSelectOverlay().With(d =>
                {
                    d.Origin = Anchor.TopCentre;
                    d.Anchor = Anchor.TopCentre;
                    d.SelectedMods.BindTarget = selectedMods2;
                }));
            });

            AddStep("show", () => modSelect.Show());

            AddAssert("ensure first is unchanged", () => SelectedMods.Value.OfType <OsuModDifficultyAdjust>().Single().CircleSize.Value == 8);
            AddAssert("ensure second is default", () => selectedMods2.Value.OfType <OsuModDifficultyAdjust>().Single().CircleSize.Value == null);
        }
Exemplo n.º 3
0
 private void createModSelect()
 {
     AddStep("create mod select", () =>
     {
         Child = modSelect = new TestModSelectOverlay
         {
             Origin       = Anchor.BottomCentre,
             Anchor       = Anchor.BottomCentre,
             SelectedMods = { BindTarget = SelectedMods }
         };
     });
 }
Exemplo n.º 4
0
        private void createModSelect()
        {
            AddStep("create mod select", () =>
            {
                Ruleset.Value = new TestRulesetInfo();

                Child = modSelect = new TestModSelectOverlay
                {
                    RelativeSizeAxes = Axes.X,
                    Origin           = Anchor.BottomCentre,
                    Anchor           = Anchor.BottomCentre,
                };
            });
        }
        protected override void LoadComplete()
        {
            base.LoadComplete();

            Add(modSelect = new TestModSelectOverlay
            {
                RelativeSizeAxes = Axes.X,
                Origin           = Anchor.BottomCentre,
                Anchor           = Anchor.BottomCentre,
            });

            Add(modDisplay = new ModDisplay
            {
                Anchor       = Anchor.TopRight,
                Origin       = Anchor.TopRight,
                AutoSizeAxes = Axes.Both,
                Position     = new Vector2(0, 25),
            });

            modDisplay.Current.BindTo(modSelect.SelectedMods);

            AddStep("Toggle", modSelect.ToggleVisibility);
            AddStep("Hide", modSelect.Hide);
            AddStep("Show", modSelect.Show);

            foreach (var rulesetInfo in rulesets.AvailableRulesets)
            {
                Ruleset ruleset = rulesetInfo.CreateInstance();
                AddStep($"switch to {ruleset.Description}", () => modSelect.Ruleset.Value = rulesetInfo);

                switch (ruleset)
                {
                case OsuRuleset or:
                    testOsuMods(or);
                    break;

                case ManiaRuleset mr:
                    testManiaMods(mr);
                    break;
                }
            }
        }
Exemplo n.º 6
0
        private void load()
        {
            Add(modSelect = new TestModSelectOverlay
            {
                RelativeSizeAxes = Axes.X,
                Origin           = Anchor.BottomCentre,
                Anchor           = Anchor.BottomCentre,
            });

            var testMod = new TestModCustomisable1();

            AddStep("open", modSelect.Show);
            AddAssert("button disabled", () => !modSelect.CustomiseButton.Enabled.Value);
            AddUntilStep("wait for button load", () => modSelect.ButtonsLoaded);
            AddStep("select mod", () => modSelect.SelectMod(testMod));
            AddAssert("button enabled", () => modSelect.CustomiseButton.Enabled.Value);
            AddStep("open Customisation", () => modSelect.CustomiseButton.Click());
            AddStep("deselect mod", () => modSelect.SelectMod(testMod));
            AddAssert("controls hidden", () => modSelect.ModSettingsContainer.Alpha == 0);
        }