public void Configure_should_make_selector_configurated()
        {
            var size = new Size(0, 0);
            var selector = new SquareRectSelector(size);
            var freqList = new[] { 1, 2, 3 }.ToImmutableList();
            selector.Configure(freqList);

            Assert.AreEqual(false, selector.IsNotConfigurated());
        }
        public void GetAppropriateValue_should_fill_surface_from_current_point_if_line_is_not_overflow()
        {
            var size = new Size(100, 100);
            var selector = new SquareRectSelector(size);
            var freqList = new[] { 1, 2, 3 }.ToImmutableList();
            selector.Configure(freqList);

            var supposedResult = selector.CurPoint;
            var textSize = new Size(50, 50);
            var result = selector.GetAppropriateValue(textSize).Location;

            Assert.AreEqual(supposedResult, result);
        }
        public void GetAppropriateValue_should_move_cur_point_for_filled_rect_width()
        {
            var size = new Size(100, 100);
            var selector = new SquareRectSelector(size);
            var freqList = new[] { 1, 2, 3 }.ToImmutableList();
            selector.Configure(freqList);
            var textSize = new Size(60, 60);
            selector.GetAppropriateValue(textSize);

            var supposedResult = new PointF(60, 0);
            var result = selector.CurPoint;

            Assert.AreEqual(supposedResult, result);
        }
        public void GetAppropriateValue_should_throws_if_selector_is_not_configurated()
        {
            var size = new Size(0, 0);
            var selector = new SquareRectSelector(size);

            Assert.Throws<Exception>(delegate { selector.GetAppropriateValue(size); });
        }