Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
ruby_odata / features / type_conversion.feature
Size: Mime:
@type_conversion
Feature: Type conversion
  In order to accurately perform operations
  As a user of the API
  I want types returned to be accurately represented

Background:
  Given a HTTP ODataService exists
  And blueprints exist for the service

Scenario: Integers should be Fixnums
  Given I call "AddToProducts" on the service with a new "Product" object
  And I save changes
  When I call "Products" on the service
  And I run the query
  Then the "Id" method on the object should return a Fixnum

Scenario: Decimals should be BigDecimals
  Given I call "AddToProducts" on the service with a new "Product" object
  And I save changes
  When I call "Products" on the service
  And I run the query
  Then the "Price" method on the object should return a BigDecimal

Scenario: DateTimes should be Times
  Given I call "AddToProducts" on the service with a new "Product" object
  And I save changes
  When I call "Products" on the service
  And I run the query
  Then the "AuditFields.CreateDate" method on the object should return a Time

Scenario: Verify that DateTimes don't change if not modified on an update
  Given I call "AddToProducts" on the service with a new "Product" object with Name: "Test Product"
  When I save changes
  And I call "Products" on the service with args: "1"
  And I run the query
  Then I store the first last query result for comparison
  When I set "Name" on the first result to "Changed Test Product"
  Then the method "Name" on the first result should equal: "Changed Test Product"
  And I call "update_object" on the service with the first last query result
  And I save changes
  Then the save result should equal: "true"
  When I call "Products" on the service with args: "1"
  And I run the query
  Then the new query first result's time "AuditFields.CreateDate" should equal the saved query result

Scenario: DateTimes should be able to be null
  Given I call "AddToProducts" on the service with a new "Product" object
  And I save changes
  When I call "Products" on the service
  And I run the query
  Then the "DiscontinuedDate" method on the object should return a NilClass