codex_test.go 624 B

1234567891011121314151617181920212223242526
  1. package codex
  2. import (
  3. "testing"
  4. "github.com/stretchr/testify/assert"
  5. )
  6. func Test_iso8583_decode(t *testing.T) {
  7. codex := LoadCodex("iso8583.yaml")
  8. t.Logf("Config: %v", codex)
  9. msg := "0800822000000000000004000000000000020623135417005592001005REQ 1"
  10. data := make(map[string]interface{})
  11. pos, err := codex.Decode([]byte(msg), 0, data)
  12. assert.Nil(t, err, "decode err")
  13. assert.Equal(t, 63, pos, "decode pos")
  14. result := map[string]interface{}{
  15. "F000": "0800",
  16. "F007": "0623135417",
  17. "F011": "005592",
  18. "F070": "001",
  19. "F127": "REQ 1",
  20. }
  21. assert.Equal(t, result, data, "decode data")
  22. }