当前位置:  开发笔记 > Android > 正文

如何从fileincludes创建连接字符串

如何解决《如何从fileincludes创建连接字符串》经验,为你挑选了1个好方法。

我使用FAKE作为构建工具,但我必须承认我是一个相当新的F#函数式编程

为了运行我的测试,我使用以下代码:

trace "BuildTests..."
!! "Tests/**.Tests/*.csproj"
|> Seq.iter (fun p -> 
  [p]
  |> MSBuildDebug (testDir @@ Path.GetFileNameWithoutExtension(p)) "Build"
  |> Log "TestBuild-Output: "
)

trace "RunTests..."
!! (testDir + "**/*.Tests.dll") 
  |> MSTest (fun p -> 
    { p with 
        TestSettingsPath = testSettingsPath
        ResultsDir = artifactsDir
        ErrorLevel = ErrorLevel.DontFailBuild })

但现在我想用OpenCover而不是MSTest来运行我的测试.基本上,对OpenCover的调用是

OpenCover (fun p -> 
    { p with 
        Output=(artifactsDir + "output.xml")
        OptionalArguments = "-excludebyfile:*Designer.* -returntargetcode" })
        "/testcontainer:Path.To.First.Test.dll /testcontainer:Path.To.Second.Test.dll"

所以我的问题是如何将FileInclude结果转换!! (testDir + "**/*.Tests.dll")为组合字符串

/testcontainer:file1.dll /testcontainer:file2.dll /testcontainer:file3.dll

所以我可以将它与OpenCover Task一起使用



1> Functional_S..:

与你的相似

!! "Tests/**.Tests/*.csproj"
|> Seq.iter (fun p ->

将Seqeuence转换为数组并连接它.

!! (testDir + "**/*.Tests.dll") 
|> Seq.toArray 
|> String.concat " "


需要注意的关键是fileincludes实现了IEnumerable,所以你可以在它上面使用seq函数.只是想引起注意.
推荐阅读
勤奋的瞌睡猪_715
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有