removed parse_args

This commit is contained in:
2024-02-23 13:15:41 +01:00
parent ebcb8758a3
commit 94f5f83f08
4 changed files with 19 additions and 27 deletions

7
src/ex2_dictionary.md Normal file
View File

@ -0,0 +1,7 @@
!!!autogeneriert!!!
## exercise 2 - dictionary - (0/20)
### a) calculate_price (0/10)
### b) by_amount (0/10)

View File

@ -1,5 +1,8 @@
import os
# DO NOT CHANGE THE IMPORTS!
def calculate_price(articles: dict[str, int], cart: dict[str, int]) -> float:
price = 0
for name, amount in cart.items():
@ -29,5 +32,3 @@ if __name__ == "__main__":
assert by_amount(articles_dict, cart_dict) == {
2: ['apples', 'oranges'], 1: ['lemons']}

View File

@ -1,5 +1,4 @@
import argparse
import math
import sys
from copy import deepcopy
from enum import Enum
@ -160,7 +159,6 @@ def test_sideeffects_by_amount():
if __name__ == '__main__':
verbose, testing, force = tuple(parse_args(sys.argv).values())
parser = argparse.ArgumentParser(
prog='ex2_dictionary.py test',
description='testing for eidp 2023 ex2 dictionaries',
@ -188,14 +186,16 @@ if __name__ == '__main__':
for name, f in vals.items() if callable(f) and hasattr(f, "is_test")])
failed = list(map(lambda m: m[1], filter(
lambda m: m[0] in failed, tests.items())))
points_a = max(10 + sum(map(lambda f: f.minus_points,
filter(lambda f: f.task == Task.A, failed))), 0)
points_b = max(10 + sum(map(lambda f: f.minus_points,
filter(lambda f: f.task == Task.B, failed))), 0)
failed_a = map(lambda f: f.minus_points, filter(
lambda f: f.task == Task.A or f.task == Task.MODULES, failed))
failed_b = map(lambda f: f.minus_points, filter(
lambda f: f.task == Task.B or f.task == Task.MODULES, failed))
points_a = max(10 + sum(failed_a), 0)
points_b = max(10 + sum(failed_b), 0)
msg_a = "\n".join(map(
lambda f: f"- {f.msg} [`{f.minus_points}`]", filter(lambda f: f.task == Task.A, failed)))
msg_b = "\n".join(map(
lambda f: f"- {f.msg} [`{f.minus_points}`]", filter(lambda f: f.task == Task.B, failed)))
lambda f: f"- {f.msg} [`{f.minus_points}`]", failed_a))
msg_b = "\n".join(
map(lambda f: f"- {f.msg} [`{f.minus_points}`]", failed_b))
content = f"""\
!!!autogeneriert!!!
## exercise 2 - dictionary - ({points_a + points_b}/20)

View File

@ -79,19 +79,3 @@ class ResultsCollector:
skipped.append(report.nodeid.split('::')[-1])
return passed, failed, skipped
def parse_args(args: list[str]) -> dict[str, bool]:
arguments = args[1:]
retval = {'verbose': False, 'test': False, 'force': False}
for argument in arguments:
_args = argument[1:] if argument[0] == '-' else argument
for arg in _args:
match arg:
case 'v':
retval['verbose'] = True
case 't':
retval['test'] = True
case 'f':
retval['force'] = True
return retval