2012-04-07 10 views
6

Deseo seleccionar el valor de la lista de selección en RSpec. Por ejemplo, tengo estos datos:Rails 3 y rspec - seleccionar de la lista de selección

<div class="control-group"> 
<label class="control-label" for="user_teacher_leader_attributes_teacher_id">Teacher names</label> 
    <div class="controls"> 
    <select id="user_teacher_leader_attributes_teacher_id" name="user[teacher_leader_attributes][teacher_id]"> 
    <option value="1" selected="selected">Math teacher</option> 
    <option value="2">Physics teacher</option>  
    </div> 
</div> 

deseo seleccionar la opción Physics teacher través RSpec. ¿Cómo puedo hacer eso? Además, ¿puedo elegir algo de la lista por valor (por ejemplo, seleccione Physics teacher con el valor "2" que tiene)?

+0

Es necesario 'matcher have_selector' – MikDiet

+0

@Mik_Die Por qué debería usar para seleccionar la opción de coincidencias? ¿Estás seguro? – ExiRe

Respuesta

17

Encontré la solución. Debe utilizar seleccione método:

select "Physics teacher", :from => "teacher_leader[teacher_id]" 
+0

¿Hay alguna manera de hacer que esto funcione con 'select' que tiene una opción dos veces? (por ejemplo, "Estados Unidos" está dos veces en mi país; seleccione tener algunos "países prioritarios" para una mejor UX) – yas4891

+1

Esto no responde la pregunta. Lo cual apesta porque tenía la misma pregunta. ¿Cómo seleccionar por 'valor' no opción' texto'? – taystack

Cuestiones relacionadas