mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-17 15:31:27 +00:00
Added tc : quality should degrades twice as fast
Added fn : common func for update Quality of the items
This commit is contained in:
parent
e318f82ebb
commit
eabc5727c2
@ -1,6 +1,8 @@
|
|||||||
import { expect } from 'chai';
|
import { expect } from 'chai';
|
||||||
import { Item, GildedRose } from '../app/gilded-rose';
|
import { Item, GildedRose } from '../app/gilded-rose';
|
||||||
|
|
||||||
|
const updateQuality = (dataset:Item[]) => new GildedRose(dataset).updateQuality();
|
||||||
|
|
||||||
describe('Gilded Rose', function () {
|
describe('Gilded Rose', function () {
|
||||||
|
|
||||||
// quality of the normal items degrades by 1
|
// quality of the normal items degrades by 1
|
||||||
@ -10,8 +12,7 @@ describe('Gilded Rose', function () {
|
|||||||
new Item('item 2', 45, 21),
|
new Item('item 2', 45, 21),
|
||||||
]
|
]
|
||||||
|
|
||||||
const gildedRose = new GildedRose(dataset);
|
const result = updateQuality(dataset);
|
||||||
const result = gildedRose.updateQuality();
|
|
||||||
|
|
||||||
expect(result[0].name).to.equal('item 1');
|
expect(result[0].name).to.equal('item 1');
|
||||||
expect(result[0].sellIn).to.equal(30);
|
expect(result[0].sellIn).to.equal(30);
|
||||||
@ -21,4 +22,23 @@ describe('Gilded Rose', function () {
|
|||||||
expect(result[1].sellIn).to.equal(44);
|
expect(result[1].sellIn).to.equal(44);
|
||||||
expect(result[1].quality).to.equal(20);
|
expect(result[1].quality).to.equal(20);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Once the sell by date has passed, Quality degrades twice as fast
|
||||||
|
it('quality should degrades twice as fast', function() {
|
||||||
|
const dataset = [
|
||||||
|
new Item('item 1', 0, 10),
|
||||||
|
new Item('item 2', -5, 17),
|
||||||
|
]
|
||||||
|
|
||||||
|
const result = updateQuality(dataset);
|
||||||
|
|
||||||
|
expect(result[0].name).to.equal('item 1');
|
||||||
|
expect(result[0].sellIn).to.equal(-1);
|
||||||
|
expect(result[0].quality).to.equal(8);
|
||||||
|
|
||||||
|
expect(result[1].name).to.equal('item 2');
|
||||||
|
expect(result[1].sellIn).to.equal(-6);
|
||||||
|
expect(result[1].quality).to.equal(15);
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user