Problems testing method with rSpec

I have this code in my rSpec file:

describe Alineado, "cambiar_por" do   include AlineadoSpecHelper

  describe "Con el partido en juego y con cambios disponibles" do     before(:each) do       @partido = mock_model(Partido, {           :cambios_local => 3,           :cambios_visitante => 3,           :en_juego? => true,           :minuto? => 40,           :local => :equipo_local,           :visitante => :equipo_visitante         })       @jugador_sustituido = Alineado.new(atributos_validos(@partido,           :jugador_sustituido, :equipo_local))       @jugador_entrante = Alineado.new(atributos_validos(@partido,           :jugador_entrante, :equipo_local))       @cambios_antes = @partido.cambios_local       @jugador_sustituido.cambiar_por(@jugador_entrante)     end

    it "debe de dejar en el banquillo al jugador sustituido" do       @jugador_sustituido.should be_banquillo     end

    it "no debe dejar al jugador entrante en el banquillo" do       @jugador_entrante.should_not be_banquillo     end

    it "debe decrementar en uno el número de cambios disponibles" do       @partido.cambios_local.should eql(@cambios_antes - 1)     end   end end

And this code in my model file:

def cambiar_por(jugador_entrante)     salida = self.partido.minuto?     jugador_entrante.entrada = self.partido.minuto?

    if club_id == self.partido.local       self.partido.cambios_local = self.partido.cambios_local - 1     else       self.partido.cambios_visitante = self.partido.cambios_visitante - 1     end end

And rSpec give me this errors:

1) Spec::Mocks::MockExpectationError in 'Alineado cambiar_por Con el partido en juego y con cambios disponibles debe decrementar en uno el número de cambios disponibles' Mock 'Partido_1001' received unexpected message :cambios_visitante= with (2) /home/carlos/NetBeansProjects/ofs/app/models/alineado.rb:47:in `cambiar_por' spec/models/alineado_spec.rb:202: spec/models/alineado_spec.rb:184:

2) Spec::Mocks::MockExpectationError in 'Alineado cambiar_por Con el partido en juego y con cambios disponibles no debe dejar al jugador entrante en el banquillo' Mock 'Partido_1002' received unexpected message :cambios_visitante= with (2) /home/carlos/NetBeansProjects/ofs/app/models/alineado.rb:47:in `cambiar_por' spec/models/alineado_spec.rb:202: spec/models/alineado_spec.rb:184:

3) Spec::Mocks::MockExpectationError in 'Alineado cambiar_por Con el partido en juego y con cambios disponibles debe de dejar en el banquillo al jugador sustituido' Mock 'Partido_1003' received unexpected message :cambios_visitante= with (2) /home/carlos/NetBeansProjects/ofs/app/models/alineado.rb:47:in `cambiar_por' spec/models/alineado_spec.rb:202: spec/models/alineado_spec.rb:184:

Somebody could help me?