public void TestDecodeSkinColours(bool hasColours)
        {
            var decoder = new LegacySkinDecoder();

            using (var resStream = TestResources.OpenResource(hasColours ? "skin.ini" : "skin-empty.ini"))
                using (var stream = new LineBufferedReader(resStream))
                {
                    var comboColors = decoder.Decode(stream).ComboColours;

                    List <Color4> expectedColors;
                    if (hasColours)
                    {
                        expectedColors = new List <Color4>
                        {
                            new Color4(142, 199, 255, 255),
                            new Color4(255, 128, 128, 255),
                            new Color4(128, 255, 255, 255),
                            new Color4(100, 100, 100, 100),
                        }
                    }
                    ;
                    else
                    {
                        expectedColors = new DefaultSkin().Configuration.ComboColours;
                    }

                    Assert.AreEqual(expectedColors.Count, comboColors.Count);
                    for (int i = 0; i < expectedColors.Count; i++)
                    {
                        Assert.AreEqual(expectedColors[i], comboColors[i]);
                    }
                }
        }
Пример #2
0
        public void TestDecodeBeatmapColours()
        {
            var decoder = new LegacySkinDecoder();

            using (var resStream = TestResources.OpenResource("Soleily - Renatus (Gamu) [Insane].osu"))
                using (var stream = new LineBufferedReader(resStream))
                {
                    var comboColors = decoder.Decode(stream).ComboColours;

                    Color4[] expectedColors =
                    {
                        new Color4(142, 199, 255, 255),
                        new Color4(255, 128, 128, 255),
                        new Color4(128, 255, 255, 255),
                        new Color4(128, 255, 128, 255),
                        new Color4(255, 187, 255, 255),
                        new Color4(255, 177, 140, 255),
                        new Color4(100, 100, 100, 100),
                    };
                    Assert.AreEqual(expectedColors.Length, comboColors.Count);
                    for (int i = 0; i < expectedColors.Length; i++)
                    {
                        Assert.AreEqual(expectedColors[i], comboColors[i]);
                    }
                }
        }
Пример #3
0
        public void TestStripWhitespace()
        {
            var decoder = new LegacySkinDecoder();

            using (var resStream = TestResources.OpenResource("skin-with-space.ini"))
                using (var stream = new LineBufferedReader(resStream))
                    Assert.AreEqual(2.0m, decoder.Decode(stream).LegacyVersion);
        }
Пример #4
0
        public void TestDecodeNoVersion()
        {
            var decoder = new LegacySkinDecoder();

            using (var resStream = TestResources.OpenResource("skin-empty.ini"))
                using (var stream = new LineBufferedReader(resStream))
                    Assert.That(decoder.Decode(stream).LegacyVersion, Is.EqualTo(1.0m));
        }
Пример #5
0
        public void TestDecodeSpecifiedVersion()
        {
            var decoder = new LegacySkinDecoder();

            using (var resStream = TestResources.OpenResource("skin-20.ini"))
                using (var stream = new LineBufferedReader(resStream))
                    Assert.AreEqual(2.0m, decoder.Decode(stream).LegacyVersion);
        }
Пример #6
0
        public void TestDecodeLatestVersion()
        {
            var decoder = new LegacySkinDecoder();

            using (var resStream = TestResources.OpenResource("skin-latest.ini"))
                using (var stream = new LineBufferedReader(resStream))
                    Assert.AreEqual(SkinConfiguration.LATEST_VERSION, decoder.Decode(stream).LegacyVersion);
        }
Пример #7
0
        public void TestDecodeColourWithZeroAlpha()
        {
            var decoder = new LegacySkinDecoder();

            using (var resStream = TestResources.OpenResource("skin-zero-alpha-colour.ini"))
                using (var stream = new LineBufferedReader(resStream))
                    Assert.That(decoder.Decode(stream).ComboColours[0].A, Is.EqualTo(1.0f));
        }
Пример #8
0
        public void TestDecodeEmptySkinColoursNoFallback()
        {
            var decoder = new LegacySkinDecoder();

            using (var resStream = TestResources.OpenResource("skin-empty.ini"))
                using (var stream = new LineBufferedReader(resStream))
                {
                    var skinConfiguration = decoder.Decode(stream);
                    skinConfiguration.AllowDefaultComboColoursFallback = false;
                    Assert.IsNull(skinConfiguration.ComboColours);
                }
        }
        public void TestDecodeGeneral()
        {
            var decoder = new LegacySkinDecoder();

            using (var resStream = TestResources.OpenResource("skin.ini"))
                using (var stream = new LineBufferedReader(resStream))
                {
                    var config = decoder.Decode(stream);

                    Assert.AreEqual("test skin", config.SkinInfo.Name);
                    Assert.AreEqual("TestValue", config.ConfigDictionary["TestLookup"]);
                }
        }
Пример #10
0
        public void TestDecodeEmptySkinColours()
        {
            var decoder = new LegacySkinDecoder();

            using (var resStream = TestResources.OpenResource("skin-empty.ini"))
                using (var stream = new LineBufferedReader(resStream))
                {
                    var comboColors    = decoder.Decode(stream).ComboColours;
                    var expectedColors = SkinConfiguration.DefaultComboColours;

                    Assert.AreEqual(expectedColors.Count, comboColors.Count);
                    for (int i = 0; i < expectedColors.Count; i++)
                    {
                        Assert.AreEqual(expectedColors[i], comboColors[i]);
                    }
                }
        }
Пример #11
0
        public void TestDecodeSkinColours()
        {
            var decoder = new LegacySkinDecoder();

            using (var resStream = TestResources.OpenResource("skin.ini"))
                using (var stream = new LineBufferedReader(resStream))
                {
                    var comboColors    = decoder.Decode(stream).ComboColours;
                    var expectedColors = new List <Colour4>
                    {
                        new Colour4(142, 199, 255, 255),
                        new Colour4(255, 128, 128, 255),
                        new Colour4(128, 255, 255, 255),
                        new Colour4(100, 100, 100, 100),
                    };

                    Assert.AreEqual(expectedColors.Count, comboColors.Count);
                    for (int i = 0; i < expectedColors.Count; i++)
                    {
                        Assert.AreEqual(expectedColors[i], comboColors[i]);
                    }
                }
        }