summaryrefslogtreecommitdiff
path: root/qa/qa/resource/project_imported_from_github.rb
blob: a160cdb32733307e3b07e073a462ec5f0d42361f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# frozen_string_literal: true

require 'securerandom'

module QA
  module Resource
    class ProjectImportedFromGithub < Base
      attr_accessor :name
      attr_writer :personal_access_token, :github_repository_path

      attribute :group do
        Group.fabricate!
      end

      def fabricate!
        group.visit!

        Page::Group::Show.perform(&:go_to_new_project)

        Page::Project::New.perform do |page|
          page.click_import_project
        end

        Page::Project::New.perform do |page|
          page.click_github_link
        end

        Page::Project::Import::Github.perform do |page|
          page.add_personal_access_token(@personal_access_token)
          page.list_repos
          page.import!(@github_repository_path, @name)
        end
      end
    end
  end
end