test: agrega tests para ruby rspec

This commit is contained in:
Felipe Gaete 2024-08-12 09:37:42 -04:00
parent 1bd63ff6d5
commit c5f4394a09

View File

@ -52,17 +52,38 @@ describe GildedRose do
end
context 'para items Aged Brie' do
it 'incrementa su calidad'
before do
@items = [Item.new("Aged Brie", 10, 2)]
@gilded = GildedRose.new(@items)
end
it 'incrementa su calidad en 2 cuando ya no quedan dias de venta'
it 'incrementa su calidad' do
@gilded.update_quality
it 'no incrementa su calidad por sobre 50'
expect(@items[0].quality).to eq 3
end
it 'incrementa su calidad en 2 cuando ya no quedan dias de venta' do
@items[0].sell_in = 0
@gilded.update_quality
expect(@items[0].quality).to eq 4
end
it 'no incrementa su calidad por sobre 50' do
@items[0].quality = 50
@gilded.update_quality
expect(@items[0].quality).to eq 50
end
end
context 'para items Sulfuras' do
before do
## Arrange
@items = [Item.new("Sulfuras, Hand of Ragnaros", 10, 2)]
@items = [Item.new("Sulfuras, Hand of Ragnaros", 10, 80)]
@gilded = GildedRose.new(@items)
end
@ -82,12 +103,22 @@ describe GildedRose do
end
context 'para items Backstage Pass' do
it 'incrementa su calidad si quedan más de 10 días para venderlo'
it 'incrementa su calidad en 2 si quedan 10 dias o menos para venderlo' do
before do
# arrange
@items = [Item.new("Backstage passes to a TAFKAL80ETC concert", 10, 2)]
@gilded = GildedRose.new(@items)
end
it 'incrementa su calidad si quedan más de 10 días para venderlo' do
@items[0].sell_in = 11
@gilded.update_quality
expect(@items[0].quality).to eq 3
end
it 'incrementa su calidad en 2 si quedan 10 dias o menos para venderlo' do
@items[0].sell_in = 10
# act
@gilded.update_quality()
@ -96,12 +127,33 @@ describe GildedRose do
expect(@items[0].quality).to eq 4
end
it 'incrementa su calidad en 3 si quedan 5 dias o menos para venderlo'
it 'incrementa su calidad en 3 si quedan 5 dias o menos para venderlo' do
@items[0].sell_in = 5
it 'decrementa su calidad a 0 si ya no quedan dias para venderlo'
@gilded.update_quality
expect(@items[0].quality).to eq 5
end
it 'decrementa su calidad a 0 si ya no quedan dias para venderlo' do
@items[0].sell_in = 0
@gilded.update_quality
expect(@items[0].quality).to eq 0
end
end
context 'para items conjurados' do
it 'decrementa su calidad en 2'
before do
@items = [Item.new('Conjured item', 10, 4)]
@gilded = GildedRose.new(@items)
end
it 'decrementa su calidad en 2' do
@gilded.update_quality
expect(@items[0].quality).to eq 2
end
end
end