Come faccio a sapere se un elemento è visibile o nascosto in testacular (gelsomino)?Verifica se alcuni elementi sono visibili o meno
mio DOM assomiglia:
<div class="span5 value-entry">
<input type="text" ng-model="query.value" placeholder="Enter value" class="input-large" ng-show="genericInput(criteria.attribute)">
<select ng-model="query.value" ng-options="entry for entry in filteredValue(criteria.attribute)" class="input-medium" ng-show="!genericInput(criteria.attribute)">
<option value="">-- Select Value --</option>.
</select>
</div>
O il Select è mostrato o la casella di input, ma non entrambi. Vorrei verificare quale elemento è visibile (in base ad altri criteri), ma non riesco a capire come far funzionare il codice. Ho scritto il seguente codice:
expect(element('.value-entry input').is(':visible')).toBe(true);
ma ottengo un errore:
TypeError: Object #<Object> has no method 'is'
Come posso verificare se l'ingresso è visibile e di selezione è nascosto allo stesso tempo (e viceversa) ?
EDIT: Vorrei aggiungere che si tratta di un capo all'altro di prova
Vedi anche questa domanda: http://stackoverflow.com/questions/16703276/angular-watch- for-ngshow-nghide-changes-in-ancestors-that-affect-child-dom-ele per una soluzione che considera anche la visibilità degli antenati – lanoxx