class RasperClient::FakeAppCreator

Public Class Methods

create(username: nil, password: nil) click to toggle source
# File lib/rasper_client/fake_server.rb, line 30
def self.create(username: nil, password: nil)
  Class.new(Sinatra::Application) do
    use Rack::Auth::Basic, "Protected Area" do |user, pass|
      username == user && password == pass
    end if username && password

    post '/add' do
      content_type :json
      FakeServer.last_added_report = JSON.parse(request.body.read)
      { success: true }.to_json
    end

    post '/generate' do
      content_type :json
      FakeServer.last_generated_report =
        JSON.parse(Base64.decode64(JSON.parse(request.body.read)['data']))
      { content: Base64.encode64(File.read(resource('dummy.pdf'))) }.to_json
    end
  end
end