summaryrefslogtreecommitdiff
path: root/tests/build/cythonize_with_annotate.srctree
blob: f529d862070fd3776aee7266c866241d76705068 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
PYTHON setup.py build_ext --inplace
PYTHON -c "import not_annotated; not_annotated.check()"
PYTHON -c "import default_annotated; default_annotated.check()"
PYTHON -c "import fullc_annotated; fullc_annotated.check()"
######## setup.py ########

from Cython.Build.Dependencies import cythonize

from distutils.core import setup

setup(
  ext_modules = cythonize(["not_annotated.pyx"], language_level=3) +
                cythonize(["default_annotated.pyx"], annotate=True, language_level=3) + 
                cythonize(["fullc_annotated.pyx"], annotate='fullc', language_level=3)
)
######## not_annotated.pyx ########
# check that html-file doesn't exist:
def check():
    import os.path as os_path
    assert not os_path.isfile(__name__+'.html')



######## default_annotated.pyx ########
# load html-site and check that the marker isn't there:
def check():
    from codecs import open
    with open(__name__+'.html', 'r', 'utf8') as html_file:
        html = html_file.read()

    from Cython.Compiler.Annotate import AnnotationCCodeWriter
    assert (AnnotationCCodeWriter.COMPLETE_CODE_TITLE not in html) # per default no complete c code



######## fullc_annotated.pyx ########
# load html-site and check that the marker is there:
def check():
    from codecs import open
    with open(__name__+'.html', 'r', 'utf8') as html_file:
        html = html_file.read()

    from Cython.Compiler.Annotate import AnnotationCCodeWriter
    assert (AnnotationCCodeWriter.COMPLETE_CODE_TITLE in html)