mock_server

in spec/gitlab_shell_discover_spec.rb [11:31]


  def mock_server(server)
    server.mount_proc('/api/v4/internal/discover') do |req, res|
      identifier = req.query['key_id'] || req.query['username'] || req.query['user_id']
      known_identifiers = %w(10 someuser 100)
      if known_identifiers.include?(identifier)
        res.status = 200
        res.content_type = 'application/json'
        res.body = '{"id":1, "name": "Some User", "username": "someuser"}'
      elsif identifier == 'broken_message'
        res.status = 401
        res.body = '{"message": "Forbidden!"}'
      elsif identifier && identifier != 'broken'
        res.status = 200
        res.content_type = 'application/json'
        res.body = 'null'
      else
        res.status = 500
      end
    end
  end