43 lines
1.6 KiB
Python
43 lines
1.6 KiB
Python
|
|
#!/usr/bin/env python3
|
||
|
|
"""Test contacts integration."""
|
||
|
|
import os
|
||
|
|
os.environ.setdefault('DATABASE_URL', 'postgresql://seafare:SF_m0ntana_2026@localhost:5432/seafare_db')
|
||
|
|
import maritime_db as db
|
||
|
|
|
||
|
|
print('=== TEST 1: MAERSK (masked) ===')
|
||
|
|
r = db.search_contacts_in_staging('MAERSK', limit=5, mask=True)
|
||
|
|
for c in r:
|
||
|
|
print(f" {c['role']}: {c['company_name']} | email: {c['email']} | web: {c['website']}")
|
||
|
|
|
||
|
|
print()
|
||
|
|
print('=== TEST 2: MAERSK (unmasked) ===')
|
||
|
|
r = db.search_contacts_in_staging('MAERSK', limit=5, mask=False)
|
||
|
|
for c in r:
|
||
|
|
print(f" {c['role']}: {c['company_name']} | email: {c['email']} | web: {c['website']}")
|
||
|
|
|
||
|
|
print()
|
||
|
|
print('=== TEST 3: MMSI 538003426 (masked) ===')
|
||
|
|
r = db.search_contacts_in_staging('538003426', limit=3, mask=True)
|
||
|
|
for c in r:
|
||
|
|
print(f" {c['role']}: {c['company_name']} | vessel: {c['vessel']} | email: {c['email']}")
|
||
|
|
|
||
|
|
print()
|
||
|
|
print('=== TEST 4: IMO 9224752 (masked) ===')
|
||
|
|
r = db.search_contacts_in_staging('9224752', limit=3, mask=True)
|
||
|
|
for c in r:
|
||
|
|
print(f" {c['role']}: {c['company_name']} | vessel: {c['vessel']} | email: {c['email']}")
|
||
|
|
|
||
|
|
print()
|
||
|
|
print('=== TEST 5: Owner CMB TECH (masked) ===')
|
||
|
|
r = db.search_contacts_in_staging('CMB TECH', limit=5, mask=True)
|
||
|
|
for c in r:
|
||
|
|
print(f" {c['role']}: {c['company_name']} | email: {c['email']} | country: {c['country']}")
|
||
|
|
|
||
|
|
print()
|
||
|
|
print('=== TEST 6: ASCO (legacy contacts table) ===')
|
||
|
|
r = db.search_contacts(query='ASCO', limit=5)
|
||
|
|
for c in r:
|
||
|
|
print(f" {c.get('type','')}: {c.get('company_name','')} | email: {c.get('email','')} | phone: {c.get('phone','')}")
|
||
|
|
|
||
|
|
print('\n=== ALL TESTS DONE ===')
|