Skip to content

Commit 0884c75

Browse files
committed
feat: add type declarations for express (with backward compability)
1 parent 096f67e commit 0884c75

3 files changed

Lines changed: 24 additions & 3 deletions

File tree

src/kiriminaja/__init__.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
from .client import AsyncKiriminAja, KiriminAja
22
from .config import Env
3-
from .types.enums import InstantService, InstantVehicle
3+
from .types.enums import ExpressService, InstantService, InstantVehicle
44

55
try:
66
from ._version import __version__
@@ -24,6 +24,7 @@
2424
"KiriminAja",
2525
"AsyncKiriminAja",
2626
"Env",
27+
"ExpressService",
2728
"InstantService",
2829
"InstantVehicle",
2930
"PricingExpressPayload",

src/kiriminaja/types/enums.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,3 +20,22 @@ class InstantService(StrEnum):
2020
class InstantVehicle(StrEnum):
2121
BIKE = "motor"
2222
CAR = "mobil"
23+
24+
25+
class ExpressService(StrEnum):
26+
TIKI = "tiki"
27+
POS = "posindonesia"
28+
PAXEL = "paxel"
29+
NINJA = "ninja"
30+
RPX = "rpx"
31+
LION_PARCEL = "lion"
32+
JT_CARGO = "jtcargo"
33+
SENTRAL_CARGO = "sentral"
34+
ANTER_AJA = "anteraja"
35+
NCS = "ncs"
36+
SICEPAT = "sicepat"
37+
SAP = "sap"
38+
ID_EXPRESS = "idx"
39+
JNE = "jne"
40+
JNT = "jnt"
41+
SPX = "spx"

tests/test_client_and_services.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99

1010
from kiriminaja import (
1111
Env,
12+
ExpressService,
1213
InstantPickupItem,
1314
InstantPickupPackage,
1415
InstantPickupPayload,
@@ -123,7 +124,7 @@ def test_pricing_express(self) -> None:
123124
weight=1000,
124125
item_value=50000,
125126
insurance=0,
126-
courier=["jne", "jnt"],
127+
courier=[ExpressService.JNE, "other"],
127128
)
128129
client.coverage_area.pricing_express(payload)
129130
assert "/api/mitra/v6.1/shipping_price" in str(transport.calls[0].url)
@@ -135,7 +136,7 @@ def test_pricing_express(self) -> None:
135136
def test_pricing_instant(self) -> None:
136137
client, transport = _make_client()
137138
payload = PricingInstantPayload(
138-
service=[InstantService.GOSEND],
139+
service=[InstantService.GOSEND, "other"],
139140
item_price=10000,
140141
origin=PricingInstantLocationPayload(lat=-6.2, long=106.8, address="A"),
141142
destination=PricingInstantLocationPayload(lat=-6.21, long=106.81, address="B"),

0 commit comments

Comments
 (0)