[Libreoffice-commits] core.git: sw/PythonTest_sw_python.mk sw/qa

Xiaoli duan19002009 at gmail.com
Tue Aug 20 04:31:27 PDT 2013


 sw/PythonTest_sw_python.mk  |    1 
 sw/qa/python/check_table.py |  260 ++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 261 insertions(+)

New commits:
commit d89e02e4a7100bff3e7d81c389cdbc6d43adf480
Author: Xiaoli <duan19002009 at gmail.com>
Date:   Sun Jul 7 22:41:52 2013 +0200

    Translate writer test 'Checktable.java' to Python
    
    Change-Id: I66a36acdb4aa67d438fb36597f41e847bbde10e3
    Reviewed-on: https://gerrit.libreoffice.org/4796
    Reviewed-by: Petr Mladek <pmladek at suse.cz>
    Tested-by: Petr Mladek <pmladek at suse.cz>

diff --git a/sw/PythonTest_sw_python.mk b/sw/PythonTest_sw_python.mk
index 9421249..52907c1 100644
--- a/sw/PythonTest_sw_python.mk
+++ b/sw/PythonTest_sw_python.mk
@@ -16,6 +16,7 @@ $(eval $(call gb_PythonTest_set_defs,sw_python,\
 $(eval $(call gb_PythonTest_add_modules,sw_python,$(SRCDIR)/sw/qa/python,\
 	check_index \
 	check_fields \
+	check_table \
 	get_expression \
 	set_expression \
 	var_fields \
diff --git a/sw/qa/python/check_table.py b/sw/qa/python/check_table.py
new file mode 100644
index 0000000..2760e7c
--- /dev/null
+++ b/sw/qa/python/check_table.py
@@ -0,0 +1,260 @@
+import unittest
+from org.libreoffice.unotest import UnoInProcess
+from com.sun.star.uno import RuntimeException
+from com.sun.star.table import BorderLine
+from com.sun.star.table import BorderLine2
+from com.sun.star.table.BorderLineStyle import (DOUBLE, SOLID, EMBOSSED,\
+    THICKTHIN_LARGEGAP, DASHED, DOTTED)
+
+class CheckTable(unittest.TestCase):
+    _uno = None
+    _xDoc = None
+    _xDocF = None
+    @classmethod
+    def setUpClass(cls):
+        cls._uno = UnoInProcess()
+        cls._uno.setUp()
+        cls._xDoc = cls._uno.openEmptyWriterDoc()
+        cls._xDocF = cls._uno.openEmptyWriterDoc()
+    @classmethod
+    def tearDownClass(cls):
+        cls._uno.tearDown()
+
+    def test_tableborder(self):
+        xDoc = self.__class__._xDoc
+        # insert table
+        xTable = xDoc.createInstance("com.sun.star.text.TextTable")
+        xTable.initialize(3, 3)
+        xText = xDoc.getText()
+        xCursor = xText.createTextCursor()
+        xText.insertTextContent(xCursor, xTable, False)
+
+        border = xTable.getPropertyValue("TableBorder")
+
+        self.assertTrue(border.IsTopLineValid)
+        self.assertEquals(0, border.TopLine.InnerLineWidth)
+        self.assertEquals(2, border.TopLine.OuterLineWidth)
+        self.assertEquals(0, border.TopLine.LineDistance)
+        self.assertEquals(0, border.TopLine.Color)
+
+        self.assertTrue(border.IsBottomLineValid)
+        self.assertEquals(0, border.BottomLine.InnerLineWidth)
+        self.assertEquals(2, border.BottomLine.OuterLineWidth)
+        self.assertEquals(0, border.BottomLine.LineDistance)
+        self.assertEquals(0, border.BottomLine.Color)
+
+        self.assertTrue(border.IsLeftLineValid)
+        self.assertEquals(0, border.LeftLine.InnerLineWidth)
+        self.assertEquals(2, border.LeftLine.OuterLineWidth)
+        self.assertEquals(0, border.LeftLine.LineDistance)
+        self.assertEquals(0, border.LeftLine.Color)
+
+        self.assertTrue(border.IsRightLineValid)
+        self.assertEquals(0, border.RightLine.InnerLineWidth)
+        self.assertEquals(2, border.RightLine.OuterLineWidth)
+        self.assertEquals(0, border.RightLine.LineDistance)
+        self.assertEquals(0, border.RightLine.Color)
+
+        self.assertTrue(border.IsHorizontalLineValid)
+        self.assertEquals(0, border.HorizontalLine.InnerLineWidth)
+        self.assertEquals(2, border.HorizontalLine.OuterLineWidth)
+        self.assertEquals(0, border.HorizontalLine.LineDistance)
+        self.assertEquals(0, border.HorizontalLine.Color)
+
+        self.assertTrue(border.IsVerticalLineValid)
+        self.assertEquals(0, border.VerticalLine.InnerLineWidth)
+        self.assertEquals(2, border.VerticalLine.OuterLineWidth)
+        self.assertEquals(0, border.VerticalLine.LineDistance)
+        self.assertEquals(0, border.VerticalLine.Color)
+
+        self.assertTrue(border.IsDistanceValid)
+        self.assertEquals(97, border.Distance)
+    # set border
+        border.TopLine        = BorderLine(0,      11, 19, 19)
+        border.BottomLine     = BorderLine(0xFF,   00, 11, 00)
+        border.HorizontalLine = BorderLine(0xFF00, 00, 90, 00)
+        xTable.setPropertyValue("TableBorder", border)
+    # read set border
+        border = xTable.getPropertyValue("TableBorder")
+
+        self.assertTrue(border.IsTopLineValid)
+        self.assertEquals(11, border.TopLine.InnerLineWidth)
+        self.assertEquals(19, border.TopLine.OuterLineWidth)
+        self.assertEquals(19, border.TopLine.LineDistance)
+        self.assertEquals(0, border.TopLine.Color)
+
+        self.assertTrue(border.IsBottomLineValid)
+        self.assertEquals(0, border.BottomLine.InnerLineWidth)
+        self.assertEquals(11, border.BottomLine.OuterLineWidth)
+        self.assertEquals(0, border.BottomLine.LineDistance)
+        self.assertEquals(0xFF, border.BottomLine.Color)
+
+        self.assertTrue(border.IsLeftLineValid)
+        self.assertEquals(0, border.LeftLine.InnerLineWidth)
+        self.assertEquals(2, border.LeftLine.OuterLineWidth)
+        self.assertEquals(0, border.LeftLine.LineDistance)
+        self.assertEquals(0, border.LeftLine.Color)
+
+        self.assertTrue(border.IsRightLineValid)
+        self.assertEquals(0, border.RightLine.InnerLineWidth)
+        self.assertEquals(2, border.RightLine.OuterLineWidth)
+        self.assertEquals(0, border.RightLine.LineDistance)
+        self.assertEquals(0, border.RightLine.Color)
+
+        self.assertTrue(border.IsHorizontalLineValid)
+        self.assertEquals(0, border.HorizontalLine.InnerLineWidth)
+        self.assertEquals(90, border.HorizontalLine.OuterLineWidth)
+        self.assertEquals(0, border.HorizontalLine.LineDistance)
+        self.assertEquals(0xFF00, border.HorizontalLine.Color)
+
+        self.assertTrue(border.IsVerticalLineValid)
+        self.assertEquals(0, border.VerticalLine.InnerLineWidth)
+        self.assertEquals(2, border.VerticalLine.OuterLineWidth)
+        self.assertEquals(0, border.VerticalLine.LineDistance)
+        self.assertEquals(0, border.VerticalLine.Color)
+
+        self.assertTrue(border.IsDistanceValid)
+        self.assertEquals(97, border.Distance)
+
+        border2 = xTable.getPropertyValue("TableBorder2")
+        self.assertTrue(border2.IsTopLineValid)
+        self.assertEquals(11, border2.TopLine.InnerLineWidth)
+        self.assertEquals(19, border2.TopLine.OuterLineWidth)
+        self.assertEquals(19,  border2.TopLine.LineDistance)
+        self.assertEquals(0, border2.TopLine.Color)
+        self.assertEquals(DOUBLE, border2.TopLine.LineStyle)
+        self.assertEquals(49, border2.TopLine.LineWidth)
+
+        self.assertTrue(border2.IsBottomLineValid)
+        self.assertEquals(0, border2.BottomLine.InnerLineWidth)
+        self.assertEquals(11, border2.BottomLine.OuterLineWidth)
+        self.assertEquals(0, border2.BottomLine.LineDistance)
+        self.assertEquals(0xFF, border2.BottomLine.Color)
+        self.assertEquals(SOLID, border2.BottomLine.LineStyle)
+        self.assertEquals(11, border2.BottomLine.LineWidth)
+
+        self.assertTrue(border2.IsLeftLineValid)
+        self.assertEquals(0, border2.LeftLine.InnerLineWidth)
+        self.assertEquals(2, border2.LeftLine.OuterLineWidth)
+        self.assertEquals(0, border2.LeftLine.LineDistance)
+        self.assertEquals(0, border2.LeftLine.Color)
+        self.assertEquals(SOLID, border2.LeftLine.LineStyle)
+        self.assertEquals(2, border2.LeftLine.LineWidth)
+
+        self.assertTrue(border2.IsRightLineValid)
+        self.assertEquals(0, border2.RightLine.InnerLineWidth)
+        self.assertEquals(2, border2.RightLine.OuterLineWidth)
+        self.assertEquals(0, border2.RightLine.LineDistance)
+        self.assertEquals(0, border2.RightLine.Color)
+        self.assertEquals(SOLID, border2.RightLine.LineStyle)
+        self.assertEquals(2, border2.RightLine.LineWidth)
+
+        self.assertTrue(border2.IsHorizontalLineValid)
+        self.assertEquals(0, border2.HorizontalLine.InnerLineWidth)
+        self.assertEquals(90, border2.HorizontalLine.OuterLineWidth)
+        self.assertEquals(0, border2.HorizontalLine.LineDistance)
+        self.assertEquals(0xFF00, border2.HorizontalLine.Color)
+        self.assertEquals(SOLID, border2.HorizontalLine.LineStyle)
+        self.assertEquals(90, border2.HorizontalLine.LineWidth)
+
+        self.assertTrue(border2.IsVerticalLineValid)
+        self.assertEquals(0, border2.VerticalLine.InnerLineWidth)
+        self.assertEquals(2, border2.VerticalLine.OuterLineWidth)
+        self.assertEquals(0, border2.VerticalLine.LineDistance)
+        self.assertEquals(0, border2.VerticalLine.Color)
+        self.assertEquals(SOLID, border2.VerticalLine.LineStyle)
+        self.assertEquals(2, border2.VerticalLine.LineWidth)
+
+        self.assertTrue(border2.IsDistanceValid)
+        self.assertEquals(97, border2.Distance)
+    # set border2
+        border2.RightLine      = BorderLine2(0,      0, 0, 0, THICKTHIN_LARGEGAP, 120)
+        border2.LeftLine       = BorderLine2(0,      0, 0, 0, EMBOSSED, 90)
+        border2.VerticalLine   = BorderLine2(0xFF,   0, 90, 0, DOTTED, 0)
+        border2.HorizontalLine = BorderLine2(0xFF00, 0, 0, 0, DASHED, 11)
+        xTable.setPropertyValue("TableBorder2", border2)
+    # read set border2
+        border2 = xTable.getPropertyValue("TableBorder2")
+
+        self.assertTrue(border2.IsTopLineValid)
+        self.assertEquals(11, border2.TopLine.InnerLineWidth)
+        self.assertEquals(19, border2.TopLine.OuterLineWidth)
+        self.assertEquals(19, border2.TopLine.LineDistance)
+        self.assertEquals(0, border2.TopLine.Color)
+        self.assertEquals(DOUBLE, border2.TopLine.LineStyle)
+        self.assertEquals(49, border2.TopLine.LineWidth)
+
+        self.assertTrue(border2.IsBottomLineValid)
+        self.assertEquals(0, border2.BottomLine.InnerLineWidth)
+        self.assertEquals(11, border2.BottomLine.OuterLineWidth)
+        self.assertEquals(0, border2.BottomLine.LineDistance)
+        self.assertEquals(0xFF, border2.BottomLine.Color)
+        self.assertEquals(SOLID, border2.BottomLine.LineStyle)
+        self.assertEquals(11, border2.BottomLine.LineWidth)
+
+        self.assertTrue(border2.IsLeftLineValid)
+        self.assertEquals(23, border2.LeftLine.InnerLineWidth)
+        self.assertEquals(23, border2.LeftLine.OuterLineWidth)
+        self.assertEquals(46, border2.LeftLine.LineDistance)
+        self.assertEquals(0, border2.LeftLine.Color)
+        self.assertEquals(EMBOSSED, border2.LeftLine.LineStyle)
+        self.assertEquals(90, border2.LeftLine.LineWidth)
+
+        self.assertTrue(border2.IsRightLineValid)
+        self.assertEquals(53, border2.RightLine.InnerLineWidth)
+        self.assertEquals(26, border2.RightLine.OuterLineWidth)
+        self.assertEquals(41, border2.RightLine.LineDistance)
+        self.assertEquals(0, border2.RightLine.Color)
+        self.assertEquals(THICKTHIN_LARGEGAP, border2.RightLine.LineStyle)
+        self.assertEquals(120, border2.RightLine.LineWidth)
+
+        self.assertTrue(border2.IsHorizontalLineValid)
+        self.assertEquals(0, border2.HorizontalLine.InnerLineWidth)
+        self.assertEquals(11, border2.HorizontalLine.OuterLineWidth)
+        self.assertEquals(0, border2.HorizontalLine.LineDistance)
+        self.assertEquals(0xFF00, border2.HorizontalLine.Color)
+        self.assertEquals(DASHED, border2.HorizontalLine.LineStyle)
+        self.assertEquals(11, border2.HorizontalLine.LineWidth)
+
+        self.assertTrue(border2.IsVerticalLineValid)
+        self.assertEquals(0, border2.VerticalLine.InnerLineWidth)
+        self.assertEquals(90, border2.VerticalLine.OuterLineWidth)
+        self.assertEquals(0, border2.VerticalLine.LineDistance)
+        self.assertEquals(0xFF, border2.VerticalLine.Color)
+        self.assertEquals(DOTTED, border2.VerticalLine.LineStyle)
+        self.assertEquals(90, border2.VerticalLine.LineWidth)
+
+        self.assertTrue(border2.IsDistanceValid)
+        self.assertEquals(97, border2.Distance)
+
+    # close document
+        xDoc.dispose()
+    # set border
+
+    def test_fdo58242(self):
+
+        xDoc = self.__class__._xDocF
+    # insert table
+        xTable = xDoc.createInstance("com.sun.star.text.TextTable")
+        xTable.initialize(3, 3)
+        xText = xDoc.getText()
+        xCursor = xText.createTextCursor()
+        xText.insertTextContent(xCursor, xTable, False)
+    # get anchor
+        xAnchor = xTable.getAnchor()
+
+    # check all properties on the anchor - shouldn't crash despite
+    # pointing to a non-SwTxtNode
+        xPropsInfo = xAnchor.getPropertySetInfo()
+        for i in xPropsInfo.getProperties():
+            try:
+                xAnchor.getPropertyValue(i.Name)
+            except RuntimeException:
+                pass
+    # close document
+        xDoc.dispose()
+
+if __name__ == '__main__':
+    unittest.main()
+
+# /* vim:set shiftwidth=4 softtabstop=4 expandtab: */


More information about the Libreoffice-commits mailing list