update
This commit is contained in:
1 parent
1d563b9eec
commit
04fe9716e8
22 files changed
+764
-151
No files matched your search
+49
-6
@@ -185,7 +185,7 @@ func _ready() -> void:
|
||||
main.sfx.muted = true # Tests bleiben still
|
||||
await frames(3)
|
||||
var suite := [test_start, test_menu, test_gamepad_menue, test_booster, test_gegnerauswahl, test_einstellungen,
|
||||
test_kampagne, test_sammlung, test_skilltree, test_cheats, test_deck, test_sprache, test_kampf_steuerung, test_kampf_elemente_und_verschmelzen, test_kampf_grenzen]
|
||||
test_kampagne, test_sammlung, test_skilltree, test_cheats, test_werkstatt, test_deck, test_sprache, test_kampf_steuerung, test_kampf_elemente_und_verschmelzen, test_kampf_grenzen]
|
||||
suite += [test_kampf.bind(3), test_kampf_abbrechen]
|
||||
suite.append(test_profil_zuruecksetzen)
|
||||
var only := OS.get_environment("DINGER_ONLY") # z. B. DINGER_ONLY=test_sammlung,test_kampf
|
||||
@@ -501,13 +501,15 @@ func test_skilltree() -> void:
|
||||
main.save()
|
||||
await click(find_button("Skilltree"))
|
||||
var scr = screen()
|
||||
check(scr is SkillScreen and scr.level_label.text == "Level 3" and scr.points_label.text == "Skillpunkte: 3", "Skilltree: Level 3, drei Punkte")
|
||||
check(scr.learn_buttons.size() == Skills.SKILLS.size() and not scr.learn_buttons["packglueck"].disabled and scr.xp_label.text == "0 / 400 EP bis Level 4", "alle Skills mit Lernen-Knopf, Fortschritt bis Level 4")
|
||||
check(scr.now_labels["packglueck"].text == "Jetzt: Chancen 45/25/15/10/5 %" and scr.next_labels["packglueck"].text == "Nächste Stufe: Chancen 37/28/17/12/6 %", "Wirkung jetzt und nächste Stufe in Zahlen")
|
||||
check(scr is SkillScreen and scr.level_label.text == "Level 3" and scr.points_label.text == "Skillpunkte: 3" and scr.xp_label.text == "0 / 400 EP bis Level 4" and scr.xp_bar.value == 0 and scr.xp_bar.max_value == 400, "Skilltree: Level 3, drei Punkte, Balken leer")
|
||||
check(scr.nodes.size() == Skills.SKILLS.size() and scr.learn_buttons["packglueck"].visible and not scr.learn_buttons["garantie"].visible and scr.state_labels["garantie"].text == "Erst Packglück lernen" and not scr.nodes["garantie"].open, "erste Knoten lernbar, Garantie gesperrt")
|
||||
check(scr.now_labels["packglueck"].text == "Jetzt: Chancen 45/25/15/10/5 %" and scr.next_labels["packglueck"].text == "Nächste: Chancen 37/28/17/12/6 %", "Wirkung jetzt und nächste Stufe in Zahlen")
|
||||
await click(scr.learn_buttons["packglueck"])
|
||||
check(main.profile.skill("packglueck") == 1 and scr.points_label.text == "Skillpunkte: 2" and scr.rank_labels["packglueck"].text == "Stufe 1 / 3", "Packglück gelernt, Punkt verbraucht")
|
||||
check(main.profile.skill("packglueck") == 1 and scr.points_label.text == "Skillpunkte: 2" and scr.nodes["packglueck"].rank == 1 and scr.learn_buttons["garantie"].visible and scr.nodes["garantie"].open, "Packglück gelernt, Garantie offen")
|
||||
await click(scr.learn_buttons["gratisziehen"])
|
||||
check(scr.learn_buttons["gratisziehen"].disabled and scr.rank_labels["gratisziehen"].text == "Stufe 1 / 1" and scr.next_labels["gratisziehen"].text == "Höchste Stufe erreicht", "Freies Ziehen voll: Knopf aus")
|
||||
check(not scr.learn_buttons["gratisziehen"].visible and scr.state_labels["gratisziehen"].text == "Gelernt" and scr.next_labels["gratisziehen"].text == "", "Freies Ziehen voll: Gelernt statt Knopf")
|
||||
await click(scr.learn_buttons["startmana"])
|
||||
check(scr.points_label.text == "Skillpunkte: 0" and not scr.learn_buttons["garantie"].visible and scr.state_labels["garantie"].text == "Kein Skillpunkt frei", "ohne Punkte kein Knopf")
|
||||
await shot("28_skilltree")
|
||||
check(Profile.load_or_new(SAVE).skill("packglueck") == 1, "gespeichert")
|
||||
await click(find_button("Zurück"))
|
||||
@@ -541,6 +543,47 @@ func test_cheats() -> void:
|
||||
check(screen() is MenuScreen, "zurück im Menü")
|
||||
|
||||
|
||||
## Werkstatt: nach Kapitel 5 im Menü; Elemente, Werte, Eigenschaften und Name ergeben Vorschau und Preis.
|
||||
func test_werkstatt() -> void:
|
||||
check(find_button("Werkstatt") == null, "vor Kapitel 5 keine Werkstatt im Menü")
|
||||
main.profile.campaign_stage = 5 * Campaign.STAGES_PER_CHAPTER
|
||||
main.profile.dust = 1000
|
||||
main.save()
|
||||
main.show_screen(MenuScreen.new())
|
||||
await frames(2)
|
||||
check(find_button("Werkstatt") != null, "nach Kapitel 5 steht die Werkstatt im Menü")
|
||||
await click(find_button("Werkstatt"))
|
||||
var scr = screen()
|
||||
check(scr is WorkshopScreen and scr.dust_label.text == "Staub: 1000" and scr.name_box.text == "Eigenbau 1", "Werkstatt geöffnet, Vorschlagsname")
|
||||
await click(scr.element_buttons["Feuer"])
|
||||
await click(scr.element_buttons["Wasser"])
|
||||
scr.attack_slider.value = 3
|
||||
scr.health_slider.value = 2
|
||||
await click(scr.keyword_boxes["Spott"])
|
||||
scr.name_box.text = "Dampfwächter"
|
||||
scr.name_box.text_changed.emit("Dampfwächter")
|
||||
await frames(1)
|
||||
check(scr.elements == ["Feuer", "Wasser"] and scr.keywords == ["Spott"] and scr.info_label.text == "Kosten 4 Mana · Wert 200 · Preis 500 Staub", "Vorschau: Kosten 4, Wert 200, Preis 500: " + scr.info_label.text)
|
||||
check(scr.preview_holder.get_child(0).card.name == "Dampfwächter" and scr.preview_holder.get_child(0).card.cost == 4, "Vorschaukarte zeigt Name und Kosten")
|
||||
await click(scr.element_buttons["Erde"])
|
||||
await click(scr.keyword_boxes["Doppelschlag"])
|
||||
await click(scr.keyword_boxes["Flink"])
|
||||
check(scr.elements == ["Feuer", "Wasser", "Erde"] and scr.keywords == ["Spott", "Flink", "Doppelschlag"] and scr.info_label.text == "Kosten 9 Mana · Wert 400 · Preis 1000 Staub", "drei Elemente, drei Eigenschaften in fester Reihenfolge: " + scr.info_label.text)
|
||||
await shot("30_werkstatt")
|
||||
await click(scr.element_buttons["Erde"])
|
||||
await click(scr.keyword_boxes["Doppelschlag"])
|
||||
await click(scr.keyword_boxes["Flink"])
|
||||
check(scr.elements == ["Feuer", "Wasser"] and scr.keywords == ["Spott"], "wieder abgewählt")
|
||||
await click(find_button("Bauen"))
|
||||
var p: Profile = main.profile
|
||||
check(p.owns("c_1") and p.dust == 500 and "c_1" in p.deck and scr.msg_label.text == "Gebaut: Dampfwächter" and scr.name_box.text == "Eigenbau 2", "gebaut: 500 Staub weg, Karte in Sammlung und Stapel")
|
||||
check(Profile.load_or_new(SAVE).owns("c_1") and Cards.by_id("c_1").keywords == ["Spott"] and Cards.by_id("c_1").elements == ["Feuer", "Wasser"], "gespeichert")
|
||||
await click(find_button("Zurück"))
|
||||
check(screen() is MenuScreen, "zurück im Menü")
|
||||
main.profile.campaign_stage = 0
|
||||
main.save()
|
||||
|
||||
|
||||
## Deck: eigene Karten rein und raus, Auffüllen nach Filter, Speichern. Beginnt mit einem frischen Profil.
|
||||
func test_deck() -> void:
|
||||
main.reset_profile()
|
||||
|
||||
Reference in new issue
Block a user