Esempio n. 1
0
        [InlineData(12, 24, FillType.DualTextured, 1UL, 2UL, 1.0f, -1)] //Fails invalid layer
        public void DrawQueueTest_TestingAddIfValid_FailOnAllAsEachHasConfigurationIssue(int numverts, int numindices, FillType fill, ulong tex0, ulong tex1, float depth, int layer)
        {
            var messenger = Substitute.For <IFrameworkMessenger>();
            IComparerCollection comparers = new ComparerCollection();

            IDrawQueue queue = new DrawQueue(messenger, comparers, 32, 4, false);

            var target = CoordinateSpace.Screen;
            var colour = Colour.White;

            var vlist = new List <Vertex2D>();

            for (var n = 0; n < numverts; n++)
            {
                vlist.Add(new Vertex2D {
                    Colour = Colour.White, Position = Vector2.Zero, TexCoord0 = Vector2.Zero, TexCoord1 = Vector2.One, TexWeighting = 0.9f
                });
            }
            var verts = vlist.ToArray();

            var ilist = new List <int>();

            for (var n = 0; n < numindices; n++)
            {
                ilist.Add(n);
            }
            var indices = ilist.ToArray();

            var texture0 = tex0;
            var texture1 = tex1;
            var texMode0 = TextureCoordinateMode.Mirror;
            var texMode1 = TextureCoordinateMode.Wrap;

            Assert.False(queue.AddIfValid(
                             ref target,
                             ref fill,
                             ref colour,
                             ref verts,
                             ref indices,
                             ref texture0,
                             ref texture1,
                             ref texMode0,
                             ref texMode1,
                             ref depth,
                             ref layer));
        }