mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
This is not an exhaustive test of language features, but it at least checks that the simple stuff is working.
70 lines
1.9 KiB
Plaintext
70 lines
1.9 KiB
Plaintext
// Make sure parse-only works...
|
|
// RUN: %target-swift-frontend -parse %s
|
|
|
|
// ...and then make sure parse-and-typecheck-and-serialize works.
|
|
// RUN: %empty-directory(%t)
|
|
// RUN: %target-swift-frontend -emit-module -o %t/SmokeTest.swiftmodule %s
|
|
// RUN: %target-swift-ide-test -print-module -module-to-print SmokeTest -I %t -source-filename x -print-interface > %t/SmokeTest.txt
|
|
// RUN: %FileCheck %s < %t/SmokeTest.txt
|
|
// RUN: %FileCheck -check-prefix NEGATIVE %s < %t/SmokeTest.txt
|
|
|
|
// CHECK-LABEL: public class TestClass
|
|
public class TestClass {
|
|
// CHECK: public init(){{$}}
|
|
public init()
|
|
|
|
// CHECK: public func method(){{$}}
|
|
public func method()
|
|
|
|
// CHECK: public subscript(_: Int) -> Void{{$}}
|
|
public subscript(_: Int) -> Void { get set }
|
|
|
|
// CHECK: public var prop: Int{{$}}
|
|
public var prop: Int { get set }
|
|
|
|
// NEGATIVE-NOT: deinit
|
|
deinit
|
|
} // CHECK: {{^}$}}
|
|
|
|
// CHECK-LABEL: public enum TestEnum
|
|
public enum TestEnum {
|
|
// CHECK: case a
|
|
case a
|
|
|
|
// CHECK: public init(){{$}}
|
|
public init()
|
|
|
|
// CHECK: public func method(){{$}}
|
|
public func method()
|
|
|
|
// CHECK: public subscript(_: Int) -> Void{{$}}
|
|
public subscript(_: Int) -> Void { get set }
|
|
|
|
// CHECK: public var prop: Int{{$}}
|
|
public var prop: Int { get set }
|
|
} // CHECK: {{^}$}}
|
|
|
|
// CHECK-LABEL: public struct TestStruct
|
|
public struct TestStruct {
|
|
// CHECK: public init(){{$}}
|
|
public init()
|
|
|
|
// CHECK: public func method(){{$}}
|
|
public func method()
|
|
|
|
// CHECK: public subscript(_: Int) -> Void{{$}}
|
|
public subscript(_: Int) -> Void { get set }
|
|
|
|
// CHECK: public var prop: Int{{$}}
|
|
public var prop: Int { get set }
|
|
} // CHECK: {{^}$}}
|
|
|
|
// CHECK: public var readOnlyVar: Int { get }{{$}}
|
|
public var readOnlyVar: Int { get }
|
|
|
|
// CHECK: public var readWriteVar: Int{{$}}
|
|
public var readWriteVar: Int { get set }
|
|
|
|
// CHECK: public func verySimpleFunction(){{$}}
|
|
public func verySimpleFunction()
|