Hi Arie,
Ini sprint-nya ada di mana? Terus siapa saja yang boleh ikutan?
Untuk each_unless, bisa dengan Enumerable::reject atau select (seperti
contoh di bawah)?
KOkon.
2008/6/25 Arie Kusuma Atmaja <[EMAIL PROTECTED]>:
> Studi Kasus,
>
> ada sebuah tim agile yang memasang poin nol utk sprint hari senin di
> minggu ini, yang bilamana dijadikan dalam hitungan waktu maka spec'ing,
> koding, paling lama akan makan waktu 2 menit. intinya yang pingin
> ditampilkan adalah semua value dalam array, kecuali value tertentu
> (dalam hal ini string others).
>
> Berikut ini adalah hasil spike si crawling baby:
>
> <terminal>
> r:belajar crawling_baby$ cat each_unless.rb
>
> #!/usr/bin/env ruby -d -w
>
> class MrongosArray < Array
> def initialize(*ary)
> @ary = ary
> end
>
> def each_unless(except)
> tmp = @ary
> tmp.delete(except)
> tmp.collect { |e| e }
> end
> end
>
> coba = MrongosArray.new("others", "sports_and_games", "conversation")
> puts coba.each_unless("others")
>
> r:belajar crawling_baby$ cat each_unless_spec.rb
>
> #!/usr/bin/env spec
>
> require "each_unless.rb"
>
> describe MrongosArray do
> before(:each) do
> @coba = MrongosArray.new("others", "sports_and_games", "conversation")
> end
>
> it "should only show sports and games and conversation" do
> @coba.each_unless("others").should == ["sports_and_games",
> "conversation"]
> end
> end
> </terminal>
>
> silakan bagi yang ingin memodifikasi kode ruby tersebut beserta rspec
> codes-nya agar menjadi termasuk kategori lebih "afdol" kode ruby -_-
> maupun yang ingin memberikan argumen terhadap solusi tsb dengan
> mengedepankan solusi terbaik masing-masing.
>
> <code>
> cat ide_mancing.rb
> # gitu aja kok refot
> ['a','r','r','a','y'].select { |e| e != 'y' }
> </code>
>
> selamat bersenang-senang.