我在enlive中找到了以下代码:
net.cgrand.enlive-html=> (source node-selector?)
(defn node-selector? [selector]
(not (fragment-selector? selector)))
Run Code Online (Sandbox Code Playgroud)
并考虑将其重构为以下代码:
(def node-selector? (complement fragment-selector?))
Run Code Online (Sandbox Code Playgroud)
如何验证重构的完整性,以便通过更改正确处理所有情况?
咳嗽测试咳嗽并努力思考.您必须确保参数和结果域没有改变(处理truthy值时要特别小心).在这种情况下,更改似乎是无害的但是你丢失了一些东西:doc不再记录arglist.另一个微妙的结果:当你重新定义片段选择器?,节点选择器?仍然指的是旧的片段选择器?