Sha256: 6e17fd956877addfaa137f38b2b784173a992bdbcc3e205094c21211e57a5762

Contents?: true

Size: 626 Bytes

Versions: 67

Compression:

Stored size: 626 Bytes

Contents

require 'roar/json'
require 'pact_broker/api/decorators/format_date_time'

module PactBroker
  module Api
    module Decorators
      module Timestamps
        include Roar::JSON

        property :optional_updated_at, as: :updatedAt, exec_context: :decorator, writeable: false
        property :createdAt, getter: lambda { |_|  FormatDateTime.call(created_at) }, writeable: false

        def optional_updated_at
          if represented.respond_to?(:updated_at) && represented.updated_at != represented.created_at
            FormatDateTime.call(represented.updated_at)
          end
        end
      end
    end
  end
end

Version data entries

67 entries across 67 versions & 1 rubygems

Version Path
pact_broker-2.36.1 lib/pact_broker/api/decorators/timestamps.rb
pact_broker-2.36.0 lib/pact_broker/api/decorators/timestamps.rb
pact_broker-2.35.0 lib/pact_broker/api/decorators/timestamps.rb
pact_broker-2.34.0 lib/pact_broker/api/decorators/timestamps.rb
pact_broker-2.33.0 lib/pact_broker/api/decorators/timestamps.rb
pact_broker-2.32.0 lib/pact_broker/api/decorators/timestamps.rb
pact_broker-2.31.0 lib/pact_broker/api/decorators/timestamps.rb