From 31e8905f1d85926f54fe7d19adc3228e74c1f527 Mon Sep 17 00:00:00 2001 From: James Heyneman Date: Thu, 20 Feb 2020 08:26:12 -0500 Subject: [PATCH] Adding Angular support --- lib/page-object/javascript/angular.rb | 14 ++++++++++++++ lib/page-object/javascript_framework_facade.rb | 6 ++++-- 2 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 lib/page-object/javascript/angular.rb diff --git a/lib/page-object/javascript/angular.rb b/lib/page-object/javascript/angular.rb new file mode 100644 index 00000000..b8c9c705 --- /dev/null +++ b/lib/page-object/javascript/angular.rb @@ -0,0 +1,14 @@ +module PageObject + module Javascript + + module Angular + # + # return the number of pending ajax requests + # + def self.pending_requests + 'return getAllAngularTestabilities().filter(x => !x.isStable()).length;' + end + end + + end +end diff --git a/lib/page-object/javascript_framework_facade.rb b/lib/page-object/javascript_framework_facade.rb index 1452ddf1..2f3789f2 100644 --- a/lib/page-object/javascript_framework_facade.rb +++ b/lib/page-object/javascript_framework_facade.rb @@ -2,6 +2,7 @@ require 'page-object/javascript/prototype' require 'page-object/javascript/yui' require 'page-object/javascript/angularjs' +require 'page-object/javascript/angular' module PageObject @@ -21,7 +22,7 @@ class << self # Set the framework to use. # # @param[Symbol] the framework to use. :jquery, :prototype, :yui, - # and :angularjs are supported + # :angularjs, and :angular are supported # def framework=(framework) initialize_script_builder unless @builder @@ -64,7 +65,8 @@ def initialize_script_builder :jquery => ::PageObject::Javascript::JQuery, :prototype => ::PageObject::Javascript::Prototype, :yui => ::PageObject::Javascript::YUI, - :angularjs => ::PageObject::Javascript::AngularJS + :angularjs => ::PageObject::Javascript::AngularJS, + :angular => ::PageObject::Javascript::Angular } end