Edgewall Software

Ticket #403: gentest.py

File gentest.py, 1.7 KB (added by anatoly techtonik <techtonik@…>, 4 years ago)

test file

Line 
1from genshi.builder import tag
2from genshi.input import HTML
3from genshi.path import Path
4from genshi.filters.transform import Transformer
5
6html = HTML('''
7            <tr>
8                <th class="col1">
9                  <label for="field-cc">Cc:</label>
10                </th>
11                <td class="col1">
12                        <span>
13                          <input type="text" id="field-cc"/>
14                        </span>
15                </td>
16                <th class="col2">
17                </th>
18                <td class="col2">
19                </td>
20            </tr>''')
21
22#print Path('./').select(html)
23#print html.select('./tr')
24
25transtream = html | Transformer('.')\
26          .select("td[2]").append("Bbbb").end()\
27          .select('th[2]').append("Aaaa")
28print transtream.select(".")
29
30
31html2 = HTML('''
32      <form action="/newticket" method="post" id="propertyform">
33        <fieldset id="properties">
34          <table>
35            <tr>
36                <th class="col1">
37                  <label for="field-cc">Cc:</label>
38                </th>
39                <td class="col1">
40                        <span>
41                          <input type="text" id="field-cc"/>
42                        </span>
43                </td>
44                <th class="col2">
45                </th>
46                <td class="col2">
47                </td>
48            </tr>
49          </table>
50        </fieldset>
51      </form>
52''')
53print "-"*5
54transtream = html2 | Transformer('fieldset[@id="properties"]/table/tr')\
55          .select("td[2]").append("Bbbb").end()\
56          .select('th[2]').append("Aaaa")
57print transtream.select('//fieldset[@id="properties"]/table/tr')