File: test-repl-glibc.py

package info (click to toggle)
swiftlang 6.0.3-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,519,992 kB
  • sloc: cpp: 9,107,863; ansic: 2,040,022; asm: 1,135,751; python: 296,500; objc: 82,456; f90: 60,502; lisp: 34,951; pascal: 19,946; sh: 18,133; perl: 7,482; ml: 4,937; javascript: 4,117; makefile: 3,840; awk: 3,535; xml: 914; fortran: 619; cs: 573; ruby: 573
file content (61 lines) | stat: -rw-r--r-- 1,253 bytes parent folder | download
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# Tests that importing Glibc works on Linux
#
# REQUIRES: platform=Linux
# REQUIRES: have-pexpect
# REQUIRES: rdar83892173
# RUN: rm -rf %t.dir
# RUN: mkdir %t.dir
# RUN: %{python} %s %{swift} > %t.dir/output.txt
# RUN: %{FileCheck} --input-file %t.dir/output.txt %s
# CHECK: OK

from __future__ import print_function

import pexpect, sys

swift = "swift"
if len(sys.argv) > 1:
    swift = sys.argv[1]
    
repl = pexpect.spawn(swift)

repl.expect('(.*)Welcome to Swift version (.*)\r\n')
# print 'before (text up to pattern that was matched):'
# print repl.before
# print '--'
# print 'after (what was actually matched by pattern):'
# print repl.after
# print '--'
# print repl.match.groups()
# print '--'

# repl.expect("(.*)1>(.*)")
repl.sendline('print("hello, world")')

repl.expect('\r\nhello, world.*\r\n')
# print 'before:'
# print repl.before
# print '--'
# print 'after:'
# print repl.after
# print '--'
# print repl.match.groups()
# print '--'

# repl.expect("(.*)2>(.*)")
repl.sendline('import Glibc')

# repl.expect("(.*)3>(.*)")

repl.sendline(":type lookup FILE")
repl.expect("init")
# print 'before:'
# print repl.before
# print '--'
# print 'after:'
# print repl.after
# print '--'
# print repl.match.groups()
# print '--'

print("OK")