将私有标头从 Pod 导入到测试目标

Zev*_*erg 5 testing cocoapods xctest

我有一个使用 CocoaPods 分发的 Objective-C 项目,示例项目配置了 Podfile,以便它可以通过 CocoaPods 测试库的安装。这是 podspec 的相关部分:

s.default_subspec = 'Core'

s.subspec 'Core' do |sp|
    sp.source_files = 'Pod', 'Pod/Classes/**/*'
    sp.private_header_files = "Pod/Classes/Private/*.h"
end
Run Code Online (Sandbox Code Playgroud)

请注意,我隐藏了一些文件,Pod/Classes/Private因为我不想将它们公开为公共 API。

我的示例项目中有一个测试目标,我想将文件导入Pod/Classes/Private到我的测试中,这样我就可以测试它们。

我怎样才能做到这一点?我是否必须添加一个Testing子规范,并希望没有人使用它?如果我尝试#import "SomePrivateHeader.h"在测试目标中执行此操作,则会收到一个简单的“找不到文件”错误。

注意:我并不是想隐藏敏感信息。只是试图保护用户免受实施细节的影响。