Commit 7f6279df by Owo Sugiana

bin/iso8583_read_raw untuk debug bit structure

1 parent f7a845f9
dist
build
*egg-info
test-*
[main]
module = opensipkd.iso8583.bjb.pbb
import sys
import os
from configparser import ConfigParser
from argparse import ArgumentParser
help_raw = 'Bisa juga dari file atau stdin'
def get_module_object(name):
module_obj = __import__(name)
sub_obj = None
for sub in name.split('.')[1:]:
sub_obj = getattr(sub_obj or module_obj, sub)
return sub_obj
def get_option(argv):
parser = ArgumentParser()
parser.add_argument('conf')
parser.add_argument('--raw', help=help_raw)
return parser.parse_args(argv)
def main(argv=sys.argv[1:]):
option = get_option(argv)
conf_file = option.conf
conf = ConfigParser()
conf.read(conf_file)
if not option.raw:
lines = sys.stdin.readlines()
if not lines:
print('--raw harus diisi')
print(help_raw)
return
raw = lines[0].rstrip('\n')
raw = raw.encode('utf8')
elif os.path.exists(option.raw):
filename = option.raw
with open(filename, 'rb') as f:
raw = f.read()
raw = raw.rstrip(b'\n')
else:
raw = option.raw.encode('utf8')
module_name = conf.get('main', 'module')
module = get_module_object(module_name)
iso = module.doc.Doc(debug=True)
print([raw])
iso.setIsoContent(raw)
......@@ -30,4 +30,9 @@ setup(
packages=find_packages(),
install_requires=requires,
zip_safe=False,
entry_points={
'console_scripts': [
'iso8583_read_raw = opensipkd.iso8583.scripts.read_raw:main',
],
}
)
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!