Rspec ассоциаций RailsIOS

Программируем под IOS
Ответить
Anonymous
 Rspec ассоциаций Rails

Сообщение Anonymous »

Я изо всех сил пытаюсь понять связь между владельцем = create(:user, device_token: device_token) и владельцем: {device_token: device_token, я обычно использую user_id для эта ассоциация.
2. Что делает метод device_token в контроллере.
describe 'POST /v1/events' do
it 'saves the address, lat, lon, name, and started_at date' do
date = Time.zone.now
device_token = '123abcd456xyz'
owner = create(:user, device_token: device_token)

post '/v1/events', {
address: '123 Example St.',
ended_at: date,
lat: 1.0,
lon: 1.0,
name: 'Fun Place!!',
started_at: date,
owner: {
device_token: device_token
}
}.to_json, { 'Content-Type' => 'application/json' }

event = Event.last
expect(response_json).to eq({ 'id' => event.id })
expect(event.address).to eq '123 Example St.'
expect(event.ended_at.to_i).to eq date.to_i
expect(event.lat).to eq 1.0
expect(event.lon).to eq 1.0
expect(event.name).to eq 'Fun Place!!'
expect(event.started_at.to_i).to eq date.to_i
expect(event.owner).to eq owner
end
end

Код контроллера:
def create
@event = Event.new(event_params)

if @event.save
render
end
end

private

def event_params
{
address: params[:address],
ended_at: params[:ended_at],
lat: params[:lat],
lon: params[:lon],
name: params[:name],
started_at: params[:started_at],
owner: user
}
end

def user
User.find_or_create_by(device_token: device_token)
end

def device_token
params[:owner].try(:[], :device_token)
end
end


Подробнее здесь: https://stackoverflow.com/questions/268 ... ions-rspec
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»