blob: de417696f30faf3a2365155e2cda26795cf97c21 [file] [log] [blame]
Wenzel Jakob17cdb062016-03-10 13:24:10 +01001#!/usr/bin/env python
2from __future__ import print_function
3import sys
4sys.path.append('.')
5
Wenzel Jakobd3349af2016-03-26 23:04:10 +01006from example.issues import print_cchar, print_char
Wenzel Jakobf5c154a2016-04-11 18:13:08 +02007from example.issues import DispatchIssue, dispatch_issue_go
Wenzel Jakobd2b628b2016-04-30 23:02:39 +02008from example.issues import Placeholder, return_vec_of_reference_wrapper
Wenzel Jakob6ca6e822016-04-27 14:33:52 +02009from example.issues import iterator_passthrough
Wenzel Jakobbd57eb42016-05-01 14:42:20 +020010from example.issues import ElementList, ElementA, print_element
Wenzel Jakobd2b628b2016-04-30 23:02:39 +020011import gc
Wenzel Jakob17cdb062016-03-10 13:24:10 +010012
13print_cchar("const char *")
Wenzel Jakobd3349af2016-03-26 23:04:10 +010014print_char('c')
Wenzel Jakobf5c154a2016-04-11 18:13:08 +020015
16
17class PyClass1(DispatchIssue):
18 def dispatch(self):
19 print("Yay..")
20
21
22class PyClass2(DispatchIssue):
23 def dispatch(self):
24 try:
25 super(PyClass2, self).dispatch()
26 except Exception as e:
27 print("Failed as expected: " + str(e))
28 p = PyClass1()
29 dispatch_issue_go(p)
30
31b = PyClass2()
32dispatch_issue_go(b)
Wenzel Jakobf54ded72016-04-20 17:00:57 +020033
Wenzel Jakobdbe43ff2016-04-21 12:21:14 +020034print(return_vec_of_reference_wrapper(Placeholder(4)))
Wenzel Jakob6ca6e822016-04-27 14:33:52 +020035
36print(list(iterator_passthrough(iter([3, 5, 7, 9, 11, 13, 15]))))
Wenzel Jakobd2b628b2016-04-30 23:02:39 +020037
38el = ElementList()
39for i in range(10):
40 el.add(ElementA(i))
41gc.collect()
42for i, v in enumerate(el.get()):
43 print("%i==%i, " % (i, v.value()), end='')
44print()
Wenzel Jakobbd57eb42016-05-01 14:42:20 +020045
46try:
47 print_element(None)
48except Exception as e:
49 print("Failed as expected: " + str(e))