Beispiel #1
0
        [Fact]//(Skip = "TODO")]
        public void TestFindSpreadsheetsFromCells()
        {
            var         parse = UtilsForTesting.LoadCsvLines("Resources/csv/TestSpreadsheetExtractor-CELLS.csv");
            List <Cell> cells = new List <Cell>();

            foreach (var record in parse)
            {
                var top    = double.Parse(record[0]);   // top
                var left   = double.Parse(record[1]);   // left
                var width  = double.Parse(record[2]);   // width
                var height = double.Parse(record[3]);   // height
                cells.Add(new Cell(new PdfRectangle(left, top, left + width, top + height)));
            }

            List <TableRectangle> expected = EXPECTED_RECTANGLES.ToList();

            Utils.Sort(expected, new TableRectangle.ILL_DEFINED_ORDER());
            List <TableRectangle> foundRectangles = SpreadsheetExtractionAlgorithm.FindSpreadsheetsFromCells(cells.Cast <TableRectangle>().ToList());

            Utils.Sort(foundRectangles, new TableRectangle.ILL_DEFINED_ORDER());

            Assert.Equal(foundRectangles, expected);
        }
        public void TestNaturalOrderOfRectanglesOneMoreTime()
        {
            var parse = UtilsForTesting.LoadCsvLines("Resources/csv/TestBasicExtractor-RECTANGLE_TEST_NATURAL_ORDER.csv");
            List <TableRectangle> rectangles = new List <TableRectangle>();

            foreach (var record in parse)
            {
                var    top  = double.Parse(record[0]);
                var    left = double.Parse(record[1]);
                double w    = double.Parse(record[2]);
                double h    = double.Parse(record[3]);

                rectangles.Add(new TableRectangle(new PdfRectangle(left, top, left + w, top + h)));
            }

            Utils.Sort(rectangles, new TableRectangle.ILL_DEFINED_ORDER());

            for (int i = 0; i < rectangles.Count - 1; i++)
            {
                TableRectangle rectangle     = rectangles[i];
                TableRectangle nextRectangle = rectangles[i + 1];
                Assert.True(rectangle.CompareTo(nextRectangle) < 0);
            }
        }