From ad575398a436906331b52b64fd4e62cfc7caf8e7 Mon Sep 17 00:00:00 2001 From: offish Date: Mon, 15 Jun 2026 15:28:11 +0200 Subject: [PATCH] fix conversion for strange parts fixes #23 --- src/tf2_utils/__init__.py | 2 +- src/tf2_utils/item_name.py | 5 ++++- tests/test_schema.py | 2 ++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/tf2_utils/__init__.py b/src/tf2_utils/__init__.py index 3516104..2f222f4 100644 --- a/src/tf2_utils/__init__.py +++ b/src/tf2_utils/__init__.py @@ -1,7 +1,7 @@ # flake8: noqa: F401, F403 __title__ = "tf2-utils" __author__ = "offish" -__version__ = "2.4.0" +__version__ = "2.4.1" __license__ = "MIT" from .currency import CurrencyExchange diff --git a/src/tf2_utils/item_name.py b/src/tf2_utils/item_name.py index d844048..c77f138 100644 --- a/src/tf2_utils/item_name.py +++ b/src/tf2_utils/item_name.py @@ -50,7 +50,7 @@ def has_australium_in_name(name: str) -> bool: def has_strange_in_name(name: str) -> bool: - return "Strange " in name + return "Strange " in name and "Strange Part: " not in name def has_basic_killstreak_in_name(name: str) -> bool: @@ -84,6 +84,9 @@ def get_effect_in_name(name: str) -> int: def get_quality_from_name(name: str) -> int: quality = 6 + if "Strange Part: " in name: + return quality + for part in name.split(" "): if part not in QUALITY_NAMES: continue diff --git a/tests/test_schema.py b/tests/test_schema.py index 5aab6b4..2ee0084 100644 --- a/tests/test_schema.py +++ b/tests/test_schema.py @@ -102,6 +102,7 @@ def test_name_to_sku() -> None: assert schema.name_to_sku("Professional Genuine Original") == "513;1;kt-3" assert schema.name_to_sku("Genuine Texas Ten Gallon") == "94;1" assert schema.name_to_sku("Professional Vintage Lugermorph") == "160;3;kt-3" + assert schema.name_to_sku("Strange Part: Gib Kills") == "6013;6" def test_sku_to_name() -> None: @@ -139,3 +140,4 @@ def test_sku_to_name() -> None: assert schema.sku_to_name("513;1;kt-3") == "Professional Genuine Original" assert schema.sku_to_name("94;1") == "Genuine Texas Ten Gallon" assert schema.sku_to_name("160;3;kt-3") == "Professional Vintage Lugermorph" + assert schema.sku_to_name("6013;6") == "Strange Part: Gib Kills"