Merge pull request #6 from codecop/master

Minor additions to JS and PL/SQL
This commit is contained in:
Emily Bache 2014-07-11 20:19:36 +02:00
commit 5a2fcc6bdd
6 changed files with 109 additions and 30 deletions

54
js/TexttestFixture.html Normal file
View File

@ -0,0 +1,54 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Gilded Rose Texttest Fixture</title>
<script type="text/javascript" src="lib/jquery-1.7.1/jquery-1.7.1.js"></script>
<script type="text/javascript" src="src/gilded_rose.js"></script>
<script type="text/javascript">
$( document ).ready(function() {
$('body').append('<p>OMGHAI!</p>');
items.push(new Item('+5 Dexterity Vest', 10, 20));
items.push(new Item('Aged Brie', 2, 0));
items.push(new Item('Elixir of the Mongoose', 5, 7));
items.push(new Item('Sulfuras, Hand of Ragnaros', 0, 80));
items.push(new Item('Sulfuras, Hand of Ragnaros', -1, 80));
items.push(new Item('Backstage passes to a TAFKAL80ETC concert', 15, 20));
items.push(new Item('Backstage passes to a TAFKAL80ETC concert', 10, 49));
items.push(new Item('Backstage passes to a TAFKAL80ETC concert', 5, 49));
// this conjured item does not work properly yet
items.push(new Item('Conjured Mana Cake', 3, 6));
var days = 2;
for (var i = 0; i < days; i++) {
showHeaderFor(i);
showItemsFor(i);
update_quality();
}
function showHeaderFor(day) {
$('body').append('<p>-------- day ' + day + ' --------</p>');
}
function showItemsFor(day) {
$('body').append('<p>name, sellIn, quality</p>');
for (var j = 0; j < items.length; j++) {
var item = items[j];
$('body').append('<p>' + item.name + ', ' + item.sell_in + ', ' + item.quality + '</p>');
}
$('body').append('<br />');
}
});
</script>
</head>
<body>
</body>
</html>

View File

@ -6,13 +6,6 @@ function Item(name, sell_in, quality) {
var items = [] var items = []
items.push(new Item('+5 Dexterity Vest', 10, 20));
items.push(new Item('Aged Brie', 2, 0));
items.push(new Item('Elixir of the Mongoose', 5, 7));
items.push(new Item('Sulfuras, Hand of Ragnaros', 0, 80));
items.push(new Item('Backstage passes to a TAFKAL80ETC concert', 15, 20));
items.push(new Item('Conjured Mana Cake', 3, 6));
function update_quality() { function update_quality() {
for (var i = 0; i < items.length; i++) { for (var i = 0; i < items.length; i++) {
if (items[i].name != 'Aged Brie' && items[i].name != 'Backstage passes to a TAFKAL80ETC concert') { if (items[i].name != 'Aged Brie' && items[i].name != 'Backstage passes to a TAFKAL80ETC concert') {

View File

@ -1,5 +1,14 @@
PROMPT Creating Table 'ITEM' PROMPT Creating Table 'ITEM'
DROP TABLE item;
BEGIN
EXECUTE IMMEDIATE 'DROP TABLE item';
EXCEPTION
WHEN OTHERS THEN
IF SQLCODE != -942 THEN
RAISE;
END IF;
END;
CREATE TABLE item CREATE TABLE item
( (
name VARCHAR2(100) NOT NULL, name VARCHAR2(100) NOT NULL,
@ -7,3 +16,5 @@ CREATE TABLE item
quality NUMBER(6) NOT NULL quality NUMBER(6) NOT NULL
); );
/ /
SHOW ERRORS;

View File

@ -1,5 +1,14 @@
PROMPT Creating Table 'ITEM' with auto-increment primary key 'ID' PROMPT Creating Table 'ITEM' with auto-increment primary key 'ID'
DROP TABLE item;
BEGIN
EXECUTE IMMEDIATE 'DROP TABLE item';
EXCEPTION
WHEN OTHERS THEN
IF SQLCODE != -942 THEN
RAISE;
END IF;
END;
CREATE TABLE item CREATE TABLE item
( (
id NUMBER(6) NOT NULL, id NUMBER(6) NOT NULL,
@ -13,7 +22,15 @@ ALTER TABLE item ADD (
CONSTRAINT item_pk PRIMARY KEY (ID)); CONSTRAINT item_pk PRIMARY KEY (ID));
/ /
DROP SEQUENCE item_id_seq; BEGIN
EXECUTE IMMEDIATE 'DROP SEQUENCE item_id_seq';
EXCEPTION
WHEN OTHERS THEN
IF SQLCODE != -2289 THEN
RAISE;
END IF;
END;
CREATE SEQUENCE item_id_seq CREATE SEQUENCE item_id_seq
INCREMENT BY 1 INCREMENT BY 1
START WITH 1 START WITH 1
@ -29,3 +46,5 @@ BEGIN
SELECT item_id_seq.NEXTVAL INTO :new.id FROM dual; SELECT item_id_seq.NEXTVAL INTO :new.id FROM dual;
END; END;
/ /
SHOW ERRORS;

View File

@ -1,3 +1,5 @@
SET SERVEROUTPUT ON;
DELETE FROM item; DELETE FROM item;
DECLARE DECLARE

View File

@ -13,9 +13,9 @@ BEGIN
l_sell_in := l_item.sell_in; l_sell_in := l_item.sell_in;
l_quality := l_item.quality; l_quality := l_item.quality;
IF l_name != 'Aged Brie' AND l_name != 'Backstage passes to a TAFKAL80ETC concert' THEN IF l_name <> 'Aged Brie' AND l_name <> 'Backstage passes to a TAFKAL80ETC concert' THEN
IF l_quality > 0 THEN IF l_quality > 0 THEN
IF l_name != 'Sulfuras, Hand of Ragnaros' THEN IF l_name <> 'Sulfuras, Hand of Ragnaros' THEN
l_quality := l_quality - 1; l_quality := l_quality - 1;
END IF; END IF;
END IF; END IF;
@ -37,15 +37,15 @@ BEGIN
END IF; END IF;
END IF; END IF;
IF l_name != 'Sulfuras, Hand of Ragnaros' THEN IF l_name <> 'Sulfuras, Hand of Ragnaros' THEN
l_sell_in := l_sell_in - 1; l_sell_in := l_sell_in - 1;
END IF; END IF;
IF l_sell_in < 0 THEN IF l_sell_in < 0 THEN
IF l_name != 'Aged Brie' THEN IF l_name <> 'Aged Brie' THEN
IF l_name != 'Backstage passes to a TAFKAL80ETC concert' THEN IF l_name <> 'Backstage passes to a TAFKAL80ETC concert' THEN
IF l_quality > 0 THEN IF l_quality > 0 THEN
IF l_name != 'Sulfuras, Hand of Ragnaros' THEN IF l_name <> 'Sulfuras, Hand of Ragnaros' THEN
l_quality := l_quality - 1; l_quality := l_quality - 1;
END IF; END IF;
END IF; END IF;