Exemplo n.º 1
0
        public void DrawWorkflowPauseTest()
        {
            var initializer   = new Initializer();
            var globalContext = initializer.GlobalContext;

            DeviceManager deviceManager = new DeviceManager(globalContext, initializer.Device);

            TestLayout layout1 = new TestLayout(new Identifier("Layout.test1"));
            TestLayout layout2 = new TestLayout(new Identifier("Layout.test1"));

            deviceManager.Pause();
            deviceManager.SetLayout(layout1);
            Assert.AreEqual(0, GetDrawnCycles(deviceManager, initializer.Device).Result);

            deviceManager.SetLayout(layout2);
            Assert.AreEqual(0, GetDrawnCycles(deviceManager, initializer.Device).Result);

            layout1.DoDraw(new Location(1, 1));
            Assert.AreEqual(0, GetDrawnCycles(deviceManager, initializer.Device).Result);

            layout2.DoDraw(new Location(1, 1));
            Assert.AreEqual(0, GetDrawnCycles(deviceManager, initializer.Device).Result);

            deviceManager.Resume();
            Assert.AreEqual(1, GetDrawnCycles(deviceManager, initializer.Device).Result);
        }
Exemplo n.º 2
0
        public void LayoutTargetOnDisposedWhenReassignPasses()
        {
            var layout     = new TestLayout();
            var prevTarget = new LayoutTargetObject();
            var curTarget  = new LayoutTargetObject();

            layout.Target = prevTarget;

            {
                layout.Target = curTarget;
                Assert.AreEqual(0, prevTarget.OnDisposed.RegistedDelegateCount);
                Assert.AreEqual(1, curTarget.OnDisposed.RegistedDelegateCount);
            }
            Debug.Log($"Success to Assign override!");

            {
                prevTarget.Dispose();
                Assert.AreSame(curTarget, layout.Target);
                Assert.AreEqual(1, curTarget.OnDisposed.RegistedDelegateCount);
            }
            Debug.Log($"Success to Dispose prevTarget!");

            {
                curTarget.Dispose();
                Assert.IsNull(layout.Target);
                Assert.AreEqual(0, curTarget.OnDisposed.RegistedDelegateCount);
            }
            Debug.Log($"Success to Dispose curTarget");
        }
Exemplo n.º 3
0
    public ushort UseOffsets()
    {
        TestLayout tmp = new TestLayout();

        tmp.Value1 = 3074457345618258602UL;

        return(tmp.Short2);
    }
Exemplo n.º 4
0
        public void Layout_view_adds_children_with_collection_initializer()
        {
            var layout = new TestLayout {
                new TestView(), new TestView()
            };

            layout.Children.Count.Should().Be(2);
        }
Exemplo n.º 5
0
        public void Adding_null_child_throws_exception()
        {
            var layout = new TestLayout();

            Action addNullChild = () => layout.Add(null);

            addNullChild.Should().Throw <ArgumentNullException>();
        }
Exemplo n.º 6
0
        public void Add_child_appends_view_to_children()
        {
            var layout = new TestLayout();
            var child1 = new TestView();
            var child2 = new TestView();

            layout.Add(child1);
            layout.Add(child2);

            layout.Children.Should().BeEquivalentSequenceTo(child1, child2);
        }
Exemplo n.º 7
0
        public void Child_added_to_layout_registers_for_updated()
        {
            var layout = new TestLayout();
            var view   = new TestView();

            layout.Add(view);

            view.RaiseUpdated();

            layout.OnChildUpdatedInvocationCount.Should().Be(1);
        }
Exemplo n.º 8
0
        public void OnDisposedPasses()
        {
            var     layout       = new TestLayout();
            var     callCounter  = 0;
            ILayout recievedSelf = null;

            layout.OnDisposed.Add((_self) => { callCounter++; recievedSelf = _self; });

            layout.Dispose();
            Assert.AreEqual(1, callCounter);
            Assert.AreEqual(layout, recievedSelf);
        }
Exemplo n.º 9
0
        public void Removing_child_from_layout_unregisters_for_updated()
        {
            var layout = new TestLayout();
            var view   = new TestView();

            layout.Add(view);
            layout.Remove(view);
            view.RaiseUpdated();

            layout.OnChildUpdatedInvocationCount.Should().Be(0);
            layout.Children.Should().BeEmpty();
        }
Exemplo n.º 10
0
        public void LayoutTargetOnDisposedPasses()
        {
            var layout = new TestLayout();
            var target = new LayoutTargetObject();

            layout.Target = target;

            target.Dispose();

            Assert.IsNull(layout.Target);
            Assert.AreEqual(0, target.OnDisposed.RegistedDelegateCount);
        }
