Coverage for jutil/management/commands/geo_ip.py: 67%

12 statements  

« prev     ^ index     » next       coverage.py v6.5.0, created at 2022-10-07 16:40 -0500

1import json 

2from django.core.management.base import CommandParser 

3from jutil.command import SafeCommand 

4from jutil.request import get_geo_ip 

5 

6 

7class Command(SafeCommand): 

8 help = "Gets info about IP address" 

9 

10 def add_arguments(self, parser: CommandParser): 

11 parser.add_argument("ip", type=str) 

12 parser.add_argument("--verbose", action="store_true") 

13 

14 def do(self, *args, **kw): 

15 geo_ip = get_geo_ip(kw["ip"], verbose=kw["verbose"]) 

16 self.stdout.write(json.dumps(geo_ip.__dict__, indent=4))