Reverse Zen Coding

Sto scrivendo una suite di test di unità javascript e una delle funzionalità che vorrei aggiungere è la possibilità di affermare che un determinato elemento e i suoi figli corrispondono a una determinata struttura HTML.

La mia prima idea è usare jQuery (beh, Sizzle) e chiedere agli utenti di scrivere dichiarazioni Zen Code per fare affermazioni. La mia prima domanda è “È già stato fatto? Posso rubarlo?” . In caso contrario, c’è una specifica stampata ovunque per come analizzare un’istruzione Zen Code? Ci sono delle scorciatoie che potrei fare, visto il potere di Sizzle?

Penso che tu possa arrivare lì con sizzle + http://api.jquery.com/size/

La query di esempio zen code è “div # page> div.logo + ul # navigation> li * 5> a”. Provare se una pagina ha la stessa struttura in jQuery sarebbe facile come $ (“div # page> div.logo + ul # navigation> li> a”). Size () == 5.

A meno che i tuoi utenti non abbiano già familiarità con il codice zen, i test con un’Api come assertSelects (selector, number_of_returned_items) dovrebbero essere più accoglienti.