예제 #1
0
        public void TestSetPlotsShouldRenderPlots()
        {
            var plot  = new CanvasCircle();
            var plots = new List <CanvasItem> {
                plot
            };
            var backgroundVisual = new FakeVisual();
            var plotVisual       = new FakeVisual();
            var plotVisuals      = new List <Visual> {
                plotVisual
            };
            var visuals = new List <Visual> {
                backgroundVisual, plotVisual
            };
            var callback  = CanvasControl.ItemsProperty.GetMetadata(_control).PropertyChangedCallback;
            var callback2 = new Action(() => callback.Invoke(_control, new DependencyPropertyChangedEventArgs()));

            _mockPropertyService.Setup(p => p.SetValue(CanvasControl.ItemsProperty, It.IsAny <object>())).Callback(callback2);
            _mockPropertyService.Setup(p => p.GetValue(CanvasControl.ItemsProperty)).Returns(plots);
            _mockPropertyService.Setup(p => p.GetValue(CanvasControl.SelectedItemsProperty)).Returns(new List <CanvasItem>());
            _mockRenderer.Setup(p => p.DrawBackground(0d, 0d)).Returns(backgroundVisual);
            _mockRenderer.Setup(p => p.DrawItems(plots)).Returns(plotVisuals);
            _control.Items = plots;
            _mockVisualService.Verify(p => p.Clear(), Times.Once());
            _mockVisualService.Verify(p => p.Add(visuals));
        }
예제 #2
0
 public void SetUp()
 {
     _plot  = new CanvasCircle();
     _plots = new List <CanvasItem> {
         _plot
     };
     _canvasRenderer = new CanvasRenderer();
 }
예제 #3
0
        public CanvasCircle CreateCircle(int id, Rect shapeExtent, Color color)
        {
            var circle = new CanvasCircle
            {
                Id     = id,
                X      = shapeExtent.X,
                Y      = shapeExtent.Y,
                Radius = shapeExtent.Width / 2,
                Color  = color
            };

            return(circle);
        }
예제 #4
0
        public void SetUp()
        {
            _circle = new CanvasCircle()
            {
                X      = 0,
                Y      = 0,
                Radius = 8,
                Color  = Colors.LightBlue
            };

            _brush = new SolidColorBrush(Colors.LightBlue);
            _pen   = new Pen(Brushes.Black, 1);
        }
예제 #5
0
        public void SetUp()
        {
            _controlSize = new Size();
            _viewExtent  = new Rect();
            _plot        = new PlotDto()
            {
                Id    = 1,
                X     = 1d,
                Y     = 2d,
                Color = new Domain.Colors.Color(0, 0, 0),
                Label = "Test",
                Image = new BitmapImage()
            };
            _plots = new List <PlotDto> {
                _plot
            };
            _canvasCircle = new CanvasCircle();
            _canvasImage  = new CanvasImage();
            _canvasLabel  = new CanvasLabel();

            _mockResizer = new Mock <IViewResizer>();
            _mockResizer.Setup(p => p.ResizeView(_controlSize, _viewExtent))
            .Returns(_viewExtent);

            _mockComputer = new Mock <IScaleComputer>();
            _mockComputer.Setup(p => p.ComputeScale(_controlSize, _viewExtent)).Returns(1d);

            _mockCalculator = new Mock <IGeometryCalculator>();

            _mockFactory = new Mock <IGeometryFactory>();
            _mockFactory.Setup(p => p.CreateCircle(_plot.Id, It.IsAny <Rect>(), It.IsAny <Color>()))
            .Returns(_canvasCircle);
            _mockFactory.Setup(p => p.CreateImage(_plot.Id, It.IsAny <Rect>(), _plot.Image))
            .Returns(_canvasImage);
            _mockFactory.Setup(p => p.CreateLabel(_plot.Id, It.IsAny <Point>(), _plot.Label))
            .Returns(_canvasLabel);

            _renderer = new PlotRenderer(
                _mockResizer.Object,
                _mockComputer.Object,
                _mockCalculator.Object,
                _mockFactory.Object);
        }