Sha256: c2c24a0eb766a7121fb8d6552f568284efe64ea7b3a86bddc80c605b8b15713b

Contents?: true

Size: 576 Bytes

Versions: 25

Compression:

Stored size: 576 Bytes

Contents

require 'reform'
require 'ostruct'
require 'benchmark'

class BandForm < Reform::Form
  property :name, validates: {presence: true}

  collection :songs do
    property :title, validates: {presence: true}
  end
end

songs = 50.times.collect { OpenStruct.new(title: "Be Stag") }
band = OpenStruct.new(name: "Teenage Bottlerock", songs: songs)

songs_params = 50.times.collect { {title: "Commando"} }

time = Benchmark.measure do
  100.times.each do
    form = BandForm.new(band)
    form.validate("name" => "Ramones", "songs" => songs_params)
    form.save
  end
end

puts time

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
reform-2.2.4 test/benchmarking.rb
reform-2.2.3 test/benchmarking.rb
reform-2.2.2 test/benchmarking.rb
reform-2.2.1 test/benchmarking.rb
reform-2.2.0 test/benchmarking.rb
reform-2.2.0.rc1 test/benchmarking.rb
reform-2.1.0 test/benchmarking.rb
reform-2.1.0.rc1 test/benchmarking.rb
reform-2.0.5 test/benchmarking.rb
reform-2.0.4 test/benchmarking.rb
reform-2.0.3 test/benchmarking.rb
reform-2.0.2 test/benchmarking.rb
reform-2.0.1 test/benchmarking.rb
reform-2.0.0 test/benchmarking.rb
reform-2.0.0.rc3 test/benchmarking.rb
reform-2.0.0.rc2 test/benchmarking.rb
reform-2.0.0.rc1 test/benchmarking.rb
reform-2.0.0.beta2 test/benchmarking.rb
reform-2.0.0.beta1 test/benchmarking.rb
reform-1.2.6 test/benchmarking.rb