From 9d766d2ecfa368d6d4dcfc298794e5706d4814b0 Mon Sep 17 00:00:00 2001
From: Grzegorz Bizon <grzesiek.bizon@gmail.com>
Date: Thu, 11 Jan 2018 13:54:33 +0100
Subject: Define QA project pages views / selectors

---
 qa/qa/page/project/new.rb | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

(limited to 'qa')

diff --git a/qa/qa/page/project/new.rb b/qa/qa/page/project/new.rb
index a87313b2cb9..1f23de29642 100644
--- a/qa/qa/page/project/new.rb
+++ b/qa/qa/page/project/new.rb
@@ -2,16 +2,18 @@ module QA
   module Page
     module Project
       class New < Page::Base
-        ##
-        # TODO, define all selectors required by this page object
-        #
-        # See gitlab-org/gitlab-qa#154
-        #
-        view 'app/views/projects/new.html.haml'
+        view 'projects/_new_project_fields.html.haml' do
+          element :project_namespace_select
+          element :project_namespace_field, 'select :namespace_id'
+          element :project_path, 'text_field :path'
+          element :project_description, 'text_area :description'
+          element :project_create_button, "submit 'Create project'"
+        end
 
         def choose_test_namespace
-          find('#s2id_project_namespace_id').click
-          find('.select2-result-label', text: Runtime::Namespace.name).click
+          click_element :project_namespace_select
+
+          first('li', text: Runtime::Namespace.name).click
         end
 
         def choose_name(name)
-- 
cgit v1.2.1


From 3e6e09c458ea67f156e43d2829bdce3138c5cf03 Mon Sep 17 00:00:00 2001
From: Grzegorz Bizon <grzesiek.bizon@gmail.com>
Date: Thu, 11 Jan 2018 14:14:16 +0100
Subject: Use full QA sandbox group path when creating a project

---
 qa/qa/page/project/new.rb  | 2 +-
 qa/qa/runtime/namespace.rb | 4 ++++
 2 files changed, 5 insertions(+), 1 deletion(-)

(limited to 'qa')

diff --git a/qa/qa/page/project/new.rb b/qa/qa/page/project/new.rb
index 1f23de29642..19428ede79e 100644
--- a/qa/qa/page/project/new.rb
+++ b/qa/qa/page/project/new.rb
@@ -13,7 +13,7 @@ module QA
         def choose_test_namespace
           click_element :project_namespace_select
 
-          first('li', text: Runtime::Namespace.name).click
+          first('li', text: Runtime::Namespace.path).click
         end
 
         def choose_name(name)
diff --git a/qa/qa/runtime/namespace.rb b/qa/qa/runtime/namespace.rb
index b00e925986b..a72c2d21898 100644
--- a/qa/qa/runtime/namespace.rb
+++ b/qa/qa/runtime/namespace.rb
@@ -11,6 +11,10 @@ module QA
         'qa-test-' + time.strftime('%d-%m-%Y-%H-%M-%S')
       end
 
+      def path
+        "#{sandbox_name}/#{name}"
+      end
+
       def sandbox_name
         'gitlab-qa-sandbox'
       end
-- 
cgit v1.2.1


From 0619c537ac1ae57233f493f95b3e6c8a119fdb8d Mon Sep 17 00:00:00 2001
From: Grzegorz Bizon <grzesiek.bizon@gmail.com>
Date: Thu, 11 Jan 2018 14:17:51 +0100
Subject: Fix path to QA new project page object view

---
 qa/qa/page/project/new.rb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

(limited to 'qa')

diff --git a/qa/qa/page/project/new.rb b/qa/qa/page/project/new.rb
index 19428ede79e..9b1438f76d5 100644
--- a/qa/qa/page/project/new.rb
+++ b/qa/qa/page/project/new.rb
@@ -2,7 +2,7 @@ module QA
   module Page
     module Project
       class New < Page::Base
-        view 'projects/_new_project_fields.html.haml' do
+        view 'app/views/projects/_new_project_fields.html.haml' do
           element :project_namespace_select
           element :project_namespace_field, 'select :namespace_id'
           element :project_path, 'text_field :path'
-- 
cgit v1.2.1


From bf05a7e77ddecace7e231abbde18cbd1e42d528a Mon Sep 17 00:00:00 2001
From: Grzegorz Bizon <grzesiek.bizon@gmail.com>
Date: Thu, 11 Jan 2018 14:27:11 +0100
Subject: Add selectors coupling for QA project show page object

---
 qa/qa/page/project/show.rb | 22 ++++++++++++++--------
 1 file changed, 14 insertions(+), 8 deletions(-)

(limited to 'qa')

diff --git a/qa/qa/page/project/show.rb b/qa/qa/page/project/show.rb
index 90967e6cc15..c8af5ba6280 100644
--- a/qa/qa/page/project/show.rb
+++ b/qa/qa/page/project/show.rb
@@ -2,15 +2,21 @@ module QA
   module Page
     module Project
       class Show < Page::Base
-        ##
-        # TODO, define all selectors required by this page object
-        #
-        # See gitlab-org/gitlab-qa#154
-        #
-        view 'app/views/projects/show.html.haml'
+        view 'app/views/shared/_clone_panel.html.haml' do
+          element :clone_dropdown
+          element :clone_options_dropdown, '.clone-options-dropdown'
+        end
+
+        view 'app/views/shared/_clone_panel.html.haml' do
+          element :project_repository_location, 'text_field_tag :project_clone'
+        end
+
+        view 'app/views/projects/_home_panel.html.haml' do
+          element :project_name
+        end
 
         def choose_repository_clone_http
-          find('#clone-dropdown').click
+          click_element :clone_dropdown
 
           page.within('.clone-options-dropdown') do
             click_link('HTTP')
@@ -22,7 +28,7 @@ module QA
         end
 
         def project_name
-          find('.project-title').text
+          find('.qa-project-name').text
         end
 
         def wait_for_push
-- 
cgit v1.2.1