blob: d075e8340b94905e66089792ce2b3738e4e6fc27 [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 Jakob3f200fa2016-05-17 15:35:29 +020011from example.issues import expect_float, expect_int
Wenzel Jakobd2b628b2016-04-30 23:02:39 +020012import gc
Wenzel Jakob17cdb062016-03-10 13:24:10 +010013
14print_cchar("const char *")
Wenzel Jakobd3349af2016-03-26 23:04:10 +010015print_char('c')
Wenzel Jakobf5c154a2016-04-11 18:13:08 +020016
17
18class PyClass1(DispatchIssue):
19 def dispatch(self):
20 print("Yay..")
21
22
23class PyClass2(DispatchIssue):
24 def dispatch(self):
25 try:
26 super(PyClass2, self).dispatch()
27 except Exception as e:
28 print("Failed as expected: " + str(e))
29 p = PyClass1()
30 dispatch_issue_go(p)
31
32b = PyClass2()
33dispatch_issue_go(b)
Wenzel Jakobf54ded72016-04-20 17:00:57 +020034
Wenzel Jakobdbe43ff2016-04-21 12:21:14 +020035print(return_vec_of_reference_wrapper(Placeholder(4)))
Wenzel Jakob6ca6e822016-04-27 14:33:52 +020036
37print(list(iterator_passthrough(iter([3, 5, 7, 9, 11, 13, 15]))))
Wenzel Jakobd2b628b2016-04-30 23:02:39 +020038
39el = ElementList()
40for i in range(10):
41 el.add(ElementA(i))
42gc.collect()
43for i, v in enumerate(el.get()):
44 print("%i==%i, " % (i, v.value()), end='')
45print()
Wenzel Jakobbd57eb42016-05-01 14:42:20 +020046
47try:
48 print_element(None)
49except Exception as e:
50 print("Failed as expected: " + str(e))
Wenzel Jakob3f200fa2016-05-17 15:35:29 +020051
52try:
53 print(expect_int(5.2))
54except Exception as e:
55 print("Failed as expected: " + str(e))
56
57print(expect_float(12))