Exemplo n.º 11
0
        public void Clearing_children_removes_all_child_views()
        {
            var layout = new TestLayout();
            var view1  = new TestView();
            var view2  = new TestView();

            layout.Add(view1);
            layout.Remove(view2);

            layout.Clear();

            layout.Children.Should().BeEmpty();
        }
Exemplo n.º 12
0
        public void ContainsTargetPasses()
        {
            var layout = new TestLayout();

            Assert.IsFalse(layout.ContainsTarget());

            var target = new LayoutTargetObject();

            layout.Target = target;
            Assert.IsTrue(layout.ContainsTarget());

            layout.Target = null;
            Assert.IsFalse(layout.ContainsTarget());
        }
Exemplo n.º 13
0
        public void OnDisposedWhenAfterDisposePasses()
        {
            var     layout       = new TestLayout();
            var     callCounter  = 0;
            ILayout recievedSelf = null;

            layout.OnDisposed.Add((_self) => { callCounter++; recievedSelf = _self; });
            layout.Dispose();

            callCounter  = 0;
            recievedSelf = null;
            layout.Dispose();
            Assert.AreEqual(0, callCounter);
            Assert.IsNull(recievedSelf);
        }
Exemplo n.º 14
0
        public void GetConnectedNeighbors(TrackDirection centerDir, TrackDirection leftDir, TrackDirection upDir, TrackDirection rightDir, TrackDirection downDir, bool left, bool up, bool right, bool down)
        {
            // The real layout evaluates the best direction, so we can't use it. We just want storage
            var layout = new TestLayout();

            layout.AddTrack(5, 5, centerDir);

            layout.AddTrack(4, 5, leftDir);
            layout.AddTrack(5, 4, upDir);
            layout.AddTrack(6, 5, rightDir);
            layout.AddTrack(5, 6, downDir);

            var track     = layout.GetTrackAt(5, 5);
            var neighbors = track.GetConnectedNeighbors();

            Assert.Equal(left, neighbors.Left != null);
            Assert.Equal(up, neighbors.Up != null);
            Assert.Equal(right, neighbors.Right != null);
            Assert.Equal(down, neighbors.Down != null);
        }
Exemplo n.º 15
0
        public void TestConstructor()
        {
            TestLayout layout = new TestLayout();
            Assert.IsNotNull(layout, "Constructor of type, object failed to create instance.");
            // env
            layout.Environment = _env;
            layout.Initialize();
            layout.ChangeStatus(ProjectStatus.Uninitialized);
            layout.SetPluginStatus(null);
            Assert.AreEqual(_env, layout.Environment, "Environment is unexpected value.");

            Assert.AreEqual("TestLayout", layout.GetPluginName(), "GetToolBarMenuStrip method returned unexpected value.");
            Assert.AreEqual("TestLayout", layout.GetLayoutName(), "GetToolBarMenuStrip method returned unexpected value.");
            Assert.IsNull(layout.Panel, "Panel is not expected value.");
            Assert.AreEqual(0, layout.SubIndex, "SubIndex is not expected value.");
            layout.SubIndex = 1;
            Assert.AreEqual(1, layout.SubIndex, "SubIndex is not expected value.");
            Assert.IsNull(layout.GetPluginStatus(), "GetPluginStatus method returned unexpected value.");
            Assert.IsNull(layout.GetPropertySettings(), "GetPropertySettings method returned unexpected value.");
            Assert.IsNull(layout.GetPublicDelegate(), "GetPublicDelegate method returned unexpected value.");
        }
Exemplo n.º 16
0
        public void SetLayoutTest()
        {
            var initializer   = new Initializer();
            var globalContext = initializer.GlobalContext;

            DeviceManager deviceManager = new DeviceManager(globalContext, initializer.Device);

            TestLayout layout1 = new TestLayout(new Identifier("Layout.test1"));
            TestLayout layout2 = new TestLayout(new Identifier("Layout.test1"));

            Assert.AreEqual(false, layout1.LayoutEntered);
            Assert.AreEqual(true, layout1.LayoutLeaved);
            Assert.AreEqual(false, layout2.LayoutEntered);
            Assert.AreEqual(true, layout2.LayoutLeaved);

            deviceManager.SetLayout(layout1);
            Assert.AreEqual(true, layout1.LayoutEntered);
            Assert.AreEqual(false, layout1.LayoutLeaved);
            Assert.AreEqual(false, layout2.LayoutEntered);
            Assert.AreEqual(true, layout2.LayoutLeaved);

            deviceManager.SetLayout(layout2);
            Assert.AreEqual(false, layout1.LayoutEntered);
            Assert.AreEqual(true, layout1.LayoutLeaved);
            Assert.AreEqual(true, layout2.LayoutEntered);
            Assert.AreEqual(false, layout2.LayoutLeaved);

            deviceManager.SetPreviousLayout(layout2.Id);
            Assert.AreEqual(true, layout1.LayoutEntered);
            Assert.AreEqual(false, layout1.LayoutLeaved);
            Assert.AreEqual(false, layout2.LayoutEntered);
            Assert.AreEqual(true, layout2.LayoutLeaved);

            deviceManager.SetPreviousLayout(layout1.Id);
            Assert.AreEqual(false, layout1.LayoutEntered);
            Assert.AreEqual(true, layout1.LayoutLeaved);
            Assert.AreEqual(false, layout2.LayoutEntered);
            Assert.AreEqual(true, layout2.LayoutLeaved);
        }
