posts - 932,  comments - 588,  views - 402万
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

    Foq是一个轻量级-线程安全的mocking类库。使用它来mock抽象类与接口这是我们通常的做法。Foq的名字来自Moq,如果你使用过Moq的话,自然后联想到它能做什么。Foq主要是为了F#的开发人员做单元测试。可以与FsUnit一起使用编写一些Fluent的断言。甚至与AutoFixture一起简化单元测试的设置。
foq

让我们来看一些简单的代码片段:

// Moq from C#
var mock = new Mock<ILoveThisFramework>();
mock.Setup(framework => framework.DownloadExists("2.0.0.0"))
   .Returns(true);
ILoveThisFramework lovable = mock.Object;
 
 
// Foq from F#
let lovable = 
   Mock<ILoveThisFramework>()
      .Setup(fun framework -> <@ framework.DownloadExists("2.0.0.0") @>)
      .Returns(true)
      .Create()

 

在CodePlex的官方也提供了一些DEMO参考:

  • Greeting
  • Tea
  • Candy Shop
  • Driver
  • Car insurance
  • Turtle

     

    你还可以到它的官方去看看。

     

    你可能感兴趣的文章:
    Durandal介绍
    CompositeC1 4 发布

     

    希望对您软件开发有帮助。


    作者:Petter Liu
    出处:http://www.cnblogs.com/wintersun/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
    该文章也同时发布在我的独立博客中-Petter Liu Blog

  • posted on   PetterLiu  阅读(824)  评论(0编辑  收藏  举报
    编辑推荐:
    · 探究高空视频全景AR技术的实现原理
    · 理解Rust引用及其生命周期标识(上)
    · 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
    · 没有源码,如何修改代码逻辑?
    · 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
    阅读排行:
    · Blazor Hybrid适配到HarmonyOS系统
    · Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
    · 分享4款.NET开源、免费、实用的商城系统
    · 解决跨域问题的这6种方案,真香!
    · 一套基于 Material Design 规范实现的 Blazor 和 Razor 通用组件库
    历史上的今天:
    2012-03-31 实用T-SQL之生成当前索引数据库中的外键上
    点击右上角即可分享
    微信分享提示