Vikassy has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/146432

Change subject: Added support for page elements in iframe
......................................................................

Added support for page elements in iframe

Change-Id: Id60c7268dd6e3e4e755bdc53fef7e7d714d4ab0b
---
M modules/ve-mw/test/browser/features/support/language_screenshot.rb
M modules/ve-mw/test/browser/spec/rectangle_spec.rb
2 files changed, 29 insertions(+), 10 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/VisualEditor 
refs/changes/32/146432/1

diff --git a/modules/ve-mw/test/browser/features/support/language_screenshot.rb 
b/modules/ve-mw/test/browser/features/support/language_screenshot.rb
index e17877d..2b29be5 100644
--- a/modules/ve-mw/test/browser/features/support/language_screenshot.rb
+++ b/modules/ve-mw/test/browser/features/support/language_screenshot.rb
@@ -1,14 +1,23 @@
-def capture_screenshot(file_name, page_elements)
+def capture_screenshot(file_name, page_elements, offset_element=nil, 
browser_zoom=1)
   screenshot_directory = ENV["LANGUAGE_SCREENSHOT_PATH"] || "screenshots"
   FileUtils.mkdir_p screenshot_directory
   screenshot_path = "#{screenshot_directory}/#{file_name}"
-  @browser.send_keys [:control, :add]
+  browser_zoom.times do
+    @browser.send_keys [:control, :add]
+  end
   @browser.screenshot.save screenshot_path
-  crop_image screenshot_path, page_elements
+  crop_image screenshot_path, page_elements, offset_element
 end
 
-def crop_image path, page_elements
-  crop_rectangle = rectangle(coordinates_from_page_elements(page_elements))
+def crop_image path, page_elements, offset_element
+  if offset_element
+    offset_rectangle = coordinates_from_page_element(offset_element)
+  else
+    offset_rectangle = [0,0,0,0]
+  end
+  rectangles = coordinates_from_page_elements(page_elements)
+  crop_rectangle = rectangle(rectangles, offset_rectangle)
+
   top_left_x = crop_rectangle[0]
   top_left_y = crop_rectangle[1]
   width = crop_rectangle[2]
@@ -20,17 +29,20 @@
   element.save path
 end
 
-def rectangle rectangles
-
+def rectangle rectangles, offset_rectangle=[0,0,0,0]
   top_left_x, top_left_y = top_left_x_y rectangles
-
   bottom_right_x , bottom_right_y = bottom_right_x_y rectangles
+
   # Finding width and height
   width = bottom_right_x - top_left_x
   height = bottom_right_y - top_left_y
 
+  # We are calculating the offset co-ordinates
+  x_offset = offset_rectangle[0]
+  y_offset = offset_rectangle[1]
+
   # The new rectangle is constructed with all the co-ordinates calculated above
-  [top_left_x, top_left_y, width, height]
+  [top_left_x+x_offset, top_left_y+y_offset, width, height]
 end
 
 def coordinates_from_page_elements page_elements
@@ -74,5 +86,4 @@
 def top_left_x_y input_rectangles
   [top_left_x_coordinates(input_rectangles).min, 
top_left_y_coordinates(input_rectangles).min]
 end
-
 
diff --git a/modules/ve-mw/test/browser/spec/rectangle_spec.rb 
b/modules/ve-mw/test/browser/spec/rectangle_spec.rb
index 3e0b4c2..0639821 100644
--- a/modules/ve-mw/test/browser/spec/rectangle_spec.rb
+++ b/modules/ve-mw/test/browser/spec/rectangle_spec.rb
@@ -8,6 +8,14 @@
     expect(rectangle(input_rectangles)).to eq(input_rectangle)
   end
 
+  it "should return the co-ordinates of the rectangle which is inside a 
iframe" do
+    input_rectangle  = [50,50,10,10]
+    iframe_rectangle = [100,100,20,20]
+    input_rectangles = [input_rectangle]
+    output_rectangle = [150, 150, 10, 10]
+    expect(rectangle(input_rectangles, iframe_rectangle)).to 
eq(output_rectangle)
+  end
+
   it "if we provide 2 rectangles and if one contains the other then it should 
return co-ordinates of bigger rectangle" do
     input_rectangle_1 = [0,0,1,1]
     input_rectangle_2 = [0,0,2,2]

-- 
To view, visit https://gerrit.wikimedia.org/r/146432
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Id60c7268dd6e3e4e755bdc53fef7e7d714d4ab0b
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Vikassy <vikasyaligar...@gmail.com>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to