Ich lerne Ruby/Rails und beginne damit, die Code-Basis meiner Arbeit zu verstehen und zu einem Test hinzuzufügen. Ich habe Probleme zu verstehen, wie ein gemeinsames Beispiel eingerichtet wird. In einem beschreibenden Block, der verschiedene Kontexte hat, möchte ich in einem Kontext arbeiten und zwei verschachtelte Kontexte darin einfügen, die eine Variable in ihrem äußeren Kontext ändern.Wie verschachtelt man Kontext in einem Kontext (bereits in einem anderen Kontext), um ein gemeinsames Beispiel in einem gemeinsamen Beispiel für einen RSpec-Test zu machen?
Im Code unter dem context 'and the attachment is a zipfile' do
der Kontext des Blocks beschreiben Ich möchte arbeiten. Ich möchte von zwei verschiedenen Kontexten für 'application/x-zip-compressed'
und 'application/octet-stream'
die Variable contentType
ändern.
Kann ich die zwei inner-inneren Kontexte einrichten, um die Variable contentType mit let(:contentType)
zu ändern, oder funktioniert das nicht, weil es ein Symbol ist, das ich als Konstante verstehe, das sich nicht ändern kann?
Ursprünglich hat dies nur die type
von "file1"
Hash auf "applicatoin/x-zip-compressed"
gesetzt. Ich erkunde eine Möglichkeit, ein gemeinsames Beispiel zu verwenden, mache den Typ zu einer Variablen, die ich je nach Kontext ändern kann.
ja, können Sie Setup-Variablen definiert let innerhalb verschiedener Kontext verschiedene Verhalten zu bekommen. –