cleanup / tests
This commit is contained in:
parent
b6233a2a96
commit
f868e3e3f8
3 changed files with 72 additions and 54 deletions
|
|
@ -77,11 +77,11 @@ func TestJsEval(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
compareIgnoreSpaces(t, renderJs(t, EvalJsOnParent("element.style.display = 'none'")), `
|
compareIgnoreSpaces(t, renderJs(t, EvalJsOnParent("element.style.display = 'none'")), `
|
||||||
if(!self.parentElement) { return; } let element = self.parentElement; element.style.display = 'none'
|
if(self.parentElement) { let element = self.parentElement; element.style.display = 'none' }
|
||||||
`)
|
`)
|
||||||
|
|
||||||
compareIgnoreSpaces(t, renderJs(t, EvalJsOnSibling("button", "element.style.display = 'none'")), `
|
compareIgnoreSpaces(t, renderJs(t, EvalJsOnSibling("button", "element.style.display = 'none'")), `
|
||||||
if(!self.parentElement) { return; }let siblings = self.parentElement.querySelectorAll('button');siblings.forEach(function(element) {element.style.display = 'none'});
|
if(self.parentElement) { let siblings = self.parentElement.querySelectorAll('button');siblings.forEach(function(element) {element.style.display = 'none'}); }
|
||||||
`)
|
`)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -147,13 +147,13 @@ func TestToggleClassOnElement(t *testing.T) {
|
||||||
|
|
||||||
func TestSetClassOnParent(t *testing.T) {
|
func TestSetClassOnParent(t *testing.T) {
|
||||||
compareIgnoreSpaces(t, renderJs(t, SetClassOnParent("active")), `
|
compareIgnoreSpaces(t, renderJs(t, SetClassOnParent("active")), `
|
||||||
if(!self.parentElement) { return; } let element = self.parentElement; element.classList.add('active')
|
if(self.parentElement) { let element = self.parentElement; element.classList.add('active') }
|
||||||
`)
|
`)
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestRemoveClassOnParent(t *testing.T) {
|
func TestRemoveClassOnParent(t *testing.T) {
|
||||||
compareIgnoreSpaces(t, renderJs(t, RemoveClassOnParent("active")), `
|
compareIgnoreSpaces(t, renderJs(t, RemoveClassOnParent("active")), `
|
||||||
if(!self.parentElement) { return; } let element = self.parentElement; element.classList.remove('active')
|
if(self.parentElement) { let element = self.parentElement; element.classList.remove('active') }
|
||||||
`)
|
`)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -176,20 +176,28 @@ func TestRemoveClassOnChildren(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestSetClassOnSibling(t *testing.T) {
|
func TestSetClassOnSibling(t *testing.T) {
|
||||||
compareIgnoreSpaces(t, renderJs(t, SetClassOnSibling("button", "selected")), `
|
compareIgnoreSpaces(t, renderJs(t, SetClassOnSibling("button", "selected")),
|
||||||
if(!self.parentElement) { return; }let siblings = self.parentElement.querySelectorAll('button');
|
// language=JavaScript
|
||||||
siblings.forEach(function(element) {
|
`
|
||||||
element.classList.add('selected')
|
if(self.parentElement) {
|
||||||
});
|
let siblings = self.parentElement.querySelectorAll('button');
|
||||||
|
siblings.forEach(function(element) {
|
||||||
|
element.classList.add('selected')
|
||||||
|
});
|
||||||
|
}
|
||||||
`)
|
`)
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestRemoveClassOnSibling(t *testing.T) {
|
func TestRemoveClassOnSibling(t *testing.T) {
|
||||||
compareIgnoreSpaces(t, renderJs(t, RemoveClassOnSibling("button", "selected")), `
|
compareIgnoreSpaces(t, renderJs(t, RemoveClassOnSibling("button", "selected")),
|
||||||
if(!self.parentElement) { return; }let siblings = self.parentElement.querySelectorAll('button');
|
// language=JavaScript
|
||||||
siblings.forEach(function(element) {
|
`
|
||||||
element.classList.remove('selected')
|
if(self.parentElement) {
|
||||||
});
|
let siblings = self.parentElement.querySelectorAll('button');
|
||||||
|
siblings.forEach(function(element) {
|
||||||
|
element.classList.remove('selected')
|
||||||
|
});
|
||||||
|
}
|
||||||
`)
|
`)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -259,14 +267,16 @@ func TestEvalCommands(t *testing.T) {
|
||||||
self = element;
|
self = element;
|
||||||
self.innerText = 'hello'
|
self.innerText = 'hello'
|
||||||
alert('test')
|
alert('test')
|
||||||
if(!self.parentElement) { return; }
|
if(self.parentElement) {
|
||||||
element = self.parentElement;
|
element = self.parentElement;
|
||||||
element.classList.add('myclass')
|
element.classList.add('myclass')
|
||||||
if(!self.parentElement) { return; }
|
}
|
||||||
let siblings = self.parentElement.querySelectorAll('div');
|
if(self.parentElement) {
|
||||||
siblings.forEach(function(element) {
|
let siblings = self.parentElement.querySelectorAll('div');
|
||||||
element.classList.add('myclass')
|
siblings.forEach(function(element) {
|
||||||
});
|
element.classList.add('myclass')
|
||||||
|
});
|
||||||
|
}
|
||||||
`, evalId))
|
`, evalId))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -288,15 +298,16 @@ func TestToggleTextOnSibling(t *testing.T) {
|
||||||
result := Render(ToggleTextOnSibling("div", "hello", "world"))
|
result := Render(ToggleTextOnSibling("div", "hello", "world"))
|
||||||
//language=JavaScript
|
//language=JavaScript
|
||||||
compareIgnoreSpaces(t, result, fmt.Sprintf(`
|
compareIgnoreSpaces(t, result, fmt.Sprintf(`
|
||||||
if(!self.parentElement) { return; }
|
if(self.parentElement) {
|
||||||
let siblings = self.parentElement.querySelectorAll('div');
|
let siblings = self.parentElement.querySelectorAll('div');
|
||||||
siblings.forEach(function(element){
|
siblings.forEach(function(element){
|
||||||
if(element.innerText === "hello"){
|
if(element.innerText === "hello"){
|
||||||
element.innerText= "world";
|
element.innerText= "world";
|
||||||
} else {
|
} else {
|
||||||
element.innerText= "hello";
|
element.innerText= "hello";
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
}
|
||||||
`))
|
`))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -321,14 +332,15 @@ func TestToggleTextOnParent(t *testing.T) {
|
||||||
result := Render(ToggleTextOnParent("hello", "world"))
|
result := Render(ToggleTextOnParent("hello", "world"))
|
||||||
//language=JavaScript
|
//language=JavaScript
|
||||||
compareIgnoreSpaces(t, result, fmt.Sprintf(`
|
compareIgnoreSpaces(t, result, fmt.Sprintf(`
|
||||||
if(!self.parentElement) { return; }
|
if(self.parentElement) {
|
||||||
let element = self.parentElement;
|
let element = self.parentElement;
|
||||||
|
|
||||||
if(element.innerText === "hello") {
|
if(element.innerText === "hello") {
|
||||||
element.innerText = "world";
|
element.innerText = "world";
|
||||||
} else {
|
} else {
|
||||||
element.innerText = "hello";
|
element.innerText = "hello";
|
||||||
}
|
}
|
||||||
|
}
|
||||||
`))
|
`))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -349,9 +361,10 @@ func TestToggleClassOnParent(t *testing.T) {
|
||||||
result := Render(ToggleClassOnParent("hidden"))
|
result := Render(ToggleClassOnParent("hidden"))
|
||||||
//language=JavaScript
|
//language=JavaScript
|
||||||
compareIgnoreSpaces(t, result, fmt.Sprintf(`
|
compareIgnoreSpaces(t, result, fmt.Sprintf(`
|
||||||
if(!self.parentElement) { return; }
|
if(self.parentElement) {
|
||||||
let element = self.parentElement;
|
let element = self.parentElement;
|
||||||
element.classList.toggle('hidden')
|
element.classList.toggle('hidden')
|
||||||
|
}
|
||||||
`))
|
`))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -360,10 +373,11 @@ func TestToggleClassOnSibling(t *testing.T) {
|
||||||
result := Render(ToggleClassOnSibling("div", "hidden"))
|
result := Render(ToggleClassOnSibling("div", "hidden"))
|
||||||
//language=JavaScript
|
//language=JavaScript
|
||||||
compareIgnoreSpaces(t, result, fmt.Sprintf(`
|
compareIgnoreSpaces(t, result, fmt.Sprintf(`
|
||||||
if(!self.parentElement) { return; }
|
if(self.parentElement) {
|
||||||
let siblings = self.parentElement.querySelectorAll('div');
|
let siblings = self.parentElement.querySelectorAll('div');
|
||||||
siblings.forEach(function(element) {
|
siblings.forEach(function(element) {
|
||||||
element.classList.toggle('hidden')
|
element.classList.toggle('hidden')
|
||||||
});
|
});
|
||||||
|
}
|
||||||
`))
|
`))
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -296,9 +296,10 @@ func ToggleClassOnElement(selector, class string) ComplexJsCommand {
|
||||||
func EvalJsOnParent(js string) ComplexJsCommand {
|
func EvalJsOnParent(js string) ComplexJsCommand {
|
||||||
// language=JavaScript
|
// language=JavaScript
|
||||||
return EvalJs(fmt.Sprintf(`
|
return EvalJs(fmt.Sprintf(`
|
||||||
if(!self.parentElement) { return; }
|
if(self.parentElement) {
|
||||||
let element = self.parentElement;
|
let element = self.parentElement;
|
||||||
%s
|
%s
|
||||||
|
}
|
||||||
`, js))
|
`, js))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -317,11 +318,12 @@ func EvalJsOnChildren(selector, js string) ComplexJsCommand {
|
||||||
func EvalJsOnSibling(selector, js string) ComplexJsCommand {
|
func EvalJsOnSibling(selector, js string) ComplexJsCommand {
|
||||||
// language=JavaScript
|
// language=JavaScript
|
||||||
return EvalJs(fmt.Sprintf(`
|
return EvalJs(fmt.Sprintf(`
|
||||||
if(!self.parentElement) { return; }
|
if(self.parentElement) {
|
||||||
let siblings = self.parentElement.querySelectorAll('%s');
|
let siblings = self.parentElement.querySelectorAll('%s');
|
||||||
siblings.forEach(function(element) {
|
siblings.forEach(function(element) {
|
||||||
%s
|
%s
|
||||||
});
|
});
|
||||||
|
}
|
||||||
`, selector, js))
|
`, selector, js))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,8 @@ var Alert = h.Alert
|
||||||
var SetClassOnChildren = h.SetClassOnChildren
|
var SetClassOnChildren = h.SetClassOnChildren
|
||||||
var ToggleClassOnChildren = h.ToggleClassOnChildren
|
var ToggleClassOnChildren = h.ToggleClassOnChildren
|
||||||
var ToggleClassOnParent = h.ToggleClassOnParent
|
var ToggleClassOnParent = h.ToggleClassOnParent
|
||||||
|
var SetClassOnParent = h.SetClassOnParent
|
||||||
|
var RemoveClassOnParent = h.RemoveClassOnParent
|
||||||
var ToggleClassOnSibling = h.ToggleClassOnSibling
|
var ToggleClassOnSibling = h.ToggleClassOnSibling
|
||||||
var RemoveClassOnChildren = h.RemoveClassOnChildren
|
var RemoveClassOnChildren = h.RemoveClassOnChildren
|
||||||
var EvalJsOnChildren = h.EvalJsOnChildren
|
var EvalJsOnChildren = h.EvalJsOnChildren
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue