| <!DOCTYPE html> |
| <html lang="en"> |
| <head> |
| <meta charset="utf-8"> |
| <title>Why Update The VCR Fixtures</title> |
| <!-- Le HTML5 shim, for IE6-8 support of HTML elements --> |
| <!--[if lt IE 9]> |
| <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script> |
| <![endif]--> |
| |
| <!-- Le JavaScript --> |
| <script src="/assets/js/jquery-1.7.1.min.js" type="text/javascript"></script> |
| <script src="/assets/js/bootstrap-dropdown.js" type="text/javascript"></script> |
| <script src="/assets/js/jquery.tweet.js" type="text/javascript"></script> |
| <script src="/assets/js/application.js" type="text/javascript"></script> |
| <script src="/assets/js/bootstrap-transition.js"></script> |
| <script src="/assets/js/bootstrap-alert.js"></script> |
| <script src="/assets/js/bootstrap-modal.js"></script> |
| <script src="/assets/js/bootstrap-scrollspy.js"></script> |
| <script src="/assets/js/bootstrap-tab.js"></script> |
| <script src="/assets/js/bootstrap-tooltip.js"></script> |
| <script src="/assets/js/bootstrap-popover.js"></script> |
| <script src="/assets/js/bootstrap-button.js"></script> |
| <script src="/assets/js/bootstrap-collapse.js"></script> |
| <script src="/assets/js/bootstrap-carousel.js"></script> |
| <script src="/assets/js/bootstrap-typeahead.js"></script> |
| |
| <!-- Le styles --> |
| <link href="/assets/css/bootstrap.css" rel="stylesheet"> |
| <link href="/assets/css/application.css" rel="stylesheet"> |
| <link rel="shortcut icon" href="/assets/img/favicon.ico"> |
| </head> |
| |
| <body> |
| |
| <div class="navbar navbar-fixed-top"> |
| <div class="navbar-inner"> |
| <div class="container"> |
| <a class="brand" href="/"><img src="/assets/img/logo.png" width="152" |
| alt="Deltacloud API"/></a> |
| <ul class="nav top-nav"> |
| <li><a href="/">Home</a></li> |
| <li class="dropdown"> |
| <a href="#" class="dropdown-toggle" data-toggle="dropdown">About<b class="caret"></b></a> |
| <ul class="dropdown-menu"> |
| <li><a href="/about.html">What is Deltacloud?</a></li> |
| <li><a href="/drivers.html#drivers">Supported Providers</a></li> |
| </ul> |
| </li> |
| <li><a href="/download.html">Download</a></li> |
| <li class="dropdown"> |
| <a href="#" class="dropdown-toggle" data-toggle="dropdown">Installation<b class="caret"></b></a> |
| <ul class="dropdown-menu"> |
| <li><a href="/install-deltacloud.html">Install Deltacloud</a></li> |
| <li><a href="/run-deltacloud-server.html">Run the Deltacloud Server</a></li> |
| </ul> |
| </li> |
| <li class="dropdown"> |
| <a href="/usage.html" class="dropdown-toggle" data-toggle="dropdown">Usage<b class="caret"></b></a> |
| <ul class="dropdown-menu"> |
| <li><a href="/usage.html#usingapi">Using API</a></li> |
| <li><a href="/usage.html#clients">Client Libraries</a></li> |
| <li><a href="/command-tools.html">Command Line Tools</a></li> |
| </ul> |
| </li> |
| <li class="dropdown"> |
| <a href="#" class="dropdown-toggle" data-toggle="dropdown">Contribute<b class="caret"></b></a> |
| <ul class="dropdown-menu"> |
| <li><a href="/getting-sources.html">Getting Sources</a></li> |
| <li><a href="/how-to-contribute.html">How Can I Contribute?</a></li> |
| </ul> |
| </li> |
| <li class="dropdown"> |
| <a href="#" class="dropdown-toggle" data-toggle="dropdown">API<b class="caret"></b></a> |
| <ul class="dropdown-menu"> |
| <li><a href="/rest-api.html">Deltacloud REST API</a></li> |
| <li><a href="/curl-examples.html">Deltacloud API cURL examples</a></li> |
| <li><a href="/drivers.html">Drivers API</a></li> |
| </ul> |
| </li> |
| <li class="dropdown"> |
| <a href="#" class="dropdown-toggle" data-toggle="dropdown">CIMI<b class="caret"></b></a> |
| <ul class="dropdown-menu"> |
| <li><a href="/cimi-rest.html">CIMI REST API</a></li> |
| <li><a href="/cimi-curl.html">CIMI cURL Examples</a></li> |
| </ul> |
| </li> |
| <li><a href="/contact.html">Contact</a></li> |
| </ul> |
| |
| </div> |
| </div> |
| |
| </div> |
| |
| <div class="container content"> |
| |
| <p><br></p> |
| |
| <ul class="breadcrumb"> |
| <li> |
| <a href="white-box-tests.html">White Box Tests?</a> <span class="divider">/</span> |
| </li> |
| <li class="active">Why Update The VCR Fixtures</li> |
| </ul> |
| |
| <p> |
| Deltacloud uses pre-recorded <a href="https://github.com/vcr/vcr">VCR</a> YAML |
| files called <i>fixtures</i> to allow test execution without the need for a live |
| cloud provider. |
| </p> |
| |
| <p> |
| The <i>fixtures</i> YAML files are located under: |
| <u><b>REPO</b>/deltacloud/server/tests/drivers/<i>driver name</i>/fixtures</u> |
| </p> |
| |
| <p> |
| A live cloud provider, with valid credentials, needs to be used in order to |
| <a href="https://www.relishapp.com/vcr/vcr/v/1-6-0/docs/record-modes">record</a> |
| the fixtures YAML files but once recorded the tests can then be executed without |
| a live cloud provider. |
| </p> |
| |
| <p> |
| Because valid credentials are used to record the VCR fixtures data care must be |
| taken to either alter the credentials on the live cloud provider or remove them |
| from the fixtures data after doing the recording. |
| More on how to do this can be found in |
| <a href="update-vcr-test-fixtures-data-example.html">Updating VCR Fixtures Example</a> |
| </p> |
| |
| <h3>Why VCR data May Need Updating:</h3> |
| |
| <p> |
| In some cases you will need to re-record the VCR fixtures for particular test. |
| This happen when a request is made to the backend cloud provider that a |
| test does not yet exercise. <b>For Example:</b> |
| </p> |
| |
| <ul> |
| <li> |
| <p> |
| A bug is fixed in the EC2 driver, where <i>images()</i> method had not work properly. |
| </p> |
| <ol> |
| <li> |
| <p>Open <i>tests/drivers/ec2/images_tests.rb</i></p> |
| </li> |
| <li> |
| <p>Add a new test to capture this bug.</p> |
| <p>At the end of this file and add a the new code:</p> |
| <pre> |
| it 'should provide correct output' do |
| # assertions go here |
| end |
| </pre> |
| </li> |
| </ol> |
| </li> |
| |
| <li> |
| <p> |
| Scenario: You added new collection <i>oranges()</i> into RHEV-M driver. |
| </p> |
| <ol> |
| <li> |
| <p>Write all driver methods tests here: <i>tests/drivers/rhevm/oranges_tests.rb</i></p> |
| </li> |
| <li> |
| <p>Create <i>tests/deltacloud/collections/oranges_collection_tests.rb</i></p> |
| </li> |
| <li> |
| <p>Write all collection operations tests here ^^</p> |
| </li> |
| </ol> |
| </li> |
| |
| <li> |
| <p> |
| A bug is fixed in the Deltacloud frontend where <i>/api/images/123/create</i> |
| operation does not provide correct status code. You corrected it. |
| </p> |
| <ol> |
| <li> |
| <p>Open 'tests/deltacloud/collections/images_collection_test.rb'</p> |
| </li> |
| <li> |
| <p>Locate this line: </p> |
| <pre> |
| it 'allow to create and destroy the new image' do |
| </pre> |
| </li> |
| <li> |
| <p>Provide the correct value into 'status.must_equal' method</p> |
| </li> |
| </ol> |
| </li> |
| |
| </ul> |
| |
| |
| <footer class="footer"> |
| <p class="pull-right"><span class='icon-circle-arrow-up'> </span><a href="#">Back to top</a></p> |
| <div class='row'> |
| <div class='span3'> |
| <img src="/assets/img/asf.png" alt="Apache Software Foundation"/> |
| </div> |
| <div class='span9'> |
| <strong>Apache Deltacloud</strong> is a top-level project at the <a |
| href="http://www.apache.org">Apache Software Foundation</a>, |
| having graduated from the ASF Incubator in October |
| 2011. Through a collaborative and meritocratic development process, Apache |
| projects deliver enterprise-grade, freely available software products that |
| attract large communities of users. |
| </div> |
| </div> |
| </footer> |
| |
| </div> <!-- /container --> |
| |
| <!-- Piwik --> |
| <script type="text/javascript"> |
| var pkBaseURL = (("https:" == document.location.protocol) ? "https://stats.salasaga.org/aeolus/piwik/" : "http://stats.salasaga.org/aeolus/piwik/"); |
| document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E")); |
| </script><script type="text/javascript"> |
| try { |
| var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", 2); |
| piwikTracker.trackPageView(); |
| piwikTracker.enableLinkTracking(); |
| } catch( err ) {} |
| </script><noscript><p><img src="http://stats.salasaga.org/aeolus/piwik/piwik.php?idsite=2" style="border:0" alt="" /></p></noscript> |
| <!-- End Piwik Tracking Code --> |
| |
| </body> |
| </html> |