Testando se certos elementos são visíveis ou não
Como faço para descobrir se um elemento é visível ou oculto no testacular (jasmine)?
Meu DOM parece:
<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>
A seleção é mostrada ou a caixa de entrada, mas não ambas. Desejo verificar qual elemento é visível (com base em alguns outros critérios), mas não consigo descobrir como fazer o código funcionar. Eu escrevi o seguinte código:
expect(element('.value-entry input').is(':visible')).toBe(true);
Mas eu recebo um erro:
TypeError: Object #<Object> has no method 'is'
Como posso verificar se a entrada está visível e a seleção está oculta ao mesmo tempo (e vice-versa)?
EDITAR: Gostaria de acrescentar aqui que este é um fim para o teste final