Exemplo n.º 17
0
        public void TestGridMethod()
        {
            TestLayout layout = new TestLayout();
            Assert.IsNotNull(layout, "Constructor of type, object failed to create instance.");
            // env
            layout.Environment = _env;

            _env.DataManager.LoadProject(TestConstant.Project_Drosophila);
            List<EcellObject> list = _env.DataManager.GetData("Drosophila", null);
            // GetLayoutGrid
            Dictionary<string, List<PointF>> plots = TestLayout.GetLayoutGrid(list, 100);
            Assert.IsNotNull(plots, "GetLayoutGrid method returned unexpected value.");
            // SetGrid
            List<EcellObject> systems = new List<EcellObject>();
            List<EcellObject> nodes = new List<EcellObject>();
            foreach (EcellObject eo in list)
            {
                if (eo is EcellSystem)
                {
                    systems.Add(eo);
                    foreach (EcellObject child in eo.Children)
                    {
                        if (child is EcellProcess || child is EcellVariable)
                            nodes.Add(child);
                    }
                }
            }
            layout.SetGrid(nodes, systems, 5);
        }
Exemplo n.º 18
0
        public void TestStaticMethod()
        {
            TestLayout layout = new TestLayout();
            Assert.IsNotNull(layout, "Constructor of type, object failed to create instance.");
            // env
            layout.Environment = _env;

            _env.DataManager.LoadProject(TestConstant.Project_Drosophila);
            List<EcellObject> list = _env.DataManager.GetData("Drosophila", null);

            List<EcellObject> selected = TestLayout.GetSelectedObject(list);
            List<EcellObject> related = TestLayout.GetRelatedObject(list);
            // Test GetSurroundingRect
            RectangleF rect = TestLayout.GetSurroundingRect(list);
            list = new List<EcellObject>();
            list.Add(_env.DataManager.GetEcellObject("Drosophila", "/CELL/CYTOPLASM:R_toy5", "Process"));
            list.Add(_env.DataManager.GetEcellObject("Drosophila", "/CELL/CYTOPLASM:R_toy1", "Process"));
            rect = TestLayout.GetSurroundingRect(list);

            PointF a = new PointF(0,0);
            PointF b = new PointF(10,0);
            PointF c = new PointF(0,5);
            PointF d = new PointF(5,5);
            PointF crossPoint;
            // Test GetIntersectingPoint
            try
            {
                crossPoint = TestLayout.GetIntersectingPoint(a, b, c, d);
            }
            catch (Exception)
            {
            }
            d = new PointF(5, 0);
            crossPoint = TestLayout.GetIntersectingPoint(a, b, c, d);
            Assert.AreEqual(d, crossPoint, "GetIntersectingPoint method returned unexpected value.");

            // Test DoesIntersect
            d = new PointF(5, 5);
            bool result = TestLayout.DoesIntersect(a, b, c, d);
            Assert.AreEqual(false, result, "DoesIntersect method returned unexpected value.");

            d = new PointF(5, 0);
            result = TestLayout.DoesIntersect(a, b, c, d);
            Assert.AreEqual(true, result, "DoesIntersect method returned unexpected value.");

            d = new PointF(10, 5);
            result = TestLayout.DoesIntersect(a, b, c, d);
            Assert.AreEqual(false, result, "DoesIntersect method returned unexpected value.");

            c = new PointF(0, -5);
            d = new PointF(0, 0);
            result = TestLayout.DoesIntersect(a, b, c, d);
            Assert.AreEqual(true, result, "DoesIntersect method returned unexpected value.");

            a = new PointF(0, 0);
            b = new PointF(0, 5);
            c = new PointF(0, 0);
            d = new PointF(5, 0);
            result = TestLayout.DoesIntersect(a, b, c, d);
            Assert.AreEqual(true, result, "DoesIntersect method returned unexpected value.");

            a = new PointF(0, 0);
            b = new PointF(15, 5);
            c = new PointF(10, 0);
            d = new PointF(9, 2);
            result = TestLayout.DoesIntersect(a, b, c, d);
            Assert.AreEqual(false, result, "DoesIntersect method returned unexpected value.");
        }
