. t bash/texttest_fixture.sh temp file -> variable

This commit is contained in:
Nitsan Avni 2024-01-05 09:11:27 +01:00
parent a1e48be19f
commit dc652d4d09

View File

@ -2,11 +2,8 @@
GILDED_ROSE_SCRIPT="./gilded_rose.sh" GILDED_ROSE_SCRIPT="./gilded_rose.sh"
create_initial_items() { # Define initial items as a multi-line string
local temp_file=$(mktemp) initial_items="+5 Dexterity Vest|10|20
cat <<EOF >"$temp_file"
+5 Dexterity Vest|10|20
Aged Brie|2|0 Aged Brie|2|0
Elixir of the Mongoose|5|7 Elixir of the Mongoose|5|7
Sulfuras, Hand of Ragnaros|0|80 Sulfuras, Hand of Ragnaros|0|80
@ -14,25 +11,20 @@ Sulfuras, Hand of Ragnaros|-1|80
Backstage passes to a TAFKAL80ETC concert|15|20 Backstage passes to a TAFKAL80ETC concert|15|20
Backstage passes to a TAFKAL80ETC concert|10|49 Backstage passes to a TAFKAL80ETC concert|10|49
Backstage passes to a TAFKAL80ETC concert|5|49 Backstage passes to a TAFKAL80ETC concert|5|49
Conjured Mana Cake|3|6 Conjured Mana Cake|3|6"
EOF
echo "$temp_file"
}
simulate_days() { simulate_days() {
local days=$1 local days=$1
local items_file=$2 local items="$2"
for ((day = 0; day <= days; day++)); do for ((day = 0; day <= days; day++)); do
echo "-------- day $day --------" echo "-------- day $day --------"
echo "name, sellIn, quality" echo "name, sellIn, quality"
cat "$items_file" | sed 's/|/, /g' echo "$items" | sed 's/|/, /g'
local temp_output=$(mktemp) # Update the items for the next day
cat "$items_file" | bash "$GILDED_ROSE_SCRIPT" >"$temp_output" items=$(echo "$items" | bash "$GILDED_ROSE_SCRIPT")
mv "$temp_output" "$items_file"
echo "" echo ""
done done
@ -40,10 +32,6 @@ simulate_days() {
echo OMGHAI! echo OMGHAI!
ITEMS_FILE=$(create_initial_items)
DAYS_TO_SIMULATE=${1:-2} DAYS_TO_SIMULATE=${1:-2}
simulate_days $DAYS_TO_SIMULATE $ITEMS_FILE simulate_days $DAYS_TO_SIMULATE "$initial_items"
rm "$ITEMS_FILE"