2017-03-10 8 views
0

Ich habe Probleme beim Stubben von Daten mit dem AWS SDK für Ruby.AWS SDK für Ruby - Stub-Daten

Ich rufe admin_create_user an und möchte die Daten meiner Tests unterteilen.

Wenn ich etwas wie:

Aws::CognitoIdentityProvider::Client.new.stub_data(:admin_create_user) 

Es Stümpfe die Daten, aber der Benutzer hat keine Attribute. Ich möchte einige spezifische Attribute haben, also habe ich versucht zu tun:

Aws::CognitoIdentityProvider::Client.new.stub_data(:admin_create_user, user: { attributes: [{ name: 'sub', value: some_user_id }] }) 

Aber das scheint nicht zu funktionieren.

Wie stemple ich die Daten korrekt, um die gewünschten Informationen zu speichern?

Antwort

0

Nun, wie es führt, wenn Sie auf Ihrem rspec Tests stub_data wollen, müssen Sie wie folgt vor:

Aws.config = { 
    stub_responses: { 
    admin_create_user: { user: { attributes: [{ name: 'sub', value: some_user_id }] } } 
    } 
} 

Welche wird AWS-Konfiguration ändern global so wird es für die folgenden Anträge geändert werden auch wenn sie sich in verschiedenen Kontexten befinden.

+0

Ich würde empfehlen, Webmock https://github.com/bblimke/webmock verwenden, wenn Sie möchten, können Sie 'WebMock.disable_net_connect!' –