Runtime-deprecate ospec, change change-log to changelog, fix a few assorted bugs (#2578)

This commit is contained in:
Isiah Meadows 2020-09-29 13:27:07 -07:00 committed by GitHub
parent 1630b06106
commit 9f0dc2ab46
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
76 changed files with 484 additions and 410 deletions

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var components = require("../../test-utils/components")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,18 +1,18 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")
o.spec("event", function() {
var $window, root, redraw, render
var $window, root, redraw, render, reallyRender
o.beforeEach(function() {
$window = domMock()
root = $window.document.body
redraw = o.spy()
var renderer = vdom($window)
reallyRender = vdom($window)
render = function(dom, vnode) {
return renderer(dom, vnode, redraw)
return reallyRender(dom, vnode, redraw)
}
})
@ -355,4 +355,32 @@ o.spec("event", function() {
o(redraw.this).equals(undefined)
o(redraw.args.length).equals(0)
})
o("handles changed spy", function() {
var div1 = {tag: "div", attrs: {ontransitionend: function() {}}}
reallyRender(root, [div1], redraw)
var e = $window.document.createEvent("HTMLEvents")
e.initEvent("transitionend", true, true)
div1.dom.dispatchEvent(e)
o(redraw.callCount).equals(1)
o(redraw.this).equals(undefined)
o(redraw.args.length).equals(0)
var replacementRedraw = o.spy()
var div2 = {tag: "div", attrs: {ontransitionend: function() {}}}
reallyRender(root, [div2], replacementRedraw)
var e = $window.document.createEvent("HTMLEvents")
e.initEvent("transitionend", true, true)
div2.dom.dispatchEvent(e)
o(redraw.callCount).equals(1)
o(redraw.this).equals(undefined)
o(redraw.args.length).equals(0)
o(replacementRedraw.callCount).equals(1)
o(replacementRedraw.this).equals(undefined)
o(replacementRedraw.args.length).equals(0)
})
})

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var fragment = require("../../render/fragment")
var m = require("../../render/hyperscript")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var m = require("../../render/hyperscript")
o.spec("hyperscript", function() {

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")
@ -86,6 +86,89 @@ o.spec("form inputs", function() {
o(updated.dom.checked).equals(true)
})
o("syncs file input value attribute if DOM value differs from vdom value and is empty", function() {
var input = {tag: "input", attrs: {type: "file", value: "", onclick: function() {}}}
var updated = {tag: "input", attrs: {type: "file", value: "", onclick: function() {}}}
var spy = o.spy()
var error = console.error
render(root, [input])
input.dom.value = "test.png"
try {
console.error = spy
render(root, [updated])
} finally {
console.error = error
}
o(updated.dom.value).equals("")
o(spy.callCount).equals(0)
})
o("warns and ignores file input value attribute if DOM value differs from vdom value and is non-empty", function() {
var input = {tag: "input", attrs: {type: "file", value: "", onclick: function() {}}}
var updated = {tag: "input", attrs: {type: "file", value: "other.png", onclick: function() {}}}
var spy = o.spy()
var error = console.error
render(root, [input])
input.dom.value = "test.png"
try {
console.error = spy
render(root, [updated])
} finally {
console.error = error
}
o(updated.dom.value).equals("test.png")
o(spy.callCount).equals(1)
})
o("retains file input value attribute if DOM value is the same as vdom value and is non-empty", function() {
var $window = domMock(o)
var render = vdom($window)
var root = $window.document.createElement("div")
$window.document.body.appendChild(root)
var input = {tag: "input", attrs: {type: "file", value: "", onclick: function() {}}}
var updated1 = {tag: "input", attrs: {type: "file", value: "test.png", onclick: function() {}}}
var updated2 = {tag: "input", attrs: {type: "file", value: "test.png", onclick: function() {}}}
var spy = o.spy()
var error = console.error
render(root, [input])
// Verify our assumptions about the outer element state
o($window.__getSpies(input.dom).valueSetter.callCount).equals(0)
input.dom.value = "test.png"
o($window.__getSpies(input.dom).valueSetter.callCount).equals(1)
try {
console.error = spy
render(root, [updated1])
} finally {
console.error = error
}
o(updated1.dom.value).equals("test.png")
o(spy.callCount).equals(0)
o($window.__getSpies(updated1.dom).valueSetter.callCount).equals(1)
try {
console.error = spy
render(root, [updated2])
} finally {
console.error = error
}
o(updated2.dom.value).equals("test.png")
o(spy.callCount).equals(0)
o($window.__getSpies(updated2.dom).valueSetter.callCount).equals(1)
})
})
o.spec("select", function() {

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var Vnode = require("../../render/vnode")
o.spec("normalize", function() {

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var Vnode = require("../../render/vnode")
o.spec("normalizeChildren", function() {

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var m = require("../../render/hyperscript")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var callAsync = require("../../test-utils/callAsync")
var components = require("../../test-utils/components")
var domMock = require("../../test-utils/domMock")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var components = require("../../test-utils/components")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var components = require("../../test-utils/components")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var m = require("../../render/hyperscript")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var trust = require("../../render/trust")
o.spec("trust", function() {

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var components = require("../../test-utils/components")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")

View file

@ -1,6 +1,6 @@
"use strict"
var o = require("../../ospec/ospec")
var o = require("ospec")
var domMock = require("../../test-utils/domMock")
var vdom = require("../../render/render")