Hi,
As Paul said that you need to store the text in a file and then read that
file in your main process. Because pop up's are handled in different
process. So even if you return that value from the method it won't be
visible to main process. Write this value to a file and then read the
contents.
Regards,
Angrez
On 4/25/07, SHALINI GUPTA <[EMAIL PROTECTED]> wrote:
hi,
thanks for reply!!!
but i have used autoit and WinGet Text as:---(with no success)
#----- js_dialog.rb -----
require 'win32ole'
require 'test/unit'
require 'test/unit/ui/console/testrunner'
#
# Use AutoIt to read and close Javascript dialog windows
#
module JavascriptDialog
#
# Target javascript dialogs with this window title
#
WINDOW_TITLE = "Microsoft Internet Explorer"
class << self
#
# Return the text contained in a javascript dialog (e.g. an
"alert()")
# if such a dialog is present or appears within +wait_seconds+.
#
def text(wait_seconds = 1)
# sleep 0.3
autoit.WinWait(WINDOW_TITLE, nil, wait_seconds) if
wait_seconds
s = autoit.WinGetText(WINDOW_TITLE)
s unless s == "1"
end
#
# Close any active javascript dialog
#
def close
autoit.WinClose WINDOW_TITLE
end
#
# Press the "OK" button on a javascript dialog
#
def ok
autoit.ControlClick(WINDOW_TITLE, "", "OK")
end
#
# Press the "Cancel" button on a javascript dialog
#
def cancel
autoit.ControlClick(WINDOW_TITLE, "", "Cancel")
end
#
# Press the "Yes" button on a javascript dialog
#
def yes
autoit.ControlClick(WINDOW_TITLE, "", "Yes")
end
#
# Press the "No" button on a javascript dialog
#
def no
autoit.ControlClick(WINDOW_TITLE, "", "No")
end
private
#
# Return an AutoIt COM object, creating it if it doesn't
already
# exist
#
def autoit
unless defined? @@autoit
@@autoit = WIN32OLE.new("AutoItX3.Control")
end
@@autoit
end
end
end
module Test::Unit::Assertions
#
# Passes if a Javascript dialog appears within +wait_seconds+ and its
# text matches the given (optional) pattern.
#
# Use like this:
# assert_js_dialog do
# watir_command_to_make_dialog_appear
# end
# Or like this:
# assert_js_dialog /Text to find in the dialog/, "Cancel" do
# watir_command_to_make_dialog_appear
# end
#
def assert_js_dialog(pattern = //, action = "close", message = nil)
_wrap_assertion do
begin
pipe = IO.popen("ruby exetry.rb #{action}")
yield
window_text = pipe.read rescue ""
pipe.close
unless window_text.empty?
assert_block(build_message(message,
"<?> not found in JavaScript dialog.", pattern))
do
window_text.match(pattern)
end
else
raise Test::Unit:: AssertionFailedError.new(
build_message(message, "No JavaScript window
found."))
end
ensure
pipe.close if pipe && !pipe.closed?
end
end
end
end
# test - will close and print the text of an opened javascript dialog if
# run as "ruby js_dialog.rb"
if $0 == __FILE__
action = ARGV.shift || "close"
print JavascriptDialog.text || ""
JavascriptDialog.send action
end
if possible then please help me...and give me some code...
Regards
Shalini Gupta
On 4/24/07, Paul Rogers <[EMAIL PROTECTED]> wrote:
>
> there is stuff in the winclicker to do it too. We've got the javascript
> pop up text back to the main app by saving it to a file
>
> Paul
>
> Hi,
>
> As far as I know, clicking some button on Pop up window happens in a
> different process (different from current process in which your script is
> running). Correct me if I am wrong here?
>
> You can get the text using AutoIt3 and WinGetText method. The only thing
> you need to find out is how you communicate data or the text between two
> different processes.
>
> Regards,
> Angrez
>
> On 4/24/07, SHALINI GUPTA < [EMAIL PROTECTED]> wrote:
> >
> > HI List,
> >
> > Please help regarding popup.
> > How to get the text of a popup window..
> > its very urgent please help.
> >
> > Regards
> > Shalini gupta
> >
> > _______________________________________________
> > Wtr-general mailing list
> > [email protected]
> > http://rubyforge.org/mailman/listinfo/wtr-general
> >
>
>
> _______________________________________________
> Wtr-general mailing list
> [email protected]
> http://rubyforge.org/mailman/listinfo/wtr-general
> _______________________________________________
> Wtr-general mailing list
> [email protected]
> http://rubyforge.org/mailman/listinfo/wtr-general
>
_______________________________________________
Wtr-general mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/wtr-general
_______________________________________________
Wtr-general mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/wtr-general