Sha256: 1dc772865899154fce947b6bca43e4db2d8f2be5cf03b30900d90701075ca502

Contents?: true

Size: 785 Bytes

Versions: 6

Compression:

Stored size: 785 Bytes

Contents

require 'spec_helper'

describe TeamCity::ElementBuilder do
  it 'outputs json following TeamCity convention for elements and properties' do
    builder = TeamCity::ElementBuilder.new(:attr1 => 'x') do |properties|
      properties['property1'] = 'z'
    end

    JSON.parse(builder.to_request_body).should == {
      "attr1" => "x",
      "properties" => {
        "property" => [
          {
            "name" => "property1",
            "value" => "z"
          }
        ]
      }
    }
  end

  it 'outputs json following TeamCity convention for elements even if no properties are defined' do
    builder = TeamCity::ElementBuilder.new(:attr1 => 'x')

    JSON.parse(builder.to_request_body).should == {
      "attr1" => "x", "properties" => { "property" => [] }
    }
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
teamcity_ruby-0.0.6 spec/teamcity_ruby/element_builder_spec.rb
teamcity_ruby-0.0.5 spec/teamcity_ruby/element_builder_spec.rb
teamcity_ruby-0.0.4 spec/teamcity_ruby/element_builder_spec.rb
teamcity_ruby-0.0.3 spec/teamcity_ruby/element_builder_spec.rb
teamcity_ruby-0.0.2 spec/teamcity_ruby/element_builder_spec.rb
teamcity_ruby-0.0.1 spec/teamcity_ruby/element_builder_spec.rb