Ich habe ein vorhandenes Stub-Objekt, das ich als Mitbearbeiter in meinen Tests verwende:
cf_client = Aws::CloudFormation::Client.new(:stub_responses => true)
stack = described_class.new("name", cf_client)
Das Stub-Objekt (cf_client
) war nicht erstellt mit rspec-mocks; es ist eine gefälschte Implementierung der aws-sdk
Edelstein und hat nützliche Eigenschaften.
Es wird jedoch keine Nachrichtenüberprüfung bereitgestellt, daher hoffe ich, einen Proxy einzuschließen, der die empfangenen Nachrichten aufzeichnet, damit ich sie später überprüfen kann, während ich weiterhin an das umschlossene Objekt delegiere, z.
cf_client = proxy_spy(Aws::CloudFormation::Client.new(:stub_responses => true))
stack = described_class.new("name", cf_client)
stack.create
expect(cf_client).to have_received(:create_stack)
Ich will / brauche das proxy_spy
Methode. Gibt es so etwas? Kann ich hier RSpecs überprüfende Proxys verwenden?
Antworten:
1 für die Antwort № 1Du schaust nach and_call_original
.
cf_client = Aws::CloudFormation::Client.new(:stub_responses => true)
expect(cf_client).to_receive(:create_stack).and_call_original
stack = described_class.new("name", cf_client)
stack.create