@@ -15,11 +15,14 @@ class ServicesTest(TestBase):
1515 def __init__ (self ):
1616 super ().__init__ ()
1717 self .network_dir = Path (os .path .dirname (__file__ )) / "data" / "services"
18+ self .ingress_ip = None
1819
1920 def run_test (self ):
2021 try :
2122 self .setup_network ()
23+ self .get_ingress_ip ()
2224 self .check_fork_observer ()
25+ self .check_extra_services ()
2326 finally :
2427 self .cleanup ()
2528
@@ -29,25 +32,25 @@ def setup_network(self):
2932 self .wait_for_all_tanks_status (target = "running" )
3033 self .wait_for_all_edges ()
3134
32- def check_fork_observer (self ):
33- self .log .info ("Creating chain split" )
34- self .warnet ("bitcoin rpc john createwallet miner" )
35- self .warnet ("bitcoin rpc john -generate 1" )
36-
35+ def get_ingress_ip (self ):
3736 self .log .info ("Waiting for ingress controller" )
3837 wait_for_ingress_controller ()
39-
4038 self .log .info ("Waiting for ingress host" )
41- ingress_ip = None
4239 attempts = 100
43- while not ingress_ip :
44- ingress_ip = get_ingress_ip_or_host ()
40+ while not self . ingress_ip :
41+ self . ingress_ip = get_ingress_ip_or_host ()
4542 attempts -= 1
4643 if attempts < 0 :
4744 raise Exception ("Never got ingress host" )
4845 sleep (1 )
46+
47+ def check_fork_observer (self ):
48+ self .log .info ("Creating chain split" )
49+ self .warnet ("bitcoin rpc john createwallet miner" )
50+ self .warnet ("bitcoin rpc john -generate 1" )
51+
4952 # network id is 0xDEADBE in decimal
50- fo_data_uri = f"http://{ ingress_ip } /fork-observer/api/14593470/data.json"
53+ fo_data_uri = f"http://{ self . ingress_ip } /fork-observer/api/14593470/data.json"
5154
5255 def call_fo_api ():
5356 # if on minikube remember to run `minikube tunnel` for this test to run
@@ -77,6 +80,13 @@ def call_fo_api():
7780 lambda : len (json .loads (self .warnet ("bitcoin rpc george getpeerinfo" ))) > 1
7881 )
7982
83+ def check_extra_services (self ):
84+ self .log .info ("Checking extra web services added to caddy" )
85+ uri = f"http://{ self .ingress_ip } /ringo/rest/chaininfo.json"
86+ rest_data = requests .get (uri )
87+ rest_json = rest_data .json ()
88+ assert rest_json ["chain" ] == "regtest"
89+
8090
8191if __name__ == "__main__" :
8292 test = ServicesTest ()
0 commit comments