Exemple #1
0
        public void Basic()
        {
            InitTest();

            var fieldBool = new MemoryFieldFunc <bool>("BoolTrue", (pool) => true);
            var testField = new MemoryFieldFunc <int>("IsItCorrect", (pool) =>
            {
                Assert.AreEqual(drvPool, pool);
                return(1337);
            });

            Assert.AreEqual("IsItCorrect", testField.Name);
            Assert.AreEqual(0, testField.Address);
            Assert.AreEqual(0, testField.Size);
            Assert.AreEqual(0, testField.Offset);

            Assert.False(testField.IsConstant);
            Assert.False(testField.IsDynamic);
            Assert.False(testField.IsStatic);

            drvPool.Add(fieldBool);
            drvPool.Add(testField);

            memory.Refresh();

            Assert.AreEqual(0, actionLogbook.Count);

            Assert.True(drvPool.ReadAs <bool>("BoolTrue"));
            Assert.AreEqual(1337, drvPool.ReadAs <int>("IsItCorrect"));

            // func() are always 'changing'
            Assert.True(fieldBool.HasChanged());
            Assert.True(testField.HasChanged());

            Assert.True(fieldBool.HasChanged());
            Assert.True(testField.HasChanged());

            Assert.True(fieldBool.HasChanged());
            Assert.True(testField.HasChanged());
        }