mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
Replace the process_fine_grained_swiftdeps.sh with a python equivalent (which also preserves the horrendous handling of YAML and even "faithfully" replicates the horrible global variables). This enables a number of tests on Windows although the instigating macro test is not yet enabled due to the need for further tweaks to the tests.
26 lines
1.4 KiB
Swift
26 lines
1.4 KiB
Swift
// This test verifies that copies of dependency files are preserved after a
|
|
// compilation. For example, if the first compilation produces 'foo.swiftdeps',
|
|
// a second compilation should move 'foo.swiftdeps' to 'foo.swiftdeps~', then
|
|
// overwrite 'foo.swiftdeps' with new dependency information.
|
|
|
|
// RUN: %empty-directory(%t)
|
|
|
|
// First, produce the dependency files and verify their contents.
|
|
// RUN: %target-swift-frontend -emit-reference-dependencies-path %t.swiftdeps -typecheck -primary-file "%S/../Inputs/empty file.swift"
|
|
// RUN: %{python} %S/../Inputs/process_fine_grained_swiftdeps.py %swift-dependency-tool %t.swiftdeps > %t-processed.swiftdeps
|
|
// RUN: %FileCheck -check-prefix=CHECK %s < %t-processed.swiftdeps
|
|
|
|
// CHECK-NOT: topLevel{{.*}}EmptyStruct{{.*}}true
|
|
|
|
// Next, produce the dependency files again, but this time using a different
|
|
// Swift source file than before. .swiftdeps~ should contain the same content
|
|
// as before. .swiftdeps should contain content that matches the new source
|
|
// file.
|
|
// RUN: %target-swift-frontend -emit-reference-dependencies-path %t.swiftdeps -typecheck -primary-file %S/../Inputs/global_resilience.swift
|
|
// RUN: %FileCheck -check-prefix=CHECK %s < %t.swiftdeps~
|
|
// RUN: %{python} %S/../Inputs/process_fine_grained_swiftdeps.py %swift-dependency-tool %t.swiftdeps > %t-processed.swiftdeps
|
|
// RUN: %FileCheck -check-prefix=CHECK-OVERWRITTEN %s < %t-processed.swiftdeps
|
|
|
|
// CHECK-OVERWRITTEN:topLevel{{.*}}EmptyStruct{{.*}}true
|
|
|