You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: pull_request.rb
    path of file: ./repos/gitlabhq/lib/gitlab/github_import/representation
    
    the code of the file until where you have to start completion: # frozen_string_literal: true

module Gitlab
  module GithubImport
    module Representation
      class PullRequest
        include Representable

        expose_attribute :iid, :title, :description, :source
    
        def formatted_source_branch
          if cross_project? && source_repository_owner
            "github/fork/#{source_repository_owner}/#{source_branch}"
          elsif source_branch == target_branch
            # Sometimes the source and target branch are the same, but GitLab
            # doesn't support this. This can happen when both the user and
            # source repository have been deleted, and the PR was submitted from
            # the fork's master branch.
            "#{source_branch}-#{iid}"
          else
            source_branch
          end
        end