Merge pull request #1769 from pygy/fix-class-null
hyperscript: Revert attrs.class creation logic to what we had in v1.0.1. fix #1764
This commit is contained in:
commit
d60e7ab30c
4 changed files with 106 additions and 5 deletions
|
|
@ -34,8 +34,8 @@ function execSelector(state, attrs, children) {
|
|||
}
|
||||
}
|
||||
|
||||
if (className != null) {
|
||||
if (attrs.class != null) {
|
||||
if (className !== undefined) {
|
||||
if (attrs.class !== undefined) {
|
||||
attrs.class = undefined
|
||||
attrs.className = className
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<script src="../../ospec/ospec.js"></script>
|
||||
<script src="../../test-utils/callAsync.js"></script>
|
||||
<script src="../../test-utils/domMock.js"></script>
|
||||
<script src="../../test-utils/component.js"></script>
|
||||
<script src="../../test-utils/components.js"></script>
|
||||
|
||||
<script src="../../render/vnode.js"></script>
|
||||
<script src="../../render/trust.js"></script>
|
||||
|
|
|
|||
|
|
@ -16,6 +16,108 @@ o.spec("hyperscript", function() {
|
|||
|
||||
o(vnode.tag).equals("a")
|
||||
})
|
||||
o("v1.0.1 bug-for-bug regression suite", function(){
|
||||
o
|
||||
console.log(m('a', {
|
||||
class: null
|
||||
}).attrs, {
|
||||
class: undefined,
|
||||
className: null
|
||||
})
|
||||
o(m('a', {
|
||||
class: null
|
||||
}).attrs).deepEquals({
|
||||
class: undefined,
|
||||
className: null
|
||||
})
|
||||
o(m('a', {
|
||||
class: undefined
|
||||
}).attrs).deepEquals({
|
||||
class: undefined,
|
||||
})
|
||||
o(m('a', {
|
||||
class: false
|
||||
}).attrs).deepEquals({
|
||||
class: undefined,
|
||||
className: false
|
||||
})
|
||||
o(m('a', {
|
||||
class: true
|
||||
}).attrs).deepEquals({
|
||||
class: undefined,
|
||||
className: true
|
||||
})
|
||||
console.log(m('a.x', {
|
||||
class: null
|
||||
}).attrs, {
|
||||
class: undefined,
|
||||
className: "x null"
|
||||
})
|
||||
o(m('a.x', {
|
||||
class: null
|
||||
}).attrs).deepEquals({
|
||||
class: undefined,
|
||||
className: "x null"
|
||||
})
|
||||
o(m('a.x', {
|
||||
class: undefined
|
||||
}).attrs).deepEquals({
|
||||
class: undefined,
|
||||
className: "x"
|
||||
})
|
||||
o(m('a.x', {
|
||||
class: false
|
||||
}).attrs).deepEquals({
|
||||
class: undefined,
|
||||
className: "x false"
|
||||
})
|
||||
o(m('a.x', {
|
||||
class: true
|
||||
}).attrs).deepEquals({
|
||||
class: undefined,
|
||||
className: "x true"
|
||||
})
|
||||
o(m('a', {
|
||||
className: null
|
||||
}).attrs).deepEquals({
|
||||
className: null
|
||||
})
|
||||
o(m('a', {
|
||||
className: undefined
|
||||
}).attrs).deepEquals({
|
||||
className: undefined
|
||||
})
|
||||
o(m('a', {
|
||||
className: false
|
||||
}).attrs).deepEquals({
|
||||
className: false
|
||||
})
|
||||
o(m('a', {
|
||||
className: true
|
||||
}).attrs).deepEquals({
|
||||
className: true
|
||||
})
|
||||
o(m('a.x', {
|
||||
className: null
|
||||
}).attrs).deepEquals({
|
||||
className: "x"
|
||||
})
|
||||
o(m('a.x', {
|
||||
className: undefined
|
||||
}).attrs).deepEquals({
|
||||
className: "x"
|
||||
})
|
||||
o(m('a.x', {
|
||||
className: false
|
||||
}).attrs).deepEquals({
|
||||
className: "x"
|
||||
})
|
||||
o(m('a.x', {
|
||||
className: true
|
||||
}).attrs).deepEquals({
|
||||
className: "x true"
|
||||
})
|
||||
})
|
||||
o("handles class in selector", function() {
|
||||
var vnode = m(".a")
|
||||
|
||||
|
|
|
|||
|
|
@ -199,9 +199,8 @@ o.spec("onbeforeremove", function() {
|
|||
render(root, [{tag: component}])
|
||||
render(root, [])
|
||||
|
||||
o(onremove.callCount).equals(0)
|
||||
callAsync(function(){
|
||||
o(onremove.callCount).equals(0)
|
||||
|
||||
callAsync(function() {
|
||||
o(onremove.callCount).equals(1)
|
||||
done()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue