Γρήγορη αναφορά

Rack::Test Cheatsheet

Γρήγορος οδηγός αναφοράς για το Rack::Test: ελαφρύ API δοκιμών για εφαρμογές Ruby Rack, Sinatra και Rails.

· Δημοσιεύτηκε

Το Rack::Test είναι μια απλή, ελαφριά βιβλιοθήκη δοκιμών για εφαρμογές Ruby που μιλούν το πρωτόκολλο Rack χωρίς να εκκινούν HTTP διακομιστή.

Βασική Ρύθμιση (RSpec / Minitest)

require 'rack/test'

class AppTest < Minitest::Test
  include Rack::Test::Methods

  def app
    MySinatraApp
  end

  def test_homepage
    get '/'
    assert last_response.ok?
    assert_equal 'Hello World', last_response.body
  end
end

Μέθοδοι Αιτημάτων HTTP

# Αίτημα GET με παραμέτρους ερωτήματος
get '/search', q: 'ruby'

# Αίτημα POST με δεδομένα φόρμας
post '/users', name: 'Alice', email: '[email protected]'

# PUT και DELETE
put '/users/1', status: 'active'
delete '/users/1'

# Μεταφόρτωση αρχείου
post '/upload', file: Rack::Test::UploadedFile.new('spec/fixtures/avatar.png', 'image/png')

Έλεγχος Απαντήσεων

last_response.status          # => 200, 404, κ.λπ.
last_response.body            # => Συμβολοσειρά απάντησης
last_response.headers         # => Hash κεφαλίδων απάντησης HTTP
last_response.ok?             # => true εάν 200..299
last_response.redirect?       # => true εάν 301, 302, 303, 307
last_response.location        # => URL ανακατεύθυνσης

Ορισμός Κεφαλίδων & Αυθεντικοποίηση

# Ορισμός κεφαλίδας αιτήματος
header 'Accept', 'application/json'

# Βασική αυθεντικοποίηση HTTP (Basic Auth)
authorize 'username', 'secretpassword'

Αναφορές

Σχετικά θέματα