Unable to open the script in anouther script

Hi All
I ma trying to call the function written in one script in other script.
But it is giving me the error.

The called script is 2.rb

require 'watir'
def test_b

$ie1 = IE.new

$ie1.text_field(:name, "q").set "pickaxe"
$ie1.button(:name, "btnG").click
#ie.showAllObjects
end

the calling script is 1.rb

require 'watir'
require '2'

class TestCase

  def test_a
  $ie = IE.new
  $ie.goto 'www.google.com'
end
test_b
  end

The error popped is as follows:

./2.rb:4: in 'test_b': uninitialized constant IE(NameError)
        from 1.rb:10

Please help.
Thanks in advance.

···

--
Posted via http://www.ruby-forum.com/.

I've never used Watir myself, but looking at the API docs it
looks like you should replace references to IE with
Watir::IE.

HTH,
  Stefan

···

2008/4/9, Pranjal Jain <pranjal.jain123@gmail.com>:

Hi All
I ma trying to call the function written in one script in other script.
But it is giving me the error.

The called script is 2.rb

require 'watir'
def test_b

$ie1 = IE.new

$ie1.text_field(:name, "q").set "pickaxe"
$ie1.button(:name, "btnG").click
#ie.showAllObjects
end

the calling script is 1.rb

require 'watir'
require '2'

class TestCase

  def test_a
  $ie = IE.new
  $ie.goto 'www.google.com'
end
test_b
  end

The error popped is as follows:

./2.rb:4: in 'test_b': uninitialized constant IE(NameError)
        from 1.rb:10

Hi All
I ma trying to call the function written in one script in other script.
But it is giving me the error.

The called script is 2.rb

require 'watir'
def test_b

$ie1 = IE.new

$ie1.text_field(:name, "q").set "pickaxe"
$ie1.button(:name, "btnG").click
#ie.showAllObjects
end

the calling script is 1.rb

require 'watir'
require '2'

class TestCase

  def test_a
  $ie = IE.new
  $ie.goto 'www.google.com'
end
test_b
  end

The error popped is as follows:

/2.rb:4: in 'test_b': uninitialized constant IE(NameError)
        from 1.rb:10

Please help.
Thanks in advance.
--
Posted viahttp://www.ruby-forum.com/.

Remember that ruby is interpreted, and code is evaluated line by line

class TestCase
  def test_a
    $ie = IE.new
    $ie.goto 'www.google.com'
  end

test_a is defined but has NOT been executed

  test_b

test_ is invoked here, the code is executed
Since test_a has not been executed yet $ie has not been defined

end

I'd suggest:
class TestCase
  def test_a
    $ie = IE.new
    $ie.goto 'www.google.com'
    test_b
  end
end

···

On Apr 9, 3:03 am, Pranjal Jain <pranjal.jain...@gmail.com> wrote:

Ruby is complaining that there's an uninitialized constant called IE... which means (funnily enough) that it doesn't know what IE means.

This is probably because you're trying to use a constant which is namespaced without the namespace!

also, I think that you probably used to use php, given the nomenclature you're using, and the fact that you're putting $ chars in front of all your variable names.

Don't do this. $ in front of a variable name means it's a global, and I'm fairly sure you don't want globals all through your code.

This is what you probably wanted: (from the watir example page)

ie = Watir::IE.new

Julian.

Learn Ruby on Rails! Check out the FREE VIDS (for a limited time) VIDEO #3 out NOW!
http://sensei.zenunit.com/

···

On 09/04/2008, at 5:03 PM, Pranjal Jain wrote:

Hi All
I ma trying to call the function written in one script in other script.
But it is giving me the error.

The called script is 2.rb

require 'watir'
def test_b

$ie1 = IE.new

$ie1.text_field(:name, "q").set "pickaxe"
$ie1.button(:name, "btnG").click
#ie.showAllObjects
end

the calling script is 1.rb

require 'watir'
require '2'

class TestCase

def test_a
$ie = IE.new
$ie.goto 'www.google.com'
end
test_b
end

The error popped is as follows:

./2.rb:4: in 'test_b': uninitialized constant IE(NameError)
       from 1.rb:10

Please help.
Thanks in advance.
--
Posted via http://www.ruby-forum.com/\.