我正在使用 AngularJS 开发一个简单的指令,为任何链接添加平滑的滚动效果。
我在这里发布了我的工作:https ://github.com/arnaudbreton/angular-smoothscroll
一切都在真实的环境中工作,但我不知道如何正确地对其进行单元测试。我写了一个无法通过的测试,因为$window.pageYOffset
没有按预期增加。
谢谢你的帮助!
我提出了一个拉取请求,使您的测试运行。https://github.com/bennyjo/angular-smoothscroll/commit/e660a8e1a4497907a9c74d9e359f2bbfa0b8326c
基本上问题是没有可以滚动窗口的空间。因此,无法滚动并且测试正确失败。我在 body 元素上添加了一些高度以使窗口可滚动。
$('body').height(window.innerHeight*2).append @target
我也确实在每次测试之前重置了滚动位置。如果我们不这样做,第二个测试将失败。
window.scrollTo(0, 0);