【发布时间】:2014-04-28 08:38:25
【问题描述】:
在某些单元测试中,我想重构一些重复的代码块。
所以我选择了一段代码,例如下面的代码:
var timer = Substitute.For<ITimer>();
var alertSender = Substitute.For<IAlertSender>();
var alert = new Alert(NotificationType.Clear, new AlertConfiguration("test", 1, new List<string>()), timer, alertSender);
不幸的是,当 resharper 确实为我创建了该方法时,它没有检测到相同的代码块并为我重构它。 有什么办法可以解决这个问题吗?
【问题讨论】:
-
这是完全相同的代码块。
-
我认为 ReSharper 没那么聪明。您必须了解每个工具都有其自身的局限性。
-
@LexLi 这只是在 AST 上进行模式匹配的问题。一些 smalltalk 工具有这个功能很长时间了。
-
功能的难易程度并不是产品经理用来说明何时应将其包含在产品中的唯一衡量标准。显然,ReSharper 有许多其他功能需要实现,而不是将其留给外部插件。
标签: c# visual-studio-2012 resharper