# Unit test, test validations

**URL:** <https://www.ruby-forum.com/t/unit-test-test-validations/224723>\
**Category:** IT\
**Created:** [November 23, 2012, 10:35am UTC](https://www.ruby-forum.com/t/unit-test-test-validations/224723 "2012-11-23T10:35:49Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![aris](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/258eb7/32.png) [@aris](https://www.ruby-forum.com/u/aris)\
**Post date:** [November 23, 2012, 10:35am UTC](https://www.ruby-forum.com/t/unit-test-test-validations/224723/1 "2012-11-23T10:35:49Z")

</div>

Sto facendo delle prove con i test.

fixture:

reservation1:  
user: admin  
room: stanza1  
moderator\_password: “prova”  
attendee\_password: “prova”  
reserved\_from: “2012-11-06”  
reserved\_to: “2012-11-12”

test:

class ReservationTest \< ActiveSupport::TestCase  
test “Reservation attributes must not be empty” do  
reservation = Reservation.new  
assert reservation.invalid?  
assert reservation.errors[:moderator\_password].any?  
end

test “Reservation do not overlap date” do  
reservation1 = Reservation.new  
assert reservation1.errors[:moderator\_password].any?  
end

quello che non capisco e’ perche’ mi da un failure nel secondo test.  
E’ uguale al primo, se il primo passa dovrebbe passare anche il secondo.

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [November 23, 2012, 10:39am UTC](https://www.ruby-forum.com/t/unit-test-test-validations/224723/2 "2012-11-23T10:39:20Z")

</div>

Non uguale. Nel primo chiami invalid?, che implementato chiamando  
!valid?  
Il metodo valid? prima di restituire il risultato esegue le validazioni  
quindi popola errors.

Nel secondo caso errors vuoto perch non hai eseguito le validazioni.

– Simone

On Fri, Nov 23, 2012 at 10:35 AM, Mauro [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> reserved\_to: “2012-11-12”  
> test “Reservation do not overlap date” do  
> [http://lists.ruby-it.org/mailman/listinfo/ml](http://lists.ruby-it.org/mailman/listinfo/ml)

–  
Simone C.  
Passionate programmer and dive instructor

> **[Simone Carletti — Underwater programmer](https://simonecarletti.com/)**
>
> Simone Carletti is a Tech Lead with a great passion for quality.

Twitter: @weppos [https://twitter.com/weppos](https://twitter.com/weppos) - Facebook: [simone.io](http://simone.io)

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [November 23, 2012, 10:43am UTC](https://www.ruby-forum.com/t/unit-test-test-validations/224723/3 "2012-11-23T10:43:26Z")

</div>

On 23 November 2012 10:38, Simone C. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Non uguale. Nel primo chiami invalid?, che implementato chiamando  
> !valid?  
> Il metodo valid? prima di restituire il risultato esegue le validazioni  
> quindi popola errors.
> 
> Nel secondo caso errors vuoto perch non hai eseguito le validazioni.

Accidenti … una svista, scusate.
