Node AddIntegerChange(Random r)
        {
            string name  = RandomName("Var", r);
            long   value = r.Next() % 1000;

            if (r.Next() % 1 == 0)
            {
                value = -value;
            }
            var n = new IntegerChangeCmd(name, value);

            return(n);
        }
Example #2
0
        public void Repeat()
        {
            var ctx  = new SimpleContext();
            var init = 0;            //DateTime.UtcNow.Ticks % 0xFFFFFF;

            for (int i = 1; i < 128; i++)
            {
                ctx.SetInteger("A" + i, init);
                var chg = new IntegerChangeCmd("A" + i, 1);
                var rep = new RepeaterNode("Repeat", chg, i);
                while (Result.Processing == rep.Tick(ctx))
                {
                }

                Assert.AreEqual(init + i, ctx.GetInteger("A" + i));
            }
        }
        public void Assignments()
        {
            Random r = new Random();
            var    c = new SimpleContext();

            for (int i = 0; i < 128; i++)
            {
                var w = r.Next() % 1000;
                c.SetInteger("A" + i, w);
                var q = r.Next() % 1000;
                if (r.Next() % 2 == 0)
                {
                    q = -q;
                }
                var n = new IntegerChangeCmd("A" + i, q);
                n.Tick(c);

                Assert.AreEqual(w + q, c.GetInteger("A" + i));
            }
        }