Delete plsql directory

This commit is contained in:
Matt Decker 2022-06-26 09:17:57 -05:00 committed by GitHub
parent 472f891a04
commit dfc19dc554
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 0 additions and 229 deletions

View File

@ -1,7 +0,0 @@
PROMPT Creating User 'DOJO'
DROP USER dojo;
CREATE USER dojo IDENTIFIED BY pass
DEFAULT TABLESPACE USERS TEMPORARY TABLESPACE temp;
GRANT RESOURCE TO dojo;
GRANT CONNECT TO dojo;
/

View File

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

View File

@ -1,9 +0,0 @@
CREATE OR REPLACE PROCEDURE new_item(
i_name item.name%TYPE,
i_sell_in item.sell_in%TYPE,
i_quality item.quality%TYPE)
IS
BEGIN
INSERT INTO item (name, sell_in, quality) VALUES (i_name, i_sell_in, i_quality);
END new_item;
/

View File

@ -1,5 +0,0 @@
exec DBMS_SESSION.RESET_PACKAGE;
set serveroutput on;
exec DBMS_OUTPUT.ENABLE(1000000);
exec ut.run(USER||':gilded_rose_tests'||'');

View File

@ -1,78 +0,0 @@
CREATE OR REPLACE PACKAGE BODY texttest IS
co_lf CONSTANT VARCHAR2(1) := CHR(10);
PROCEDURE put_line(p_buffer IN OUT NOCOPY VARCHAR2, p_line VARCHAR2) IS
BEGIN
p_buffer := p_buffer || p_line || co_lf;
END put_line;
PROCEDURE setup IS
BEGIN
DELETE FROM ITEM;
new_item('+5 Dexterity Vest', 10, 20);
new_item('Aged Brie', 2, 0);
new_item('Elixir of the Mongoose', 5, 7);
new_item('Sulfuras, Hand of Ragnaros', 0, 80);
new_item('Sulfuras, Hand of Ragnaros', -1, 80);
new_item('Backstage passes to a TAFKAL80ETC concert', 15, 20);
new_item('Backstage passes to a TAFKAL80ETC concert', 10, 49);
new_item('Backstage passes to a TAFKAL80ETC concert', 5, 49);
-- this conjured item does not work properly yet ;
new_item('Conjured Mana Cake', 3, 6);
END setup;
PROCEDURE main_test IS
v_result VARCHAR2(4000) := '';
v_expected VARCHAR2(4000) := '';
l_days NUMBER(3);
CURSOR c_items IS SELECT name, sell_in, quality FROM item;
l_item c_items%ROWTYPE;
BEGIN
put_line(v_expected, 'OMGHAI!');
put_line(v_expected, '-------- day 0 --------');
put_line(v_expected, 'name, sellIn, quality');
put_line(v_expected, '+5 Dexterity Vest, 10, 20' || co_lf || 'Aged Brie, 2, 0');
put_line(v_expected, 'Elixir of the Mongoose, 5, 7');
put_line(v_expected, 'Sulfuras, Hand of Ragnaros, 0, 80');
put_line(v_expected, 'Sulfuras, Hand of Ragnaros, -1, 80');
put_line(v_expected, 'Backstage passes to a TAFKAL80ETC concert, 15, 20');
put_line(v_expected, 'Backstage passes to a TAFKAL80ETC concert, 10, 49');
put_line(v_expected, 'Backstage passes to a TAFKAL80ETC concert, 5, 49');
put_line(v_expected, 'Conjured Mana Cake, 3, 6');
put_line(v_expected, '-------- day 1 --------');
put_line(v_expected, 'name, sellIn, quality');
put_line(v_expected, '+5 Dexterity Vest, 9, 19');
put_line(v_expected, 'Aged Brie, 1, 1');
put_line(v_expected, 'Elixir of the Mongoose, 4, 6');
put_line(v_expected, 'Sulfuras, Hand of Ragnaros, 0, 80');
put_line(v_expected, 'Sulfuras, Hand of Ragnaros, -1, 80');
put_line(v_expected, 'Backstage passes to a TAFKAL80ETC concert, 14, 21');
put_line(v_expected, 'Backstage passes to a TAFKAL80ETC concert, 9, 50');
put_line(v_expected, 'Backstage passes to a TAFKAL80ETC concert, 4, 50');
put_line(v_expected, 'Conjured Mana Cake, 2, 5');
put_line(v_result, 'OMGHAI!');
l_days := 2;
FOR i IN 0 .. l_days - 1
LOOP
put_line(v_result, '-------- day ' || TO_CHAR(i) || ' --------');
put_line(v_result, 'name, sellIn, quality');
FOR l_item IN c_items
LOOP
put_line(v_result, l_item.name || ', ' || l_item.sell_in || ', ' || l_item.quality);
END LOOP;
update_quality();
END LOOP;
ut.expect(v_result).to_equal(v_expected);
END;
END texttest;
/

