CMUI / gearbox

Lightweight JavaScript utilities for web development, based on `_` and `$`.
MIT License
16 stars 2 forks source link

将单元测试代码适配到 IE8 + jQuery 环境 #17

Closed lyt9304 closed 8 years ago

lyt9304 commented 8 years ago

具体的总结和分析请参照: #18

还存在的一些问题

  1. 依赖处理
    • action的代码还没有更新到bower中
    • jquery需要1.x的版本,这个需要action的bower.json中能够去规定一下,不然没有办法兼容IE8
    • expect.js由于重写了一部分的内容,是否还需要由bower来管理依赖呢,暂时将重写过的expect.js先放在了test文件夹下
    • 移除对于chai的依赖
  2. url部分是不是有更好的写法

    由于每次_startSandboxTest注册的handler函数其实是一样的,由于需要done和expectedResult的闭包引用,所以没有复用,感觉代码相对来说看起来比较冗余,不知道有没有什么更好的方法可以复用地去使用handler

cssmagic commented 8 years ago

action的代码还没有更新到bower中

昨天把最新的 Action 源码合进来了,这个 PR 需要做什么处理吗?

lyt9304 commented 8 years ago

额,我刚刚去看了一下,似乎action的依赖jquery没有指定是1.x,这样安装最新的2.x在IE8下不能运行。另外chai的依赖可以从bower中移除?

cssmagic commented 8 years ago

似乎action的依赖jquery没有指定是1.x,这样安装最新的2.x在IE8下不能运行。

不论是 Action 还是 Gearbox,都是不应该限制 jQuery 版本的。但我们在本地可以指定安装低版本,以便实现测试 IE8 的目的。

bower install jquery#1.x

另外chai的依赖可以从bower中移除?

应该移除。

expect.js由于重写了一部分的内容,是否还需要由bower来管理依赖呢

最好是由 Bower 来管理。除非你对 expect.js 的修改必须侵入源码。

lyt9304 commented 8 years ago

由于expect.js没有实现deepEqual,所以要自己加方法,判断过程中还牵扯到内部的很多函数,所以如果要分离出来好像不是很容易