Files
swift-mirror/test/Interpreter/process_arguments.swift

41 lines
1.2 KiB
Swift

// RUN: %swift -interpret %s | FileCheck %s -check-prefix=CHECK-NONE
// RUN: %swift -interpret %s -Onone -g | FileCheck %s -check-prefix=CHECK-NONE
// RUN: %swift -interpret %s -Onone -g -- | FileCheck %s -check-prefix=CHECK-NONE
// RUN: %swift -interpret %s -Onone -g -- a b c | FileCheck %s -check-prefix=CHECK-THREE
// REQUIRES: swift_interpreter
print("Begin arguments")
for arg in Process.arguments { print(arg) }
print("End arguments")
// CHECK-NONE: Begin arguments
// CHECK-NONE-NEXT: {{.*}}process_arguments.swift
// CHECK-NONE-NEXT: End arguments
// CHECK-THREE: Begin arguments
// CHECK-THREE-NEXT: {{.*}}process_arguments.swift
// CHECK-THREE-NEXT: a
// CHECK-THREE-NEXT: b
// CHECK-THREE-NEXT: c
// CHECK-THREE-NEXT: End arguments
print("Begin unsafeArgv")
for i in 0...Int(Process.argc) {
print(Process.unsafeArgv[i].map { String(cString: $0) } ?? "(null)")
}
print("End unsafeArgv")
// CHECK-NONE: Begin unsafeArgv
// CHECK-NONE-NEXT: {{.*}}process_arguments.swift
// CHECK-NONE-NEXT: (null)
// CHECK-NONE-NEXT: End unsafeArgv
// CHECK-THREE: Begin unsafeArgv
// CHECK-THREE-NEXT: {{.*}}process_arguments.swift
// CHECK-THREE-NEXT: a
// CHECK-THREE-NEXT: b
// CHECK-THREE-NEXT: c
// CHECK-THREE-NEXT: (null)
// CHECK-THREE-NEXT: End unsafeArgv