Aditya Agustyana wrote:
> katakanlah saya punya controller
> 
> FooController < ApplicationController
> 
> CLICK_LIMIT=4
> 
> def index
>   session[:click]=0 unless session[:click]
>   if session[:click]>CLICK_LIMIT
>     session[:click]=0 
>     redirect_to :action=>"bla1"
>   else
>     session[:click]+=1
>     redirect_to :action=>"bla2"
>   end
> end
> 
> end
> 
> lalu saya punya functional test untuk foo controller
> 
> def test_index_go_to_bla1
>   get :index,{},{:click=>5}  #-----> angka 5 ini nih biang keroknya
>   assert_redirected_to :action=>"bla1"
> end
> 
> def test_index_go_to_bla2
>   get :index,{},{:click=>4}  #----> angka 4 ini nih biang keroknya
>   assert_redirected_to :action=>"bla2"
> end
> 
> ______________________
> 
> btw tentu aja test ini bakalan jalan.... tapi kalo konstanta
> CLICK_LIMIT katakanlah diubah jadi 20 testnya bakalan error
> 
> sayangnya method "assigns" cuma bisa dipake bwat instance variable
> duank yak..., ndak bisa dipake buat konstanta
> 
> kan indah pabila
> 
> def test_index_go_to_bla2
>   get :index,{},{:click=>assigns["CLICK_LIMIT"] # ----> pengennya sih
> begini, tapi error he he  
>   assert_redirected_to :action=>"bla2"
> end
> 
> nah temans.... ada solusi indah ndak buat memanggil konstanta di
> functional test
> 
> terim kasih sebelumnya

eh Pak Adit, gimana kelanjutan cerita bermain BDD / rspec ?
saya tunggu ceritanya ;-)

akali pakai metode setup saja gimana?

def setup
   @iniygakandipanggilberulang2 = value
end

sayang:~/Desktop/ga_sabaran arie$ elinks
file:///opt/local/doc/ruby/stdlib/libdoc/test/unit/rdoc/index.html

Yg saya tangkap dari codes Pak Adit itu koq malah mending bikin integration
testing aja sekalian biar ++rapi / jangan lupa pasang terus si zentest biar main
di background..

BTW ini dokumentasi Rails masih minim nih ttg assigns

assigns(key = nil)

[ hide source ]

      # File vendor/rails/actionpack/lib/action_controller/test_process.rb, 
line 405
405:     def assigns(key = nil)
406:       if key.nil?
407:         @response.template.assigns
408:       else
409:         @response.template.assigns[key.to_s]
410:       end
411:     end

makanya sampai hire / bayar orang / teman2 railers juga supaya dibikinkan
dokumentasi yg bagus (sori link situs nya lupa/cari sendiri di google).

-- 
Arie || ariekeren, YM!=riyari3, http://ariekusumaatmaja.wordpress.com
http://groups.yahoo.com/groups/id-ruby, Bow! My favorite : UCHIHA ITACHI !
"Never say RTFM. Turn the trolls into committers", Audrey Tang - 
conisli-ofun.pdf


Kirim email ke