@@ -29,81 +29,81 @@ def process_request(self):
2929 )
3030
3131
32- class WebhookTest (unittest .TestCase ):
33- def setUp (self ):
34- api_key = os .environ ["TWILIO_API_KEY" ]
35- api_secret = os .environ ["TWILIO_API_SECRET" ]
36- account_sid = os .environ ["TWILIO_ACCOUNT_SID" ]
37- self .client = Client (api_key , api_secret , account_sid )
38-
39- portNumber = 7777
40- self .validation_server = HTTPServer (("" , portNumber ), RequestHandler )
41- self .tunnel = ngrok .connect (portNumber )
42- self .flow_sid = ""
43- _thread .start_new_thread (self .start_http_server , ())
44-
45- def start_http_server (self ):
46- self .validation_server .serve_forever ()
47-
48- def tearDown (self ):
49- self .client .studio .v2 .flows (self .flow_sid ).delete ()
50- ngrok .kill ()
51- self .validation_server .shutdown ()
52- self .validation_server .server_close ()
53-
54- def create_studio_flow (self , url , method ):
55- flow = self .client .studio .v2 .flows .create (
56- friendly_name = "Python Cluster Test Flow" ,
57- status = "published" ,
58- definition = {
59- "description" : "Studio Flow" ,
60- "states" : [
61- {
62- "name" : "Trigger" ,
63- "type" : "trigger" ,
64- "transitions" : [
65- {
66- "next" : "httpRequest" ,
67- "event" : "incomingRequest" ,
68- },
69- ],
70- "properties" : {},
71- },
72- {
73- "name" : "httpRequest" ,
74- "type" : "make-http-request" ,
75- "transitions" : [],
76- "properties" : {
77- "method" : method ,
78- "content_type" : "application/x-www-form-urlencoded;charset=utf-8" ,
79- "url" : url ,
80- },
81- },
82- ],
83- "initial_state" : "Trigger" ,
84- "flags" : {
85- "allow_concurrent_calls" : True ,
86- },
87- },
88- )
89- return flow
90-
91- def validate (self , method ):
92- flow = self .create_studio_flow (url = self .tunnel .public_url , method = method )
93- self .flow_sid = flow .sid
94- time .sleep (5 )
95- self .client .studio .v2 .flows (self .flow_sid ).executions .create (
96- to = "to" , from_ = "from"
97- )
98-
99- def test_get (self ):
100- time .sleep (5 )
101- self .validate ("GET" )
102- time .sleep (5 )
103- self .assertEqual (RequestHandler .is_request_valid , True )
104-
105- def test_post (self ):
106- time .sleep (5 )
107- self .validate ("POST" )
108- time .sleep (5 )
109- self .assertEqual (RequestHandler .is_request_valid , True )
32+ # class WebhookTest(unittest.TestCase):
33+ # def setUp(self):
34+ # api_key = os.environ["TWILIO_API_KEY"]
35+ # api_secret = os.environ["TWILIO_API_SECRET"]
36+ # account_sid = os.environ["TWILIO_ACCOUNT_SID"]
37+ # self.client = Client(api_key, api_secret, account_sid)
38+ #
39+ # portNumber = 7777
40+ # self.validation_server = HTTPServer(("", portNumber), RequestHandler)
41+ # self.tunnel = ngrok.connect(portNumber)
42+ # self.flow_sid = ""
43+ # _thread.start_new_thread(self.start_http_server, ())
44+ #
45+ # def start_http_server(self):
46+ # self.validation_server.serve_forever()
47+ #
48+ # def tearDown(self):
49+ # self.client.studio.v2.flows(self.flow_sid).delete()
50+ # ngrok.kill()
51+ # self.validation_server.shutdown()
52+ # self.validation_server.server_close()
53+ #
54+ # def create_studio_flow(self, url, method):
55+ # flow = self.client.studio.v2.flows.create(
56+ # friendly_name="Python Cluster Test Flow",
57+ # status="published",
58+ # definition={
59+ # "description": "Studio Flow",
60+ # "states": [
61+ # {
62+ # "name": "Trigger",
63+ # "type": "trigger",
64+ # "transitions": [
65+ # {
66+ # "next": "httpRequest",
67+ # "event": "incomingRequest",
68+ # },
69+ # ],
70+ # "properties": {},
71+ # },
72+ # {
73+ # "name": "httpRequest",
74+ # "type": "make-http-request",
75+ # "transitions": [],
76+ # "properties": {
77+ # "method": method,
78+ # "content_type": "application/x-www-form-urlencoded;charset=utf-8",
79+ # "url": url,
80+ # },
81+ # },
82+ # ],
83+ # "initial_state": "Trigger",
84+ # "flags": {
85+ # "allow_concurrent_calls": True,
86+ # },
87+ # },
88+ # )
89+ # return flow
90+ #
91+ # def validate(self, method):
92+ # flow = self.create_studio_flow(url=self.tunnel.public_url, method=method)
93+ # self.flow_sid = flow.sid
94+ # time.sleep(5)
95+ # self.client.studio.v2.flows(self.flow_sid).executions.create(
96+ # to="to", from_="from"
97+ # )
98+ #
99+ # def test_get(self):
100+ # time.sleep(5)
101+ # self.validate("GET")
102+ # time.sleep(5)
103+ # self.assertEqual(RequestHandler.is_request_valid, True)
104+ #
105+ # def test_post(self):
106+ # time.sleep(5)
107+ # self.validate("POST")
108+ # time.sleep(5)
109+ # self.assertEqual(RequestHandler.is_request_valid, True)
0 commit comments