Sha256: 275a8b8adf6649a879dbb9452f2c544c22c8d6a2c8668329698e6b90b76a8c00

Contents?: true

Size: 1.19 KB

Versions: 1

Compression:

Stored size: 1.19 KB

Contents

class RallyDefectResponder

  attr_reader :requests

  def initialize
    @requests = []
  end

  def last_request
    @requests.last
  end

  def endpoint
    lambda do |env|
      @requests << request = Rack::Request.new(env)

      case request.url
      when "https://rally1.rallydev.com/slm/webservice/current/Defect?query=%28FormattedId+%3D+DE1234%29&fetch=true"
        [200, {}, [
          <<-XML
            <QueryResult>
              <Results>
                <Object>
                  <FormattedID>DE1234</FormattedID>
                  <Name>[Rework] Change link to button</Name>
                  <PlanEstimate>1.0</PlanEstimate>
                  <ScheduleState>In-Progress</ScheduleState>
                  <TaskActualTotal>0.0</TaskActualTotal>
                  <TaskEstimateTotal>6.5</TaskEstimateTotal>
                  <TaskRemainingTotal>0.5</TaskRemainingTotal>
                  <Owner>scootin@fruity.com</Owner>
                  <Description>#{ CGI::escapeHTML('<div><p>This is a defect.</p></div>') }</Description>
                </Object>
              </Results>
              <TotalResultCount>1</TotalResultCount>
            </QueryResult>
XML
        ]]
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rallycat-0.1.0 spec/support/rally_defect_responder.rb