51 lines
1.2 KiB
Ruby
51 lines
1.2 KiB
Ruby
# Copyright (C) 2024 Manuel Bustillo
|
|
|
|
require 'swagger_helper'
|
|
|
|
RSpec.describe 'users/sessions', type: :request do
|
|
|
|
path '/{slug}/users/sign_in' do
|
|
|
|
post('create session') do
|
|
tags 'Users Sessions'
|
|
consumes 'application/json'
|
|
produces 'application/json'
|
|
|
|
parameter Swagger::Schema::SLUG
|
|
parameter name: :body, in: :body, schema: {
|
|
type: :object,
|
|
required: %i[user],
|
|
properties: {
|
|
user: {
|
|
type: :object,
|
|
required: %i[email password],
|
|
properties: {
|
|
email: { type: :string, format: :email },
|
|
password: SwaggerResponseHelper::PASSWORD
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
response(201, 'created') do
|
|
schema type: :object, properties: Swagger::Schema::USER
|
|
xit
|
|
end
|
|
|
|
response_401(message: 'Invalid Email or password.')
|
|
end
|
|
end
|
|
|
|
path '/{slug}/users/sign_out' do
|
|
parameter Swagger::Schema::SLUG
|
|
delete('delete session') do
|
|
tags 'Users Sessions'
|
|
consumes 'application/json'
|
|
produces 'application/json'
|
|
response(204, 'Session destroyed') do
|
|
xit
|
|
end
|
|
end
|
|
end
|
|
end
|