Exemplo n.º 19
0
        public void ButtonPressWorkflowTest()
        {
            var initializer   = new Initializer();
            var globalContext = initializer.GlobalContext;

            DeviceManager deviceManager = new DeviceManager(globalContext, initializer.Device);

            TestLayout layout1 = new TestLayout(new Identifier("Layout.test1"));
            TestLayout layout2 = new TestLayout(new Identifier("Layout.test1"));

            Tuple <Location, ButtonEvent> pressedButton1 = null;
            Tuple <Location, ButtonEvent> pressedButton2 = null;

            layout1.OnButtonPressed += (sender, tuple) => pressedButton1 = tuple;
            layout2.OnButtonPressed += (sender, tuple) => pressedButton2 = tuple;

            initializer.Device.PressButton(new Location(1, 1), true);
            Assert.AreEqual(null, pressedButton1);
            Assert.AreEqual(null, pressedButton2);
            initializer.Device.PressButton(new Location(1, 1), false);

            deviceManager.SetLayout(layout1);

            initializer.Device.PressButton(new Location(1, 1), true);
            Assert.AreEqual(new Location(1, 1), pressedButton1.Item1);
            Assert.AreEqual(ButtonEvent.Down, pressedButton1.Item2);
            Assert.AreEqual(null, pressedButton2);
            initializer.Device.PressButton(new Location(1, 1), false);
            Assert.AreEqual(new Location(1, 1), pressedButton1.Item1);
            Assert.AreEqual(ButtonEvent.Up, pressedButton1.Item2);
            Assert.AreEqual(null, pressedButton2);

            deviceManager.SetLayout(layout2);
            pressedButton1 = null;
            pressedButton2 = null;

            initializer.Device.PressButton(new Location(1, 1), true);
            Assert.AreEqual(new Location(1, 1), pressedButton2.Item1);
            Assert.AreEqual(ButtonEvent.Down, pressedButton2.Item2);
            Assert.AreEqual(null, pressedButton1);
            initializer.Device.PressButton(new Location(1, 1), false);
            Assert.AreEqual(new Location(1, 1), pressedButton2.Item1);
            Assert.AreEqual(ButtonEvent.Up, pressedButton2.Item2);
            Assert.AreEqual(null, pressedButton1);

            deviceManager.SetPreviousLayout();
            pressedButton1 = null;
            pressedButton2 = null;

            initializer.Device.PressButton(new Location(1, 1), true);
            Assert.AreEqual(new Location(1, 1), pressedButton1.Item1);
            Assert.AreEqual(ButtonEvent.Down, pressedButton1.Item2);
            Assert.AreEqual(null, pressedButton2);
            initializer.Device.PressButton(new Location(1, 1), false);
            Assert.AreEqual(new Location(1, 1), pressedButton1.Item1);
            Assert.AreEqual(ButtonEvent.Up, pressedButton1.Item2);
            Assert.AreEqual(null, pressedButton2);

            pressedButton1 = null;
            pressedButton2 = null;

            initializer.Device.PressButton(new Location(1, 1), true);
            Assert.AreEqual(ButtonEvent.Down, pressedButton1.Item2);
            Thread.Sleep(initializer.GlobalOptions.LongPressTimeout.Add(TimeSpan.FromSeconds(1)));
            Assert.AreEqual(ButtonEvent.LongPress, pressedButton1.Item2);
            initializer.Device.PressButton(new Location(1, 1), false);
            Assert.AreEqual(new Location(1, 1), pressedButton1.Item1);
            Assert.AreEqual(ButtonEvent.Up, pressedButton1.Item2);
        }
Exemplo n.º 20
0
 private void button8_Click(object sender, System.EventArgs e)
 {
     TestLayout.A1000Paragraphs("egal.pdf");
     System.Diagnostics.Process.Start("egal.pdf");
 }
Exemplo n.º 21
0
 internal override TreeNode <RawBytes, RawBytes> GetTreeNode(int pageSize, TestLayout <RawBytes, RawBytes> layout)
 {
     return(new TreeNodeDynamicSize <RawBytes, RawBytes>(pageSize, layout));
 }
Exemplo n.º 22
0
 private void button6_Click(object sender, System.EventArgs e)
 {
     this.textBox1.Text = TestLayout.DumpParagraph();
 }