Пример #1
0
        private void TestParsing(string spec, IEnumerable <KeyboardEvent> expectedEvents, bool ignoreTimings = true)
        {
            var expected = expectedEvents.ToArray();

            KeyAction action = new KeyAction();

            action.Initialize(spec);
            var actual = action.ParseSpec().ToArray();

            Assert.AreEqual(expected.Count(), actual.Count(), "Event count mismatch for spec: " + spec);

            for (int i = 0; i < expected.Length; i++)
            {
                var e = expected[i];
                var a = actual[i];

                Assert.AreEqual(e.KeyCode, a.KeyCode, "Key code mismatch at position " + i + " for spec: " + spec);
                Assert.AreEqual(e.KeyDown, a.KeyDown, "Key down mismatch at position " + i + " for spec: " + spec);
                if (!ignoreTimings)
                {
                    Assert.AreEqual(e.Timeout, a.Timeout, "Timout mismatch at position " + i + " for spec: " + spec);
                }
            }
        }