1
0
Fork 0
mirror of synced 2024-07-06 15:00:49 +12:00

isolated VM test cases.

This commit is contained in:
Michael Drury 2024-02-19 21:08:26 +00:00
parent c52b6aa0d1
commit 335228e878
2 changed files with 74 additions and 0 deletions

View file

@ -30,4 +30,57 @@ describe("Test isolated vm directly", () => {
})
expect(result).toBe("<p>dddd</p>\n")
})
it("handle a mapping case", async () => {
const context = {
data: {
data: {
searchProducts: {
results: [
{ imageLinks: ["_S/"] }
]
}
}
}
}
const result = await compare(`
const dataUnnested = data.data.searchProducts.results
const emptyLink = "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRRC3hpq0MXqXssA28Lm5NrzcOYAyr--q3xyg&usqp=CAU"
let pImage = emptyLink
let sImage = emptyLink
let uImage = emptyLink
let lImage = emptyLink
let b1Image = emptyLink
let b2Image = emptyLink
const dataTransformed = dataUnnested.map(x=> {
let imageLinks = x.imageLinks
for (let i = 0; i < imageLinks.length; i++){
if(imageLinks[i].includes("_P/") || imageLinks[i].includes("_p/")){
pImage = imageLinks[i]
} else if (imageLinks[i].includes("_S/") || imageLinks[i].includes("_s/")){
sImage = imageLinks[i]
} else if (imageLinks[i].includes("_U/") || imageLinks[i].includes("_u/")){
uImage = imageLinks[i]
} else if (imageLinks[i].includes("_L/") || imageLinks[i].includes("_l/")){
lImage = imageLinks[i]
} else if (imageLinks[i].includes("_B/") || imageLinks[i].includes("_b/")){
b1Image = imageLinks[i]
} else if (imageLinks[i].includes("_B2/") || imageLinks[i].includes("_b2/")){
b2Image = imageLinks[i]
}
}
const arrangedLinks = [pImage, sImage, uImage, lImage, b1Image, b2Image]
x.imageLinks = arrangedLinks
return x
})
return dataTransformed
`, context)
expect(result).toBeDefined()
expect(result.length).toBe(1)
expect(result[0].imageLinks.length).toBe(6)
})
})

View file

@ -144,5 +144,26 @@ describe("jsRunner (using isolated-vm)", () => {
expect(result).toBeDefined()
expect(result).toBe(3)
})
it("should handle test case 4", async () => {
const context = {
"Time Sheets": ["a", "b"]
}
const result = await processJS(`
let hours = 0
if (($("[Time Sheets]") != null) == true){
for (i = 0; i < $("[Time Sheets]").length; i++){
let hoursLogged = "Time Sheets." + i + ".Hours"
hours += $(hoursLogged)
}
return hours
}
if (($("[Time Sheets]") != null) == false){
return hours
}
`, context)
expect(result).toBeDefined()
expect(result).toBe("0ab")
})
})
})