EnAccess / EnAccess/OpenPAYGO-python

[Bug]: `DISABLE_PAYG` and `COUNTER_SYNC` are incorrectly decoded as `SET_TIME` in extended token mode

Abierto
#24 0 comentarios 0 reacciones 0 asignados Ver en GitHub
bug
Lenguaje dominante
Python
Estrellas
15
Forks
15
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

### Preflight Checklist

- [x] I have read the [Contributing Guidelines](https://github.com/EnAccess/OpenPAYGO-python/blob/main/CONTRIBUTING.md) for this project, if it exists.
- [x] I agree to follow the [Code of Conduct](https://github.com/EnAccess/OpenPAYGO-python/blob/main/CODE_OF_CONDUCT.md) that this project adheres to.
- [x] I have searched the [issue tracker](https://github.com/EnAccess/OpenPAYGO-python/issues) for a feature request that matches the one I want to file, without success.

### Expected Behavior

When using OpenPAYGO in Extended Token mode I would expect `DISABLE_PAYG` and `COUNTER_SYNC` to be decoded as such.

### Actual Behavior

However, they are decoded as `SET_TIME` Tokens.

### Steps to reproduce

```python
# OpenPAYGO-python
from openpaygo import OpenPAYGOTokenEncoder, TokenType

encoder = OpenPAYGOTokenEncoder()

new_count, final_token = encoder.generate_token(
secret_key="bc41ec9530f6dac86b1a29ab82edc5fb",
count=4,
value=None,
token_type=TokenType.DISABLE_PAYG,
starting_code=516959010,
restricted_digit_set=False,
extended_token=True,
)

print(f"{new_count=}")
print(f"{final_token=}")
```

```sh
new_count=5
final_token='223770960008'
```

```python
# OpenPAYGO-python
from openpaygo import OpenPAYGOTokenDecoder

decoder = OpenPAYGOTokenDecoder()

value, token_type, count, updated_counts = decoder.decode_token(
secret_key="bc41ec9530f6dac86b1a29ab82edc5fb",
starting_code=516959010,
restricted_digit_set=False,
token="223770960008",
count=4,
)

print(f"{value=}")
print(f"{token_type=}")
print(f"{count=}")
print(f"{updated_counts=}")
```

```sh
value=998.0
token_type=2
count=5
updated_counts=None
```

Note that `token_type=2` is wrong.

### What operating system(s) are you using?

macOS

### Additional Information

_No response_

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.