# \<LocalJumpError\> Message: \<"no block given"\>

**URL:** <https://www.ruby-forum.com/t/localjumperror-message-no-block-given/174928>\
**Category:** Ruby\
**Created:** [September 4, 2009, 9:54am UTC](https://www.ruby-forum.com/t/localjumperror-message-no-block-given/174928 "2009-09-04T09:54:35Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![spinhoo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/958977/32.png) [@spinhoo](https://www.ruby-forum.com/u/spinhoo)\
**Post date:** [September 4, 2009, 9:54am UTC](https://www.ruby-forum.com/t/localjumperror-message-no-block-given/174928/1 "2009-09-04T09:54:35Z")

</div>

Cannot understand why this error is being raised. Any help is  
appreciated. Please find the code listed below.

```
def open
  get_connection
end

protected
def get_connection
  @busy_mutex.synchronize {
    while @free_connections.empty?
      sleep(0.001)
    end
    @free_connections.pop
  }
end

```

Test

def test\_open  
assert\_nothing\_raised @pool.open  
end

Error

(in C:/Users/venkat/Documents/Projects/RuBravo/rorm)

1. Failure:  
test\_open(Test\_Connection\_Provider):  
#Rorm::Connection:0x4dee870. Exception raised: Class:   
Message: \<“no block given”\> —Backtrace—  
./test/test\_connection\_provider.rb:25:in `test_open' C:/Users/venkat/.netbeans/6.7/nb_suite_runner.rb:56:in`run’  
C:/Users/venkat/.netbeans/6.7/nb\_suite\_runner.rb:50:in `each' C:/Users/venkat/.netbeans/6.7/nb_suite_runner.rb:50:in`run’  
C:/Users/venkat/.netbeans/6.7/nb\_test\_runner.rb:63:in `start' C:/Users/venkat/.netbeans/6.7/nb_test_runner.rb:99:in`run’

* * *

./test/test\_connection\_provider.rb:25:in `test\_open’

Finished in 9.851 seconds.  
4 tests, 1 failures, 0 errors

Thanks  
Venkat

---

<div class="post-metadata">

**Author:** ![spinhoo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/958977/32.png) [@spinhoo](https://www.ruby-forum.com/u/spinhoo)\
**Post date:** [September 4, 2009, 10:24am UTC](https://www.ruby-forum.com/t/localjumperror-message-no-block-given/174928/2 "2009-09-04T10:24:06Z")

</div>

Venkat A. wrote:

> 1. Failure:  
> test\_open(Test\_Connection\_Provider):  
> #Rorm::Connection:0x4dee870. Exception raised: Class:   
> Message: \<“no block given”\> —Backtrace—  
> ./test/test\_connection\_provider.rb:25:in `test_open' C:/Users/venkat/.netbeans/6.7/nb_suite_runner.rb:56:in`run’  
> C:/Users/venkat/.netbeans/6.7/nb\_suite\_runner.rb:50:in `each' C:/Users/venkat/.netbeans/6.7/nb_suite_runner.rb:50:in`run’  
> C:/Users/venkat/.netbeans/6.7/nb\_test\_runner.rb:63:in `start' C:/Users/venkat/.netbeans/6.7/nb_test_runner.rb:99:in`run’
> 
> * * *
> 
> ./test/test\_connection\_provider.rb:25:in `test\_open’

def open  
yield 2  
end

open

–output:–  
r1test.rb:2:in `open’: no block given (LocalJumpError)  
from r1test.rb:5

---

<div class="post-metadata">

**Author:** ![spinhoo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/958977/32.png) [@spinhoo](https://www.ruby-forum.com/u/spinhoo)\
**Post date:** [September 4, 2009, 10:30am UTC](https://www.ruby-forum.com/t/localjumperror-message-no-block-given/174928/3 "2009-09-04T10:30:53Z")

</div>

On Fri, Sep 4, 2009 at 09:54, Venkat  
Akkineni[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> ```
> @free_connections.pop
> }
> 
> ```
> 
> end
> 
> Test
> 
> def test\_open

- assert\_nothing\_raised @pool.open

- assert\_nothing\_raised do
- 

```
 @pool.open

```

- end

> end

assert\_nothing\_raised requires a block

---

<div class="post-metadata">

**Author:** ![spinhoo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/958977/32.png) [@spinhoo](https://www.ruby-forum.com/u/spinhoo)\
**Post date:** [September 4, 2009, 11:51pm UTC](https://www.ruby-forum.com/t/localjumperror-message-no-block-given/174928/4 "2009-09-04T23:51:06Z")

</div>

Jano S. wrote:

> On Fri, Sep 4, 2009 at 09:54, Venkat  
> Akkineni[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:
> 
> > ï¿½ ï¿½ ï¿½ ï¿½@free\_connections.pop  
> > ï¿½ ï¿½ ï¿½}  
> > ï¿½ ï¿½end
> > 
> > Test
> > 
> > ï¿½def test\_open
> 
> - ï¿½ ï¿½assert\_nothing\_raised @pool.open
> 
> - assert\_nothing\_raised do
> - 
> 
> ```
> @pool.open
> 
> ```
> 
> - end
> 
> > ï¿½end
> 
> assert\_nothing\_raised requires a block

Thanks Jano that was it. Appreciate your help 7stud.

Venkat

---

<div class="post-metadata">

**Author:** ![spinhoo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/958977/32.png) [@spinhoo](https://www.ruby-forum.com/u/spinhoo)\
**Post date:** [September 4, 2009, 10:57am UTC](https://www.ruby-forum.com/t/localjumperror-message-no-block-given/174928/5 "2009-09-04T10:57:25Z")

</div>

7stud – wrote:

> def open  
> yield 2  
> end
> 
> open
> 
> –output:–  
> r1test.rb:2:in `open’: no block given (LocalJumpError)  
> from r1test.rb:5

Scratch that.

1. 

require ‘test/unit’

def open(x)  
raise “bad value for x” if x == 0  
end

class MyTest \< Test::Unit::TestCase  
def test\_open  
assert\_nothing\_raised open(1)  
end  
end

–output:–  
Loaded suite r1test  
Started  
F  
Finished in 0.008259 seconds.

1. Failure:  
test\_open(MyTest) [r1test.rb:9]:  
Exception raised:  
Class:   
Message: \<“no block given”\>  
—Backtrace—  
r1test.rb:9:in `test\_open’

* * *

1 tests, 1 assertions, 1 failures, 0 errors

===========

1. 

require ‘test/unit’

def open(x)  
raise “bad value for x” if x == 0  
end

class MyTest \< Test::Unit::TestCase  
def test\_open  
assert\_nothing\_raised() {open(1)}  
end  
end

–output:–  
Loaded suite r1test  
Started  
.  
Finished in 0.000326 seconds.

1 tests, 1 assertions, 0 failures, 0 errors

========

1. 

require ‘test/unit’

def open  
1/0  
end

class MyTest \< Test::Unit::TestCase  
def test\_open  
assert\_nothing\_raised(ZeroDivisionError) {open}  
end  
end

–output:–  
Loaded suite r1test  
Started  
F  
Finished in 0.008317 seconds.

1. Failure:  
test\_open(MyTest) [r1test.rb:9]:  
Exception raised:  
Class:   
Message: \<“divided by 0”\>  
—Backtrace—  
r1test.rb:4:in `/' r1test.rb:4:in`open’  
r1test.rb:9:in `test_open' r1test.rb:9:in`test\_open’

* * *

1 tests, 1 assertions, 1 failures, 0 errors

===========

1. 

require ‘test/unit’

def open  
1/0  
end

class MyTest \< Test::Unit::TestCase  
def test\_open  
assert\_nothing\_raised(RuntimeError) {open}  
end  
end

–output:–  
Loaded suite r1test  
Started  
E  
Finished in 0.000477 seconds.

1. Error:  
test\_open(MyTest):  
ZeroDivisionError: divided by 0  
r1test.rb:4:in `/' r1test.rb:4:in`open’  
r1test.rb:9:in `test_open' r1test.rb:9:in`test\_open’

1 tests, 1 assertions, 0 failures, 1 errors
