首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在fakexrmeasy单元测试中重新计算Dynamics 365货币字段基础货币

在fakexrmeasy单元测试中重新计算Dynamics 365货币字段基础货币
EN

Stack Overflow用户
提问于 2020-02-19 22:51:41
回答 1查看 56关注 0票数 1

我是Dynamics 365的新手,最近开始使用伪XRM测试我的代码。

我刚刚遇到了一个与计算货币(货币)字段有关的问题,正在为其创建额外的字段(其名称以‘_Base’结尾)。在单元测试中,不会重新计算货币字段的基数。

场景是:-被测代码在"Account“实体上设置"Money”类型的“营业额”字段。--稍后对“周转”基础货币部分进行汇总。(汇总前在上下文中刷新账号)

代码语言:javascript
复制
localAccount.turnover = new Money(100);

...

var sumOfTurnovers = localAccounts.Sum(s => s.turnover_Base?.Value ?? 0); // <-- returns 0 in unit tests

结果:成交量的总和被计算为0,而在真实的开发环境中,它被正确计算。

通常情况下,被测代码依赖于重新计算的值。

如何在单元测试中模拟这些基础货币字段的重新计算?

EN

回答 1

Stack Overflow用户

发布于 2020-09-24 04:40:22

FakeXrmEasy不会模拟此行为。可能是因为它取决于环境--什么是基础货币,什么是汇率。

根据您试图实现的目标,您需要在安排上下文时预先计算基础货币字段。就像这样

代码语言:javascript
复制
SetMoneyField(string fieldName, decimal amount, decimal exchangeRate) {
  SetAttributeValue(fieldName, amount);
  SetAttributeValue(fieldName+"_base", amount*exchangeRate);
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60303012

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档