public void PixelShaderEffect_BorderModeAccessors()

in winrt/test.managed/PixelShaderEffectTests.cs [1137:1181]


        public void PixelShaderEffect_BorderModeAccessors()
        {
            const string hlsl =
            @"
                float4 main() : SV_Target
                {
                    return 0;
                }
            ";

            var effect = new PixelShaderEffect(ShaderCompiler.CompileShader(hlsl, "ps_4_0"));

            // Check defaults.
            Assert.AreEqual(EffectBorderMode.Soft, effect.Source1BorderMode);
            Assert.AreEqual(EffectBorderMode.Soft, effect.Source2BorderMode);
            Assert.AreEqual(EffectBorderMode.Soft, effect.Source3BorderMode);
            Assert.AreEqual(EffectBorderMode.Soft, effect.Source4BorderMode);
            Assert.AreEqual(EffectBorderMode.Soft, effect.Source5BorderMode);
            Assert.AreEqual(EffectBorderMode.Soft, effect.Source6BorderMode);
            Assert.AreEqual(EffectBorderMode.Soft, effect.Source7BorderMode);
            Assert.AreEqual(EffectBorderMode.Soft, effect.Source8BorderMode);

            for (int i = 0; i < 8; i++)
            {
                // Setters.
                effect.Source1BorderMode = (i == 0) ? EffectBorderMode.Hard : EffectBorderMode.Soft;
                effect.Source2BorderMode = (i == 1) ? EffectBorderMode.Hard : EffectBorderMode.Soft;
                effect.Source3BorderMode = (i == 2) ? EffectBorderMode.Hard : EffectBorderMode.Soft;
                effect.Source4BorderMode = (i == 3) ? EffectBorderMode.Hard : EffectBorderMode.Soft;
                effect.Source5BorderMode = (i == 4) ? EffectBorderMode.Hard : EffectBorderMode.Soft;
                effect.Source6BorderMode = (i == 5) ? EffectBorderMode.Hard : EffectBorderMode.Soft;
                effect.Source7BorderMode = (i == 6) ? EffectBorderMode.Hard : EffectBorderMode.Soft;
                effect.Source8BorderMode = (i == 7) ? EffectBorderMode.Hard : EffectBorderMode.Soft;

                // Getters.
                Assert.AreEqual((i == 0) ? EffectBorderMode.Hard : EffectBorderMode.Soft, effect.Source1BorderMode);
                Assert.AreEqual((i == 1) ? EffectBorderMode.Hard : EffectBorderMode.Soft, effect.Source2BorderMode);
                Assert.AreEqual((i == 2) ? EffectBorderMode.Hard : EffectBorderMode.Soft, effect.Source3BorderMode);
                Assert.AreEqual((i == 3) ? EffectBorderMode.Hard : EffectBorderMode.Soft, effect.Source4BorderMode);
                Assert.AreEqual((i == 4) ? EffectBorderMode.Hard : EffectBorderMode.Soft, effect.Source5BorderMode);
                Assert.AreEqual((i == 5) ? EffectBorderMode.Hard : EffectBorderMode.Soft, effect.Source6BorderMode);
                Assert.AreEqual((i == 6) ? EffectBorderMode.Hard : EffectBorderMode.Soft, effect.Source7BorderMode);
                Assert.AreEqual((i == 7) ? EffectBorderMode.Hard : EffectBorderMode.Soft, effect.Source8BorderMode);
            }
        }