paul@0 | 1 | #!/usr/bin/env python |
paul@0 | 2 | |
paul@0 | 3 | from ImprovedTableParser import parse |
paul@0 | 4 | |
paul@0 | 5 | table = """<tablestyle="border: 2px solid red; border-collapse: collapse;" rowstyle="background-color: #f77;"> |
paul@0 | 6 | Test||Outcome||Comments |
paul@0 | 7 | == |
paul@0 | 8 | Colspan |
paul@0 | 9 | ||<colspan="2"> Test a column with attributes |
paul@0 | 10 | == |
paul@0 | 11 | Normal || <style=" |
paul@0 | 12 | text-align: center" colspan=1> Three columns || Adjacent column |
paul@0 | 13 | == |
paul@0 | 14 | Split |
paul@0 | 15 | || Three columns |
paul@0 | 16 | || Separate lines |
paul@0 | 17 | == |
paul@0 | 18 | * Item #1 |
paul@0 | 19 | * Item #2 |
paul@0 | 20 | || |
paul@0 | 21 | * Item #A |
paul@0 | 22 | || Not a list |
paul@0 | 23 | """ |
paul@0 | 24 | |
paul@0 | 25 | attrs, rows = parse(table) |
paul@0 | 26 | |
paul@0 | 27 | print table |
paul@0 | 28 | print attrs |
paul@0 | 29 | print rows |
paul@0 | 30 | print len(rows) == 5, ": length is", len(rows), "==", 5 |
paul@0 | 31 | print |
paul@0 | 32 | for (row_attrs, columns), expected in zip(rows, [3, 2, 3, 3, 3]): |
paul@0 | 33 | print row_attrs |
paul@0 | 34 | print columns |
paul@0 | 35 | print len(columns) == expected, ": length is", len(columns), "==", expected |
paul@0 | 36 | print |
paul@0 | 37 | |
paul@0 | 38 | # vim: tabstop=4 expandtab shiftwidth=4 |