add tests

This commit is contained in:
Mohammad Salah 2025-06-11 09:53:12 +04:00
parent ee129776b7
commit dcb879fa1f

View File

@ -2,12 +2,140 @@ import 'package:test/test.dart';
import 'package:gilded_rose/gilded_rose.dart';
main() {
test('foo', () {
var item = new Item('foo', 0, 0);
var items = <Item>[item];
GildedRose app = new GildedRose(items);
test('foo item', () {
GildedRose app = GildedRose([Item('foo', 0, 0)]);
app.updateQuality();
expect("fixme", app.items[0].name);
var item = app.items[0];
expect(item.quality, 0);
expect(item.sellIn, -1);
expect(item.name, "bar");
});
test('+5 Dexterity Vest', () {
GildedRose app = GildedRose([Item('+5 Dexterity Vest', 10, 20)]);
app.updateQuality();
var item = app.items[0];
expect(item.sellIn, 9);
expect(item.quality, 19);
expect(item.name, '+5 Dexterity Vest');
});
test('Aged Brie', () {
GildedRose app = GildedRose([Item('Aged Brie', 2, 0)]);
app.updateQuality();
var item = app.items[0];
expect(item.sellIn, 1);
expect(item.quality, 1);
expect(item.name, 'Aged Brie');
});
test('Elixir of the Mongoose', () {
GildedRose app = GildedRose([Item('Elixir of the Mongoose', 5, 7)]);
app.updateQuality();
var item = app.items[0];
expect(item.sellIn, 4);
expect(item.quality, 6);
expect(item.name, 'Elixir of the Mongoose');
});
test('Sulfuras, Hand of Ragnaros', () {
GildedRose app = GildedRose([Item('Sulfuras, Hand of Ragnaros', 0, 80)]);
app.updateQuality();
var item = app.items[0];
expect(item.sellIn, 0);
expect(item.quality, 80);
expect(item.name, 'Sulfuras, Hand of Ragnaros');
});
test('Sulfuras, Hand of Ragnaros - 2', () {
GildedRose app = GildedRose([Item('Sulfuras, Hand of Ragnaros', -1, 80)]);
app.updateQuality();
var item = app.items[0];
expect(item.sellIn, -1);
expect(item.quality, 80);
expect(item.name, 'Sulfuras, Hand of Ragnaros');
});
test('Backstage passes to a TAFKAL80ETC concert', () {
GildedRose app =
GildedRose([Item('Backstage passes to a TAFKAL80ETC concert', 15, 20)]);
app.updateQuality();
var item = app.items[0];
expect(item.sellIn, 14);
expect(item.quality, 21);
expect(item.name, 'Backstage passes to a TAFKAL80ETC concert');
});
test('Backstage passes to a TAFKAL80ETC concert - 2', () {
GildedRose app =
GildedRose([Item('Backstage passes to a TAFKAL80ETC concert', 10, 49)]);
app.updateQuality();
var item = app.items[0];
expect(item.sellIn, 9);
expect(item.quality, 50);
expect(item.name, 'Backstage passes to a TAFKAL80ETC concert');
});
test('Backstage passes to a TAFKAL80ETC concert - 3', () {
GildedRose app =
GildedRose([Item('Backstage passes to a TAFKAL80ETC concert', 5, 49)]);
app.updateQuality();
var item = app.items[0];
expect(item.sellIn, 4);
expect(item.quality, 50);
expect(item.name, 'Backstage passes to a TAFKAL80ETC concert');
});
test('Backstage passes to a TAFKAL80ETC concert - quality capped', () {
GildedRose app =
GildedRose([Item('Backstage passes to a TAFKAL80ETC concert', 5, 50)]);
app.updateQuality();
var item = app.items[0];
expect(item.sellIn, 4);
expect(item.quality, 50);
expect(item.name, 'Backstage passes to a TAFKAL80ETC concert');
});
test('Backstage passes to a TAFKAL80ETC concert - value increase by two', () {
GildedRose app =
GildedRose([Item('Backstage passes to a TAFKAL80ETC concert', 9, 20)]);
app.updateQuality();
var item = app.items[0];
expect(item.sellIn, 8);
expect(item.quality, 22);
expect(item.name, 'Backstage passes to a TAFKAL80ETC concert');
});
test('Backstage passes to a TAFKAL80ETC concert - value increase by three',
() {
GildedRose app =
GildedRose([Item('Backstage passes to a TAFKAL80ETC concert', 5, 20)]);
app.updateQuality();
var item = app.items[0];
expect(item.sellIn, 4);
expect(item.quality, 23);
expect(item.name, 'Backstage passes to a TAFKAL80ETC concert');
});
test('Conjured Mana Cake', () {
GildedRose app = GildedRose([Item('Conjured Mana Cake', 3, 6)]);
app.updateQuality();
var item = app.items[0];
expect(item.sellIn, 2);
expect(item.quality, 4);
expect(item.name, 'Conjured Mana Cake');
});
}