# frozen_string_literal: true
require 'swagger_helper'

describe 'user_badges' do

  let(:admin) { Fabricate(:admin) }

  before do
    Jobs.run_immediately!
    sign_in(admin)
  end

  path '/user-badges/{username}.json' do

    get 'List badges for a user' do
      tags 'Badges', 'Users'
      operationId 'listUserBadges'
      consumes 'application/json'
      expected_request_schema = nil
      parameter name: :username, in: :path, schema: { type: :string }

      produces 'application/json'
      response '200', 'success response' do
        expected_response_schema = load_spec_schema('user_badges_response')
        schema expected_response_schema

        let(:username) { admin.username }

        it_behaves_like "a JSON endpoint", 200 do
          let(:expected_response_schema) { expected_response_schema }
          let(:expected_request_schema) { expected_request_schema }
        end
      end
    end
  end
end