Untitled

 avatar
unknown
plain_text
a year ago
792 B
6
Indexable
    def matches_salary_range(self, job: Dict, salari: Union[int, str]) -> bool:
        try:
            small_sall = int(job["min_salary"])
            big_sal = int(job["max_salary"])
            salari = int(salari)

            if small_sall > big_sal:
                raise ValueError

            return small_sall <= salari <= big_sal

        except (ValueError, TypeError, KeyError):
            raise ValueError("Salario invalido")

    def filter_by_salary_range(
        self, jobs: List[dict], salary: Union[str, int]
    ) -> List[Dict]:
        items = []

        for item in jobs:
            try:
                if self.matches_salary_range(item, salary):
                    items.append(item)

            except ValueError:
                continue

        return items
Editor is loading...
Leave a Comment