View File

@ -1,12 +0,0 @@
CREATE OR REPLACE PACKAGE texttest IS
-- %suite(texttest)
-- %suitepath(gilded_rose_tests)
-- %rollback(manual)
-- %beforeall
PROCEDURE setup;
-- %test(main test)
PROCEDURE main_test;
END texttest;
/

View File

@ -1,66 +0,0 @@
CREATE OR REPLACE PROCEDURE update_quality
IS
CURSOR c_items IS
SELECT name, sell_in, quality FROM item FOR UPDATE;
l_item c_items%ROWTYPE;
l_name item.name%TYPE;
l_sell_in item.sell_in%TYPE;
l_quality item.quality%TYPE;
BEGIN
FOR l_item IN c_items
LOOP
l_name := l_item.name;
l_sell_in := l_item.sell_in;
l_quality := l_item.quality;
IF l_name <> 'Aged Brie' AND l_name <> 'Backstage passes to a TAFKAL80ETC concert' THEN
IF l_quality > 0 THEN
IF l_name <> 'Sulfuras, Hand of Ragnaros' THEN
l_quality := l_quality - 1;
END IF;
END IF;
ELSE
IF (l_quality < 50) THEN
l_quality := l_quality + 1;
IF l_name = 'Backstage passes to a TAFKAL80ETC concert' THEN
IF l_sell_in < 11 THEN
IF l_quality < 50 THEN
l_quality := l_quality + 1;
END IF;
END IF;
IF l_sell_in < 6 THEN
IF l_quality < 50 THEN
l_quality := l_quality + 1;
END IF;
END IF;
END IF;
END IF;
END IF;
IF l_name <> 'Sulfuras, Hand of Ragnaros' THEN
l_sell_in := l_sell_in - 1;
END IF;
IF l_sell_in < 0 THEN
IF l_name <> 'Aged Brie' THEN
IF l_name <> 'Backstage passes to a TAFKAL80ETC concert' THEN
IF l_quality > 0 THEN
IF l_name <> 'Sulfuras, Hand of Ragnaros' THEN
l_quality := l_quality - 1;
END IF;
END IF;
ELSE
l_quality := l_quality - l_quality;
END IF;
ELSE
IF l_quality < 50 THEN
l_quality := l_quality + 1;
END IF;
END IF;
END IF;
UPDATE item
SET name = l_name, sell_in = l_sell_in, quality = l_quality WHERE CURRENT OF c_items;
END LOOP;
END update_quality;
/

View File

@ -1,19 +0,0 @@
CREATE OR REPLACE PACKAGE BODY ut_update_quality IS
PROCEDURE cleanup_before_each IS
BEGIN
DELETE FROM item;
END;
PROCEDURE ut_foo IS
l_name item.name%TYPE;
BEGIN
new_item('foo', 0, 0);
update_quality();
SELECT name INTO l_name FROM item;
ut.expect(l_name, a_message => 'name did change').to_equal('fixme');
END ut_foo;
END ut_update_quality;
/

View File

@ -1,13 +0,0 @@
CREATE OR REPLACE PACKAGE ut_update_quality
IS
-- %suite(UT_REGRESSION_TEST)
-- %suitepath(gilded_rose_tests)
-- %rollback(manual)
-- %beforeeach
PROCEDURE cleanup_before_each;
-- %test(Foo test)
PROCEDURE ut_foo;
END ut_update_quality;
/