def test_get_commands(self): self.request.session.update({ "skills_commands": ["skills"], "items_commands": ["items"], "spells_commands": ["spells"], "other_commands": ["other"] }) commands = Commands(self.request) actual = commands.get_commands() expected = ["skills", "items", "spells", "other"] self.assertEqual(expected, actual)
def test_can_set_other_commands(self): commands = Commands(self.request) commands.set_other({ "location": "Winterhold", "gold": "1", "dragon_souls": "1", "health": "110", "magicka": "120", "stamina": "130", "carry_weight": "100", "movement_speed": "120", "word12345678": "on", "perk87654321": "on" }) expected = [ "player.additem 0000000F 1", "player.modav dragonsouls 1", "player.modav health 110", "player.modav magicka 120", "player.modav stamina 130", "player.modav carryweight 100", "player.setav speedmult 120", "player.teachword 12345678", "player.addperk 87654321", "coc WinterholdExterior01" ] actual = self.request.session.get("other_commands") self.assertEqual(expected, actual)
def skills_view(request): if request.method == "POST": if "race" in request.POST: manage_race_post(request) else: manage_skills_post(request) return redirect("tec:skills") message = MessagesSystem(request).pop_skills() service = SkillsService(request) Commands(request).set_skills(service.commands) return render(request, "the_elder_commands/skills.html", { "service": service, "messages": message, "active": "skills" })
def spells_view(request): if not SelectedPlugins(request).exist(): MessagesSystem(request).append_plugin(NO_PLUGIN_SELECTED_ERROR_MESSAGE) return redirect("tec:plugins") if request.method == "POST": spells = convert_value_post(request) ChosenSpells(request).set(spells) Commands(request).set_spells(spells) if spells: message = COMMANDS_SUCCESS_MESSAGE else: message = SPELLS_COMMANDS_POST_EMPTY_MESSAGE return JsonResponse({"message": message}) message = MessagesSystem(request).pop_spells() return render(request, "the_elder_commands/spells.html", { "active": "spells", "messages": message })
def other_view(request): if not SelectedPlugins(request).exist(): MessagesSystem(request).append_plugin(NO_PLUGIN_SELECTED_ERROR_MESSAGE) return redirect("tec:plugins") if request.method == "POST": variety = convert_value_post(request) ChosenOther(request).set(variety) Commands(request).set_other(variety) if variety: message = COMMANDS_SUCCESS_MESSAGE else: message = OTHER_COMMANDS_POST_EMTPY_MESSAGE return JsonResponse({"message": message}) messages = MessagesSystem(request).pop_other() chosen = ChosenOther(request).get() return render(request, "the_elder_commands/other.html", { "active": "other", "chosen": chosen, "messages": messages })
def reset_commands(request): commands = Commands(request) commands.set_skills([]) commands.set_items({}) commands.set_spells({}) commands.set_other({})
def test_get_commands_can_handle_empty_keys(self): commands = Commands(self.request) actual = commands.get_commands() self.assertEqual([], actual)
def test_can_set_spells_commands(self): commands = Commands(self.request) commands.set_spells({"spell_01": True}) self.assertEqual(self.request.session.get("spells_commands"), ["player.addspell spell_01"])
def test_can_set_items_commands(self): commands = Commands(self.request) commands.set_items({"item_01": "1"}) self.assertEqual(self.request.session.get("items_commands"), ["player.additem item_01 1"])
def test_can_set_skills_commands(self): commands = Commands(self.request) commands.set_skills(["command"]) self.assertEqual(self.request.session.get("skills_commands"), ["command"])
def commands_view(request): commands = Commands(request).get_commands() return render(request, "the_elder_commands/commands.html", {"active": "commands", "commands": commands})
def commands_download_view(request): commands = Commands(request).get_commands() content = "\n".join(commands) encoded = content.encode("utf-8") file = BytesIO(encoded) return FileResponse(file, as_attachment=True, filename="TEC_Commands.txt")