ngrok-api 0.15.0 → 0.18.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (395) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +1 -1
  3. data/doc/NgrokAPI/Client.html +325 -267
  4. data/doc/NgrokAPI/Error.html +3 -3
  5. data/doc/NgrokAPI/Errors/NotFoundError.html +3 -3
  6. data/doc/NgrokAPI/Errors.html +3 -3
  7. data/doc/NgrokAPI/HttpClient.html +30 -36
  8. data/doc/NgrokAPI/Models/APIKey.html +3 -3
  9. data/doc/NgrokAPI/Models/AWSAuth.html +3 -3
  10. data/doc/NgrokAPI/Models/AWSCredentials.html +3 -3
  11. data/doc/NgrokAPI/Models/AWSRole.html +3 -3
  12. data/doc/NgrokAPI/Models/AbuseReport.html +3 -3
  13. data/doc/NgrokAPI/Models/AbuseReportHostname.html +3 -3
  14. data/doc/NgrokAPI/Models/AgentIngress.html +1217 -0
  15. data/doc/NgrokAPI/Models/CertificateAuthority.html +3 -3
  16. data/doc/NgrokAPI/Models/Credential.html +3 -3
  17. data/doc/NgrokAPI/Models/Endpoint.html +1431 -0
  18. data/doc/NgrokAPI/Models/{EndpointLogging.html → EndpointBackend.html} +42 -42
  19. data/{docs/NgrokAPI/Models/EndpointLoggingMutate.html → doc/NgrokAPI/Models/EndpointBackendMutate.html} +42 -42
  20. data/doc/NgrokAPI/Models/EndpointCircuitBreaker.html +3 -3
  21. data/doc/NgrokAPI/Models/EndpointCompression.html +3 -3
  22. data/doc/NgrokAPI/Models/EndpointIPPolicy.html +3 -3
  23. data/doc/NgrokAPI/Models/EndpointIPPolicyMutate.html +3 -3
  24. data/doc/NgrokAPI/Models/EndpointMutualTLS.html +3 -3
  25. data/doc/NgrokAPI/Models/EndpointMutualTLSMutate.html +3 -3
  26. data/doc/NgrokAPI/Models/EndpointOAuth.html +3 -3
  27. data/doc/NgrokAPI/Models/EndpointOAuthFacebook.html +3 -3
  28. data/doc/NgrokAPI/Models/EndpointOAuthGitHub.html +3 -3
  29. data/doc/NgrokAPI/Models/EndpointOAuthGoogle.html +3 -3
  30. data/doc/NgrokAPI/Models/EndpointOAuthMicrosoft.html +3 -3
  31. data/doc/NgrokAPI/Models/EndpointOAuthProvider.html +3 -3
  32. data/doc/NgrokAPI/Models/EndpointOIDC.html +3 -3
  33. data/doc/NgrokAPI/Models/EndpointRequestHeaders.html +3 -3
  34. data/doc/NgrokAPI/Models/EndpointResponseHeaders.html +3 -3
  35. data/doc/NgrokAPI/Models/EndpointSAML.html +3 -3
  36. data/doc/NgrokAPI/Models/EndpointSAMLMutate.html +3 -3
  37. data/doc/NgrokAPI/Models/EndpointTLSTermination.html +3 -3
  38. data/doc/NgrokAPI/Models/EndpointTLSTerminationAtEdge.html +617 -0
  39. data/doc/NgrokAPI/Models/EndpointWebhookValidation.html +3 -3
  40. data/doc/NgrokAPI/Models/EndpointWebsocketTCPConverter.html +543 -0
  41. data/doc/NgrokAPI/Models/EventDestination.html +7 -7
  42. data/doc/NgrokAPI/Models/EventSource.html +3 -3
  43. data/doc/NgrokAPI/Models/EventSourceList.html +3 -3
  44. data/doc/NgrokAPI/Models/EventSourceReplace.html +3 -3
  45. data/doc/NgrokAPI/Models/EventSubscription.html +3 -3
  46. data/doc/NgrokAPI/Models/EventTarget.html +3 -3
  47. data/doc/NgrokAPI/Models/EventTargetCloudwatchLogs.html +3 -3
  48. data/doc/NgrokAPI/Models/EventTargetFirehose.html +3 -3
  49. data/doc/NgrokAPI/Models/EventTargetKinesis.html +3 -3
  50. data/doc/NgrokAPI/Models/FailoverBackend.html +1075 -0
  51. data/doc/NgrokAPI/Models/HTTPResponseBackend.html +1231 -0
  52. data/{docs/NgrokAPI/Models/EventStream.html → doc/NgrokAPI/Models/HTTPSEdge.html} +119 -119
  53. data/doc/NgrokAPI/Models/{EndpointConfiguration.html → HTTPSEdgeRoute.html} +203 -265
  54. data/doc/NgrokAPI/Models/IPPolicy.html +3 -3
  55. data/doc/NgrokAPI/Models/IPPolicyRule.html +97 -23
  56. data/doc/NgrokAPI/Models/IPRestriction.html +3 -3
  57. data/doc/NgrokAPI/Models/Listable.html +3 -3
  58. data/doc/NgrokAPI/Models/Ref.html +3 -3
  59. data/doc/NgrokAPI/Models/ReservedAddr.html +3 -3
  60. data/doc/NgrokAPI/Models/ReservedDomain.html +3 -3
  61. data/doc/NgrokAPI/Models/ReservedDomainCertJob.html +3 -3
  62. data/doc/NgrokAPI/Models/ReservedDomainCertPolicy.html +3 -3
  63. data/doc/NgrokAPI/Models/ReservedDomainCertStatus.html +3 -3
  64. data/doc/NgrokAPI/Models/SSHCertificateAuthority.html +3 -3
  65. data/doc/NgrokAPI/Models/SSHCredential.html +3 -3
  66. data/doc/NgrokAPI/Models/SSHHostCertificate.html +3 -3
  67. data/doc/NgrokAPI/Models/SSHUserCertificate.html +3 -3
  68. data/doc/NgrokAPI/Models/TCPEdge.html +1235 -0
  69. data/doc/NgrokAPI/Models/TLSCertificate.html +3 -3
  70. data/doc/NgrokAPI/Models/TLSCertificateSANs.html +3 -3
  71. data/doc/NgrokAPI/Models/TLSEdge.html +1395 -0
  72. data/doc/NgrokAPI/Models/Tunnel.html +314 -18
  73. data/doc/NgrokAPI/Models/TunnelGroupBackend.html +1149 -0
  74. data/doc/NgrokAPI/Models/TunnelSession.html +3 -3
  75. data/doc/NgrokAPI/Models/{IPWhitelistEntry.html → WeightedBackend.html} +80 -74
  76. data/doc/NgrokAPI/Models.html +5 -5
  77. data/doc/NgrokAPI/PagedIterator.html +3 -3
  78. data/doc/NgrokAPI/Services/APIKeysClient.html +99 -149
  79. data/doc/NgrokAPI/Services/AbuseReportsClient.html +19 -33
  80. data/doc/NgrokAPI/Services/{IPWhitelistClient.html → AgentIngressesClient.html} +209 -265
  81. data/doc/NgrokAPI/Services/CertificateAuthoritiesClient.html +104 -156
  82. data/doc/NgrokAPI/Services/CredentialsClient.html +108 -164
  83. data/doc/NgrokAPI/Services/EdgeRouteBackendModuleClient.html +1153 -0
  84. data/{docs/NgrokAPI/Services/EndpointCircuitBreakerModuleClient.html → doc/NgrokAPI/Services/EdgeRouteCircuitBreakerModuleClient.html} +177 -95
  85. data/doc/NgrokAPI/Services/{EndpointCompressionModuleClient.html → EdgeRouteCompressionModuleClient.html} +177 -95
  86. data/doc/NgrokAPI/Services/EdgeRouteIPRestrictionModuleClient.html +1153 -0
  87. data/doc/NgrokAPI/Services/EdgeRouteOAuthModuleClient.html +1153 -0
  88. data/{docs/NgrokAPI/Services/EndpointOIDCModuleClient.html → doc/NgrokAPI/Services/EdgeRouteOIDCModuleClient.html} +177 -95
  89. data/doc/NgrokAPI/Services/EdgeRouteRequestHeadersModuleClient.html +1153 -0
  90. data/{docs/NgrokAPI/Services/EndpointResponseHeadersModuleClient.html → doc/NgrokAPI/Services/EdgeRouteResponseHeadersModuleClient.html} +177 -95
  91. data/{docs/NgrokAPI/Services/EndpointSAMLModuleClient.html → doc/NgrokAPI/Services/EdgeRouteSAMLModuleClient.html} +177 -95
  92. data/doc/NgrokAPI/Services/{EndpointWebhookValidationModuleClient.html → EdgeRouteWebhookVerificationModuleClient.html} +177 -95
  93. data/doc/NgrokAPI/Services/EdgeRouteWebsocketTCPConverterModuleClient.html +1153 -0
  94. data/doc/NgrokAPI/Services/{EventStreamsClient.html → EdgesHTTPSClient.html} +248 -353
  95. data/{docs/NgrokAPI/Services/EndpointConfigurationsClient.html → doc/NgrokAPI/Services/EdgesHTTPSRoutesClient.html} +461 -761
  96. data/doc/NgrokAPI/Services/EdgesTCPClient.html +1757 -0
  97. data/doc/NgrokAPI/Services/EdgesTLSClient.html +1847 -0
  98. data/doc/NgrokAPI/Services/EndpointsClient.html +907 -0
  99. data/doc/NgrokAPI/Services/EventDestinationsClient.html +119 -187
  100. data/doc/NgrokAPI/Services/EventSourcesClient.html +95 -157
  101. data/doc/NgrokAPI/Services/EventSubscriptionsClient.html +116 -178
  102. data/doc/NgrokAPI/Services/FailoverBackendsClient.html +1644 -0
  103. data/doc/NgrokAPI/Services/HTTPResponseBackendsClient.html +1744 -0
  104. data/doc/NgrokAPI/Services/{EndpointSAMLModuleClient.html → HTTPSEdgeMutualTLSModuleClient.html} +101 -129
  105. data/doc/NgrokAPI/Services/{EndpointRequestHeadersModuleClient.html → HTTPSEdgeTLSTerminationModuleClient.html} +101 -129
  106. data/doc/NgrokAPI/Services/IPPoliciesClient.html +114 -184
  107. data/doc/NgrokAPI/Services/IPPolicyRulesClient.html +126 -164
  108. data/doc/NgrokAPI/Services/IPRestrictionsClient.html +117 -181
  109. data/doc/NgrokAPI/Services/ReservedAddrsClient.html +117 -473
  110. data/doc/NgrokAPI/Services/ReservedDomainsClient.html +209 -899
  111. data/doc/NgrokAPI/Services/SSHCertificateAuthoritiesClient.html +110 -166
  112. data/doc/NgrokAPI/Services/SSHCredentialsClient.html +111 -169
  113. data/doc/NgrokAPI/Services/SSHHostCertificatesClient.html +111 -171
  114. data/doc/NgrokAPI/Services/SSHUserCertificatesClient.html +111 -175
  115. data/{docs/NgrokAPI/Services/EndpointLoggingModuleClient.html → doc/NgrokAPI/Services/TCPEdgeBackendModuleClient.html} +101 -129
  116. data/{docs/NgrokAPI/Services/EndpointIPPolicyModuleClient.html → doc/NgrokAPI/Services/TCPEdgeIPRestrictionModuleClient.html} +83 -111
  117. data/doc/NgrokAPI/Services/TLSCertificatesClient.html +107 -161
  118. data/doc/NgrokAPI/Services/{EndpointLoggingModuleClient.html → TLSEdgeBackendModuleClient.html} +101 -129
  119. data/doc/NgrokAPI/Services/{EndpointIPPolicyModuleClient.html → TLSEdgeIPRestrictionModuleClient.html} +83 -111
  120. data/{docs/NgrokAPI/Services/EndpointMutualTLSModuleClient.html → doc/NgrokAPI/Services/TLSEdgeMutualTLSModuleClient.html} +83 -111
  121. data/{docs/NgrokAPI/Services/EndpointTLSTerminationModuleClient.html → doc/NgrokAPI/Services/TLSEdgeTLSTerminationModuleClient.html} +83 -111
  122. data/doc/NgrokAPI/Services/TunnelGroupBackendsClient.html +1644 -0
  123. data/doc/NgrokAPI/Services/TunnelSessionsClient.html +87 -135
  124. data/doc/NgrokAPI/Services/TunnelsClient.html +252 -26
  125. data/doc/NgrokAPI/Services/WeightedBackendsClient.html +1644 -0
  126. data/doc/NgrokAPI/Services.html +5 -5
  127. data/doc/NgrokAPI.html +4 -4
  128. data/doc/_index.html +253 -76
  129. data/doc/class_list.html +1 -1
  130. data/doc/file.README.html +3 -3
  131. data/doc/frames.html +1 -1
  132. data/doc/index.html +3 -3
  133. data/doc/method_list.html +3559 -1583
  134. data/doc/top-level-namespace.html +3 -3
  135. data/docs/NgrokAPI/Client.html +325 -267
  136. data/docs/NgrokAPI/Error.html +3 -3
  137. data/docs/NgrokAPI/Errors/NotFoundError.html +3 -3
  138. data/docs/NgrokAPI/Errors.html +3 -3
  139. data/docs/NgrokAPI/HttpClient.html +30 -36
  140. data/docs/NgrokAPI/Models/APIKey.html +3 -3
  141. data/docs/NgrokAPI/Models/AWSAuth.html +3 -3
  142. data/docs/NgrokAPI/Models/AWSCredentials.html +3 -3
  143. data/docs/NgrokAPI/Models/AWSRole.html +3 -3
  144. data/docs/NgrokAPI/Models/AbuseReport.html +3 -3
  145. data/docs/NgrokAPI/Models/AbuseReportHostname.html +3 -3
  146. data/docs/NgrokAPI/Models/AgentIngress.html +1217 -0
  147. data/docs/NgrokAPI/Models/CertificateAuthority.html +3 -3
  148. data/docs/NgrokAPI/Models/Credential.html +3 -3
  149. data/docs/NgrokAPI/Models/Endpoint.html +1431 -0
  150. data/docs/NgrokAPI/Models/{EndpointLogging.html → EndpointBackend.html} +42 -42
  151. data/{doc/NgrokAPI/Models/EndpointLoggingMutate.html → docs/NgrokAPI/Models/EndpointBackendMutate.html} +42 -42
  152. data/docs/NgrokAPI/Models/EndpointCircuitBreaker.html +3 -3
  153. data/docs/NgrokAPI/Models/EndpointCompression.html +3 -3
  154. data/docs/NgrokAPI/Models/EndpointIPPolicy.html +3 -3
  155. data/docs/NgrokAPI/Models/EndpointIPPolicyMutate.html +3 -3
  156. data/docs/NgrokAPI/Models/EndpointMutualTLS.html +3 -3
  157. data/docs/NgrokAPI/Models/EndpointMutualTLSMutate.html +3 -3
  158. data/docs/NgrokAPI/Models/EndpointOAuth.html +3 -3
  159. data/docs/NgrokAPI/Models/EndpointOAuthFacebook.html +3 -3
  160. data/docs/NgrokAPI/Models/EndpointOAuthGitHub.html +3 -3
  161. data/docs/NgrokAPI/Models/EndpointOAuthGoogle.html +3 -3
  162. data/docs/NgrokAPI/Models/EndpointOAuthMicrosoft.html +3 -3
  163. data/docs/NgrokAPI/Models/EndpointOAuthProvider.html +3 -3
  164. data/docs/NgrokAPI/Models/EndpointOIDC.html +3 -3
  165. data/docs/NgrokAPI/Models/EndpointRequestHeaders.html +3 -3
  166. data/docs/NgrokAPI/Models/EndpointResponseHeaders.html +3 -3
  167. data/docs/NgrokAPI/Models/EndpointSAML.html +3 -3
  168. data/docs/NgrokAPI/Models/EndpointSAMLMutate.html +3 -3
  169. data/docs/NgrokAPI/Models/EndpointTLSTermination.html +3 -3
  170. data/docs/NgrokAPI/Models/EndpointTLSTerminationAtEdge.html +617 -0
  171. data/docs/NgrokAPI/Models/EndpointWebhookValidation.html +3 -3
  172. data/docs/NgrokAPI/Models/EndpointWebsocketTCPConverter.html +543 -0
  173. data/docs/NgrokAPI/Models/EventDestination.html +7 -7
  174. data/docs/NgrokAPI/Models/EventSource.html +3 -3
  175. data/docs/NgrokAPI/Models/EventSourceList.html +3 -3
  176. data/docs/NgrokAPI/Models/EventSourceReplace.html +3 -3
  177. data/docs/NgrokAPI/Models/EventSubscription.html +3 -3
  178. data/docs/NgrokAPI/Models/EventTarget.html +3 -3
  179. data/docs/NgrokAPI/Models/EventTargetCloudwatchLogs.html +3 -3
  180. data/docs/NgrokAPI/Models/EventTargetFirehose.html +3 -3
  181. data/docs/NgrokAPI/Models/EventTargetKinesis.html +3 -3
  182. data/docs/NgrokAPI/Models/FailoverBackend.html +1075 -0
  183. data/docs/NgrokAPI/Models/HTTPResponseBackend.html +1231 -0
  184. data/{doc/NgrokAPI/Models/EventStream.html → docs/NgrokAPI/Models/HTTPSEdge.html} +119 -119
  185. data/docs/NgrokAPI/Models/{EndpointConfiguration.html → HTTPSEdgeRoute.html} +203 -265
  186. data/docs/NgrokAPI/Models/IPPolicy.html +3 -3
  187. data/docs/NgrokAPI/Models/IPPolicyRule.html +97 -23
  188. data/docs/NgrokAPI/Models/IPRestriction.html +3 -3
  189. data/docs/NgrokAPI/Models/Listable.html +3 -3
  190. data/docs/NgrokAPI/Models/Ref.html +3 -3
  191. data/docs/NgrokAPI/Models/ReservedAddr.html +3 -3
  192. data/docs/NgrokAPI/Models/ReservedDomain.html +3 -3
  193. data/docs/NgrokAPI/Models/ReservedDomainCertJob.html +3 -3
  194. data/docs/NgrokAPI/Models/ReservedDomainCertPolicy.html +3 -3
  195. data/docs/NgrokAPI/Models/ReservedDomainCertStatus.html +3 -3
  196. data/docs/NgrokAPI/Models/SSHCertificateAuthority.html +3 -3
  197. data/docs/NgrokAPI/Models/SSHCredential.html +3 -3
  198. data/docs/NgrokAPI/Models/SSHHostCertificate.html +3 -3
  199. data/docs/NgrokAPI/Models/SSHUserCertificate.html +3 -3
  200. data/docs/NgrokAPI/Models/TCPEdge.html +1235 -0
  201. data/docs/NgrokAPI/Models/TLSCertificate.html +3 -3
  202. data/docs/NgrokAPI/Models/TLSCertificateSANs.html +3 -3
  203. data/docs/NgrokAPI/Models/TLSEdge.html +1395 -0
  204. data/docs/NgrokAPI/Models/Tunnel.html +314 -18
  205. data/docs/NgrokAPI/Models/TunnelGroupBackend.html +1149 -0
  206. data/docs/NgrokAPI/Models/TunnelSession.html +3 -3
  207. data/docs/NgrokAPI/Models/{IPWhitelistEntry.html → WeightedBackend.html} +80 -74
  208. data/docs/NgrokAPI/Models.html +5 -5
  209. data/docs/NgrokAPI/PagedIterator.html +3 -3
  210. data/docs/NgrokAPI/Services/APIKeysClient.html +99 -149
  211. data/docs/NgrokAPI/Services/AbuseReportsClient.html +19 -33
  212. data/docs/NgrokAPI/Services/{IPWhitelistClient.html → AgentIngressesClient.html} +209 -265
  213. data/docs/NgrokAPI/Services/CertificateAuthoritiesClient.html +104 -156
  214. data/docs/NgrokAPI/Services/CredentialsClient.html +108 -164
  215. data/docs/NgrokAPI/Services/EdgeRouteBackendModuleClient.html +1153 -0
  216. data/{doc/NgrokAPI/Services/EndpointCircuitBreakerModuleClient.html → docs/NgrokAPI/Services/EdgeRouteCircuitBreakerModuleClient.html} +177 -95
  217. data/docs/NgrokAPI/Services/{EndpointCompressionModuleClient.html → EdgeRouteCompressionModuleClient.html} +177 -95
  218. data/docs/NgrokAPI/Services/EdgeRouteIPRestrictionModuleClient.html +1153 -0
  219. data/docs/NgrokAPI/Services/EdgeRouteOAuthModuleClient.html +1153 -0
  220. data/docs/NgrokAPI/Services/EdgeRouteOIDCModuleClient.html +1153 -0
  221. data/docs/NgrokAPI/Services/EdgeRouteRequestHeadersModuleClient.html +1153 -0
  222. data/{doc/NgrokAPI/Services/EndpointResponseHeadersModuleClient.html → docs/NgrokAPI/Services/EdgeRouteResponseHeadersModuleClient.html} +177 -95
  223. data/docs/NgrokAPI/Services/EdgeRouteSAMLModuleClient.html +1153 -0
  224. data/docs/NgrokAPI/Services/{EndpointWebhookValidationModuleClient.html → EdgeRouteWebhookVerificationModuleClient.html} +177 -95
  225. data/docs/NgrokAPI/Services/EdgeRouteWebsocketTCPConverterModuleClient.html +1153 -0
  226. data/docs/NgrokAPI/Services/{EventStreamsClient.html → EdgesHTTPSClient.html} +248 -353
  227. data/{doc/NgrokAPI/Services/EndpointConfigurationsClient.html → docs/NgrokAPI/Services/EdgesHTTPSRoutesClient.html} +461 -761
  228. data/docs/NgrokAPI/Services/EdgesTCPClient.html +1757 -0
  229. data/docs/NgrokAPI/Services/EdgesTLSClient.html +1847 -0
  230. data/docs/NgrokAPI/Services/EndpointsClient.html +907 -0
  231. data/docs/NgrokAPI/Services/EventDestinationsClient.html +119 -187
  232. data/docs/NgrokAPI/Services/EventSourcesClient.html +95 -157
  233. data/docs/NgrokAPI/Services/EventSubscriptionsClient.html +116 -178
  234. data/docs/NgrokAPI/Services/FailoverBackendsClient.html +1644 -0
  235. data/docs/NgrokAPI/Services/HTTPResponseBackendsClient.html +1744 -0
  236. data/{doc/NgrokAPI/Services/EndpointOIDCModuleClient.html → docs/NgrokAPI/Services/HTTPSEdgeMutualTLSModuleClient.html} +101 -129
  237. data/docs/NgrokAPI/Services/{EndpointRequestHeadersModuleClient.html → HTTPSEdgeTLSTerminationModuleClient.html} +101 -129
  238. data/docs/NgrokAPI/Services/IPPoliciesClient.html +114 -184
  239. data/docs/NgrokAPI/Services/IPPolicyRulesClient.html +126 -164
  240. data/docs/NgrokAPI/Services/IPRestrictionsClient.html +117 -181
  241. data/docs/NgrokAPI/Services/ReservedAddrsClient.html +117 -473
  242. data/docs/NgrokAPI/Services/ReservedDomainsClient.html +209 -899
  243. data/docs/NgrokAPI/Services/SSHCertificateAuthoritiesClient.html +110 -166
  244. data/docs/NgrokAPI/Services/SSHCredentialsClient.html +111 -169
  245. data/docs/NgrokAPI/Services/SSHHostCertificatesClient.html +111 -171
  246. data/docs/NgrokAPI/Services/SSHUserCertificatesClient.html +111 -175
  247. data/{doc/NgrokAPI/Services/EndpointOAuthModuleClient.html → docs/NgrokAPI/Services/TCPEdgeBackendModuleClient.html} +101 -129
  248. data/docs/NgrokAPI/Services/TCPEdgeIPRestrictionModuleClient.html +1043 -0
  249. data/docs/NgrokAPI/Services/TLSCertificatesClient.html +107 -161
  250. data/docs/NgrokAPI/Services/{EndpointOAuthModuleClient.html → TLSEdgeBackendModuleClient.html} +101 -129
  251. data/docs/NgrokAPI/Services/TLSEdgeIPRestrictionModuleClient.html +1043 -0
  252. data/{doc/NgrokAPI/Services/EndpointMutualTLSModuleClient.html → docs/NgrokAPI/Services/TLSEdgeMutualTLSModuleClient.html} +83 -111
  253. data/{doc/NgrokAPI/Services/EndpointTLSTerminationModuleClient.html → docs/NgrokAPI/Services/TLSEdgeTLSTerminationModuleClient.html} +83 -111
  254. data/docs/NgrokAPI/Services/TunnelGroupBackendsClient.html +1644 -0
  255. data/docs/NgrokAPI/Services/TunnelSessionsClient.html +87 -135
  256. data/docs/NgrokAPI/Services/TunnelsClient.html +252 -26
  257. data/docs/NgrokAPI/Services/WeightedBackendsClient.html +1644 -0
  258. data/docs/NgrokAPI/Services.html +5 -5
  259. data/docs/NgrokAPI.html +4 -4
  260. data/docs/_index.html +253 -76
  261. data/docs/class_list.html +1 -1
  262. data/docs/file.README.html +3 -3
  263. data/docs/frames.html +1 -1
  264. data/docs/index.html +3 -3
  265. data/docs/method_list.html +3559 -1583
  266. data/docs/top-level-namespace.html +3 -3
  267. data/lib/ngrokapi/client.rb +52 -37
  268. data/lib/ngrokapi/http_client.rb +1 -4
  269. data/lib/ngrokapi/models/{ip_whitelist_entry.rb → agent_ingress.rb} +13 -9
  270. data/lib/ngrokapi/models/endpoint.rb +49 -0
  271. data/lib/ngrokapi/models/{endpoint_logging.rb → endpoint_backend.rb} +3 -3
  272. data/lib/ngrokapi/models/{endpoint_logging_mutate.rb → endpoint_backend_mutate.rb} +3 -3
  273. data/lib/ngrokapi/models/endpoint_tls_termination_at_edge.rb +27 -0
  274. data/lib/ngrokapi/models/endpoint_websocket_tcp_converter.rb +25 -0
  275. data/lib/ngrokapi/models/event_destination.rb +1 -2
  276. data/lib/ngrokapi/models/{event_stream.rb → failover_backend.rb} +15 -27
  277. data/lib/ngrokapi/models/http_response_backend.rb +71 -0
  278. data/lib/ngrokapi/models/https_edge.rb +80 -0
  279. data/lib/ngrokapi/models/{endpoint_configuration.rb → https_edge_route.rb} +56 -53
  280. data/lib/ngrokapi/models/ip_policy_rule.rb +3 -1
  281. data/lib/ngrokapi/models/tcp_edge.rb +78 -0
  282. data/lib/ngrokapi/models/tls_edge.rb +88 -0
  283. data/lib/ngrokapi/models/tunnel.rb +9 -1
  284. data/lib/ngrokapi/models/tunnel_group_backend.rb +67 -0
  285. data/lib/ngrokapi/models/weighted_backend.rb +65 -0
  286. data/lib/ngrokapi/services/abuse_reports_client.rb +3 -10
  287. data/lib/ngrokapi/services/agent_ingresses_client.rb +206 -0
  288. data/lib/ngrokapi/services/api_keys_client.rb +11 -36
  289. data/lib/ngrokapi/services/certificate_authorities_client.rb +11 -37
  290. data/lib/ngrokapi/services/credentials_client.rb +11 -39
  291. data/lib/ngrokapi/services/edge_route_backend_module_client.rb +120 -0
  292. data/lib/ngrokapi/services/{endpoint_circuit_breaker_module_client.rb → edge_route_circuit_breaker_module_client.rb} +37 -39
  293. data/lib/ngrokapi/services/{endpoint_compression_module_client.rb → edge_route_compression_module_client.rb} +37 -39
  294. data/lib/ngrokapi/services/edge_route_ip_restriction_module_client.rb +120 -0
  295. data/lib/ngrokapi/services/{endpoint_o_auth_module_client.rb → edge_route_o_auth_module_client.rb} +37 -39
  296. data/lib/ngrokapi/services/{endpoint_oidc_module_client.rb → edge_route_oidc_module_client.rb} +37 -39
  297. data/lib/ngrokapi/services/{endpoint_request_headers_module_client.rb → edge_route_request_headers_module_client.rb} +37 -39
  298. data/lib/ngrokapi/services/{endpoint_response_headers_module_client.rb → edge_route_response_headers_module_client.rb} +37 -39
  299. data/lib/ngrokapi/services/{endpoint_saml_module_client.rb → edge_route_saml_module_client.rb} +37 -39
  300. data/lib/ngrokapi/services/{endpoint_webhook_validation_module_client.rb → edge_route_webhook_verification_module_client.rb} +37 -39
  301. data/lib/ngrokapi/services/edge_route_websocket_tcp_converter_module_client.rb +120 -0
  302. data/lib/ngrokapi/services/edges_https_client.rb +227 -0
  303. data/lib/ngrokapi/services/edges_https_routes_client.rb +244 -0
  304. data/lib/ngrokapi/services/edges_tcp_client.rb +227 -0
  305. data/lib/ngrokapi/services/edges_tls_client.rb +239 -0
  306. data/lib/ngrokapi/services/endpoints_client.rb +114 -0
  307. data/lib/ngrokapi/services/event_destinations_client.rb +13 -49
  308. data/lib/ngrokapi/services/event_sources_client.rb +9 -40
  309. data/lib/ngrokapi/services/event_subscriptions_client.rb +14 -45
  310. data/lib/ngrokapi/services/failover_backends_client.rb +214 -0
  311. data/lib/ngrokapi/services/http_response_backends_client.rb +199 -0
  312. data/lib/ngrokapi/services/https_edge_mutual_tls_module_client.rb +108 -0
  313. data/lib/ngrokapi/services/https_edge_tls_termination_module_client.rb +108 -0
  314. data/lib/ngrokapi/services/ip_policies_client.rb +11 -39
  315. data/lib/ngrokapi/services/ip_policy_rules_client.rb +13 -40
  316. data/lib/ngrokapi/services/ip_restrictions_client.rb +12 -44
  317. data/lib/ngrokapi/services/reserved_addrs_client.rb +11 -81
  318. data/lib/ngrokapi/services/reserved_domains_client.rb +15 -144
  319. data/lib/ngrokapi/services/ssh_certificate_authorities_client.rb +11 -39
  320. data/lib/ngrokapi/services/ssh_credentials_client.rb +11 -40
  321. data/lib/ngrokapi/services/ssh_host_certificates_client.rb +11 -41
  322. data/lib/ngrokapi/services/ssh_user_certificates_client.rb +11 -43
  323. data/lib/ngrokapi/services/{endpoint_logging_module_client.rb → tcp_edge_backend_module_client.rb} +31 -45
  324. data/lib/ngrokapi/services/{endpoint_ip_policy_module_client.rb → tcp_edge_ip_restriction_module_client.rb} +21 -35
  325. data/lib/ngrokapi/services/tls_certificates_client.rb +11 -38
  326. data/lib/ngrokapi/services/tls_edge_backend_module_client.rb +108 -0
  327. data/lib/ngrokapi/services/tls_edge_ip_restriction_module_client.rb +108 -0
  328. data/lib/ngrokapi/services/{endpoint_mutual_tls_module_client.rb → tls_edge_mutual_tls_module_client.rb} +21 -35
  329. data/lib/ngrokapi/services/{endpoint_tls_termination_module_client.rb → tls_edge_tls_termination_module_client.rb} +21 -35
  330. data/lib/ngrokapi/services/{ip_whitelist_client.rb → tunnel_group_backends_client.rb} +70 -93
  331. data/lib/ngrokapi/services/tunnel_sessions_client.rb +12 -36
  332. data/lib/ngrokapi/services/tunnels_client.rb +39 -10
  333. data/lib/ngrokapi/services/weighted_backends_client.rb +214 -0
  334. data/lib/ngrokapi/version.rb +1 -1
  335. data/lib/ngrokapi.rb +1 -1
  336. data/ngrok-api.gemspec +1 -1
  337. data/spec/ngrokapi/client_spec.rb +50 -29
  338. data/spec/ngrokapi/models/agent_ingress_spec.rb +42 -0
  339. data/spec/ngrokapi/models/endpoint_backend_mutate_spec.rb +21 -0
  340. data/spec/ngrokapi/models/endpoint_backend_spec.rb +21 -0
  341. data/spec/ngrokapi/models/endpoint_spec.rb +21 -0
  342. data/spec/ngrokapi/models/endpoint_tls_termination_at_edge_spec.rb +21 -0
  343. data/spec/ngrokapi/models/endpoint_websocket_tcp_converter_spec.rb +21 -0
  344. data/spec/ngrokapi/models/failover_backend_spec.rb +45 -0
  345. data/spec/ngrokapi/models/http_response_backend_spec.rb +51 -0
  346. data/spec/ngrokapi/models/https_edge_route_spec.rb +81 -0
  347. data/spec/ngrokapi/models/https_edge_spec.rb +51 -0
  348. data/spec/ngrokapi/models/tcp_edge_spec.rb +51 -0
  349. data/spec/ngrokapi/models/tls_edge_spec.rb +57 -0
  350. data/spec/ngrokapi/models/tunnel_group_backend_spec.rb +45 -0
  351. data/spec/ngrokapi/models/weighted_backend_spec.rb +45 -0
  352. data/spec/ngrokapi/services/{ip_whitelist_client_spec.rb → agent_ingresses_client_spec.rb} +49 -49
  353. data/spec/ngrokapi/services/edge_route_backend_module_client_spec.rb +139 -0
  354. data/spec/ngrokapi/services/{endpoint_circuit_breaker_module_client_spec.rb → edge_route_circuit_breaker_module_client_spec.rb} +31 -17
  355. data/spec/ngrokapi/services/{endpoint_compression_module_client_spec.rb → edge_route_compression_module_client_spec.rb} +31 -17
  356. data/spec/ngrokapi/services/edge_route_ip_restriction_module_client_spec.rb +139 -0
  357. data/spec/ngrokapi/services/{endpoint_o_auth_module_client_spec.rb → edge_route_o_auth_module_client_spec.rb} +31 -17
  358. data/spec/ngrokapi/services/{endpoint_oidc_module_client_spec.rb → edge_route_oidc_module_client_spec.rb} +31 -17
  359. data/spec/ngrokapi/services/{endpoint_request_headers_module_client_spec.rb → edge_route_request_headers_module_client_spec.rb} +31 -17
  360. data/spec/ngrokapi/services/{endpoint_response_headers_module_client_spec.rb → edge_route_response_headers_module_client_spec.rb} +31 -17
  361. data/spec/ngrokapi/services/{endpoint_saml_module_client_spec.rb → edge_route_saml_module_client_spec.rb} +31 -17
  362. data/spec/ngrokapi/services/{endpoint_webhook_validation_module_client_spec.rb → edge_route_webhook_verification_module_client_spec.rb} +31 -17
  363. data/spec/ngrokapi/services/edge_route_websocket_tcp_converter_module_client_spec.rb +139 -0
  364. data/spec/ngrokapi/services/{event_streams_client_spec.rb → edges_https_client_spec.rb} +106 -108
  365. data/spec/ngrokapi/services/edges_https_routes_client_spec.rb +241 -0
  366. data/spec/ngrokapi/services/edges_tcp_client_spec.rb +175 -0
  367. data/spec/ngrokapi/services/edges_tls_client_spec.rb +187 -0
  368. data/spec/ngrokapi/services/endpoints_client_spec.rb +57 -0
  369. data/spec/ngrokapi/services/failover_backends_client_spec.rb +163 -0
  370. data/spec/ngrokapi/services/http_response_backends_client_spec.rb +175 -0
  371. data/spec/ngrokapi/services/{endpoint_mutual_tls_module_client_spec.rb → https_edge_mutual_tls_module_client_spec.rb} +17 -17
  372. data/spec/ngrokapi/services/{endpoint_tls_termination_module_client_spec.rb → https_edge_tls_termination_module_client_spec.rb} +17 -17
  373. data/spec/ngrokapi/services/ip_policies_client_spec.rb +0 -1
  374. data/spec/ngrokapi/services/ip_policy_rules_client_spec.rb +3 -1
  375. data/spec/ngrokapi/services/reserved_addrs_client_spec.rb +0 -44
  376. data/spec/ngrokapi/services/reserved_domains_client_spec.rb +0 -88
  377. data/spec/ngrokapi/services/{endpoint_logging_module_client_spec.rb → tcp_edge_backend_module_client_spec.rb} +40 -40
  378. data/spec/ngrokapi/services/{endpoint_ip_policy_module_client_spec.rb → tcp_edge_ip_restriction_module_client_spec.rb} +17 -17
  379. data/spec/ngrokapi/services/tls_edge_backend_module_client_spec.rb +125 -0
  380. data/spec/ngrokapi/services/tls_edge_ip_restriction_module_client_spec.rb +125 -0
  381. data/spec/ngrokapi/services/tls_edge_mutual_tls_module_client_spec.rb +125 -0
  382. data/spec/ngrokapi/services/tls_edge_tls_termination_module_client_spec.rb +125 -0
  383. data/spec/ngrokapi/services/tunnel_group_backends_client_spec.rb +163 -0
  384. data/spec/ngrokapi/services/tunnels_client_spec.rb +36 -0
  385. data/spec/ngrokapi/services/weighted_backends_client_spec.rb +163 -0
  386. data/spec/spec_helper.rb +1389 -1045
  387. metadata +175 -83
  388. data/lib/ngrokapi/services/endpoint_configurations_client.rb +0 -357
  389. data/lib/ngrokapi/services/event_streams_client.rb +0 -259
  390. data/spec/ngrokapi/models/endpoint_configuration_spec.rb +0 -78
  391. data/spec/ngrokapi/models/endpoint_logging_mutate_spec.rb +0 -21
  392. data/spec/ngrokapi/models/endpoint_logging_spec.rb +0 -21
  393. data/spec/ngrokapi/models/event_stream_spec.rb +0 -51
  394. data/spec/ngrokapi/models/ip_whitelist_entry_spec.rb +0 -42
  395. data/spec/ngrokapi/services/endpoint_configurations_client_spec.rb +0 -237
@@ -0,0 +1,241 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe NgrokAPI::Services::EdgesHTTPSRoutesClient do
4
+ let(:base_url) { 'https://api.ngrok.com' }
5
+ let(:path) { '/edges/https/%{edge_id}/routes' }
6
+ let(:not_found) do
7
+ NgrokAPI::Errors::NotFoundError.new(response: https_edge_route_result)
8
+ end
9
+
10
+ before(:each) do
11
+ @client = class_double("HttpClient")
12
+ @edges_https_routes_client = NgrokAPI::Services::EdgesHTTPSRoutesClient.new(client: @client)
13
+ end
14
+
15
+ describe "#create" do
16
+ it "will make a post request and return an instance of NgrokAPI::Models::HTTPSEdgeRoute" do
17
+ path = '/edges/https/%{edge_id}/routes'
18
+ replacements = {
19
+ edge_id: https_edge_route_result["edge_id"],
20
+ }
21
+ data = {}
22
+ data[:match_type] = "New match_type"
23
+ data[:match] = "New match"
24
+ data[:description] = "New description"
25
+ data[:metadata] = "New metadata"
26
+ data[:backend] = "New backend"
27
+ data[:ip_restriction] = "New ip_restriction"
28
+ data[:circuit_breaker] = "New circuit_breaker"
29
+ data[:compression] = "New compression"
30
+ data[:request_headers] = "New request_headers"
31
+ data[:response_headers] = "New response_headers"
32
+ data[:webhook_verification] = "New webhook_verification"
33
+ data[:oauth] = "New oauth"
34
+ data[:saml] = "New saml"
35
+ data[:oidc] = "New oidc"
36
+ data[:websocket_tcp_converter] = "New websocket_tcp_converter"
37
+ expect(@client).to receive(:post).with(path % replacements, data: data).
38
+ and_return(https_edge_route_result)
39
+ result = @edges_https_routes_client.create(
40
+ edge_id: https_edge_route_result["edge_id"],
41
+ match_type: "New match_type",
42
+ match: "New match",
43
+ description: "New description",
44
+ metadata: "New metadata",
45
+ backend: "New backend",
46
+ ip_restriction: "New ip_restriction",
47
+ circuit_breaker: "New circuit_breaker",
48
+ compression: "New compression",
49
+ request_headers: "New request_headers",
50
+ response_headers: "New response_headers",
51
+ webhook_verification: "New webhook_verification",
52
+ oauth: "New oauth",
53
+ saml: "New saml",
54
+ oidc: "New oidc",
55
+ websocket_tcp_converter: "New websocket_tcp_converter"
56
+ )
57
+ expect(result.class).to eq(NgrokAPI::Models::HTTPSEdgeRoute)
58
+ end
59
+ end
60
+
61
+ describe "#get" do
62
+ it "will make a get request and return an instance of NgrokAPI::Models::HTTPSEdgeRoute" do
63
+ path = '/edges/https/%{edge_id}/routes/%{id}'
64
+ replacements = {
65
+ edge_id: https_edge_route_result["edge_id"],
66
+ id: https_edge_route_result["id"],
67
+ }
68
+ data = {}
69
+ expect(@client).to receive(:get).with(path % replacements, data: data).
70
+ and_return(https_edge_route_result)
71
+ result = @edges_https_routes_client.get(
72
+ edge_id: https_edge_route_result["edge_id"],
73
+ id: https_edge_route_result["id"]
74
+ )
75
+ expect(result.class).to eq(NgrokAPI::Models::HTTPSEdgeRoute)
76
+ end
77
+ end
78
+
79
+ describe "#get!" do
80
+ it "will make a get request and return an instance of NgrokAPI::Models::HTTPSEdgeRoute" do
81
+ path = '/edges/https/%{edge_id}/routes/%{id}'
82
+ replacements = {
83
+ edge_id: https_edge_route_result["edge_id"],
84
+ id: https_edge_route_result["id"],
85
+ }
86
+ data = {}
87
+ expect(@client).to receive(:get).with(path % replacements, data: data).
88
+ and_return(https_edge_route_result)
89
+ result = @edges_https_routes_client.get(
90
+ edge_id: https_edge_route_result["edge_id"],
91
+ id: https_edge_route_result["id"]
92
+ )
93
+ expect(result.class).to eq(NgrokAPI::Models::HTTPSEdgeRoute)
94
+ # expect(result.id).to eq(https_edge_route_result["id"])
95
+ end
96
+ end
97
+
98
+ describe "#update" do
99
+ it "will make a patch request and return an instance of NgrokAPI::Models::HTTPSEdgeRoute" do
100
+ path = '/edges/https/%{edge_id}/routes/%{id}'
101
+ replacements = {
102
+ edge_id: https_edge_route_result["edge_id"],
103
+ id: https_edge_route_result["id"],
104
+ }
105
+ data = {}
106
+ data[:match_type] = "New match_type"
107
+ data[:match] = "New match"
108
+ data[:description] = "New description"
109
+ data[:metadata] = "New metadata"
110
+ data[:backend] = "New backend"
111
+ data[:ip_restriction] = "New ip_restriction"
112
+ data[:circuit_breaker] = "New circuit_breaker"
113
+ data[:compression] = "New compression"
114
+ data[:request_headers] = "New request_headers"
115
+ data[:response_headers] = "New response_headers"
116
+ data[:webhook_verification] = "New webhook_verification"
117
+ data[:oauth] = "New oauth"
118
+ data[:saml] = "New saml"
119
+ data[:oidc] = "New oidc"
120
+ data[:websocket_tcp_converter] = "New websocket_tcp_converter"
121
+ expect(@client).to receive(:patch).with(path % replacements, data: data).
122
+ and_return(https_edge_route_result)
123
+ result = @edges_https_routes_client.update(
124
+ edge_id: https_edge_route_result["edge_id"],
125
+ id: https_edge_route_result["id"],
126
+ match_type: "New match_type",
127
+ match: "New match",
128
+ description: "New description",
129
+ metadata: "New metadata",
130
+ backend: "New backend",
131
+ ip_restriction: "New ip_restriction",
132
+ circuit_breaker: "New circuit_breaker",
133
+ compression: "New compression",
134
+ request_headers: "New request_headers",
135
+ response_headers: "New response_headers",
136
+ webhook_verification: "New webhook_verification",
137
+ oauth: "New oauth",
138
+ saml: "New saml",
139
+ oidc: "New oidc",
140
+ websocket_tcp_converter: "New websocket_tcp_converter"
141
+ )
142
+ expect(result.class).to eq(NgrokAPI::Models::HTTPSEdgeRoute)
143
+ end
144
+ end
145
+
146
+ describe "#update!" do
147
+ it "will make a patch request and return an instance of NgrokAPI::Models::HTTPSEdgeRoute" do
148
+ path = '/edges/https/%{edge_id}/routes/%{id}'
149
+ replacements = {
150
+ edge_id: https_edge_route_result["edge_id"],
151
+ id: https_edge_route_result["id"],
152
+ }
153
+ data = {}
154
+ data[:match_type] = "New match_type"
155
+ data[:match] = "New match"
156
+ data[:description] = "New description"
157
+ data[:metadata] = "New metadata"
158
+ data[:backend] = "New backend"
159
+ data[:ip_restriction] = "New ip_restriction"
160
+ data[:circuit_breaker] = "New circuit_breaker"
161
+ data[:compression] = "New compression"
162
+ data[:request_headers] = "New request_headers"
163
+ data[:response_headers] = "New response_headers"
164
+ data[:webhook_verification] = "New webhook_verification"
165
+ data[:oauth] = "New oauth"
166
+ data[:saml] = "New saml"
167
+ data[:oidc] = "New oidc"
168
+ data[:websocket_tcp_converter] = "New websocket_tcp_converter"
169
+ expect(@client).to receive(:patch).with(path % replacements, data: data).
170
+ and_return(https_edge_route_result)
171
+ result = @edges_https_routes_client.update(
172
+ edge_id: https_edge_route_result["edge_id"],
173
+ id: https_edge_route_result["id"],
174
+ match_type: "New match_type",
175
+ match: "New match",
176
+ description: "New description",
177
+ metadata: "New metadata",
178
+ backend: "New backend",
179
+ ip_restriction: "New ip_restriction",
180
+ circuit_breaker: "New circuit_breaker",
181
+ compression: "New compression",
182
+ request_headers: "New request_headers",
183
+ response_headers: "New response_headers",
184
+ webhook_verification: "New webhook_verification",
185
+ oauth: "New oauth",
186
+ saml: "New saml",
187
+ oidc: "New oidc",
188
+ websocket_tcp_converter: "New websocket_tcp_converter"
189
+ )
190
+ expect(result.class).to eq(NgrokAPI::Models::HTTPSEdgeRoute)
191
+ # expect(result.id).to eq(https_edge_route_result["id"])
192
+ end
193
+ end
194
+
195
+ describe "#delete" do
196
+ it "will make a delete request" do
197
+ path = '/edges/https/%{edge_id}/routes/%{id}'
198
+ replacements = {
199
+ edge_id: api_key_result["edge_id"],
200
+ id: api_key_result["id"],
201
+ }
202
+ expect(@client).to receive(:delete).with(path % replacements).and_return(nil)
203
+ @edges_https_routes_client.delete(
204
+ edge_id: api_key_result["edge_id"],
205
+ id: api_key_result["id"]
206
+ )
207
+ end
208
+ end
209
+
210
+ describe "#delete!" do
211
+ it "will make a delete request" do
212
+ path = '/edges/https/%{edge_id}/routes/%{id}'
213
+ replacements = {
214
+ edge_id: api_key_result["edge_id"],
215
+ id: api_key_result["id"],
216
+ }
217
+ expect(@client).to receive(:delete).with(path % replacements, danger: true).and_return(nil)
218
+ @edges_https_routes_client.delete!(
219
+ edge_id: api_key_result["edge_id"],
220
+ id: api_key_result["id"]
221
+ )
222
+ end
223
+
224
+ it "will make a delete request and return NotFoundError if 404" do
225
+ path = '/edges/https/%{edge_id}/routes/%{id}'
226
+ replacements = {
227
+ edge_id: api_key_result["edge_id"],
228
+ id: api_key_result["id"],
229
+ }
230
+ expect do
231
+ expect(@client).to receive(:delete).with(path % replacements, danger: true).
232
+ and_raise(NgrokAPI::Errors::NotFoundError)
233
+ result = @edges_https_routes_client.delete!(
234
+ edge_id: api_key_result["edge_id"],
235
+ id: api_key_result["id"]
236
+ )
237
+ expect(result).to be nil
238
+ end.to raise_error(NgrokAPI::Errors::NotFoundError)
239
+ end
240
+ end
241
+ end
@@ -0,0 +1,175 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe NgrokAPI::Services::EdgesTCPClient do
4
+ let(:base_url) { 'https://api.ngrok.com' }
5
+ let(:path) { '/edges/tcp' }
6
+ let(:not_found) do
7
+ NgrokAPI::Errors::NotFoundError.new(response: tcp_edge_result)
8
+ end
9
+
10
+ before(:each) do
11
+ @client = class_double("HttpClient")
12
+ @edges_tcp_client = NgrokAPI::Services::EdgesTCPClient.new(client: @client)
13
+ end
14
+
15
+ describe "#create" do
16
+ it "will make a post request and return an instance of NgrokAPI::Models::TCPEdge" do
17
+ path = '/edges/tcp'
18
+ replacements = {
19
+ }
20
+ data = {}
21
+ data[:description] = "New description"
22
+ data[:metadata] = "New metadata"
23
+ data[:hostports] = "New hostports"
24
+ data[:backend] = "New backend"
25
+ data[:ip_restriction] = "New ip_restriction"
26
+ expect(@client).to receive(:post).with(path % replacements, data: data).
27
+ and_return(tcp_edge_result)
28
+ result = @edges_tcp_client.create(
29
+ description: "New description",
30
+ metadata: "New metadata",
31
+ hostports: "New hostports",
32
+ backend: "New backend",
33
+ ip_restriction: "New ip_restriction"
34
+ )
35
+ expect(result.class).to eq(NgrokAPI::Models::TCPEdge)
36
+ end
37
+ end
38
+
39
+ describe "#get" do
40
+ it "will make a get request and return an instance of NgrokAPI::Models::TCPEdge" do
41
+ path = '/edges/tcp/%{id}'
42
+ replacements = {
43
+ id: tcp_edge_result["id"],
44
+ }
45
+ data = {}
46
+ expect(@client).to receive(:get).with(path % replacements, data: data).
47
+ and_return(tcp_edge_result)
48
+ result = @edges_tcp_client.get(
49
+ id: tcp_edge_result["id"]
50
+ )
51
+ expect(result.class).to eq(NgrokAPI::Models::TCPEdge)
52
+ end
53
+ end
54
+
55
+ describe "#get!" do
56
+ it "will make a get request and return an instance of NgrokAPI::Models::TCPEdge" do
57
+ path = '/edges/tcp/%{id}'
58
+ replacements = {
59
+ id: tcp_edge_result["id"],
60
+ }
61
+ data = {}
62
+ expect(@client).to receive(:get).with(path % replacements, data: data).
63
+ and_return(tcp_edge_result)
64
+ result = @edges_tcp_client.get(
65
+ id: tcp_edge_result["id"]
66
+ )
67
+ expect(result.class).to eq(NgrokAPI::Models::TCPEdge)
68
+ # expect(result.id).to eq(tcp_edge_result["id"])
69
+ end
70
+ end
71
+
72
+ describe "#list" do
73
+ it "will make a call to list (a GET request) and return a NgrokAPI::Models::Listable" do
74
+ expect(@client).to receive(:list).
75
+ and_return(tcp_edge_results)
76
+ url = base_url + path + "?before_id=" + api_key_result["id"] + "&limit=1"
77
+ result = @edges_tcp_client.list(url: url)
78
+ expect(result.class).to eq(NgrokAPI::Models::Listable)
79
+ end
80
+ end
81
+
82
+ describe "#update" do
83
+ it "will make a patch request and return an instance of NgrokAPI::Models::TCPEdge" do
84
+ path = '/edges/tcp/%{id}'
85
+ replacements = {
86
+ id: tcp_edge_result["id"],
87
+ }
88
+ data = {}
89
+ data[:description] = "New description"
90
+ data[:metadata] = "New metadata"
91
+ data[:hostports] = "New hostports"
92
+ data[:backend] = "New backend"
93
+ data[:ip_restriction] = "New ip_restriction"
94
+ expect(@client).to receive(:patch).with(path % replacements, data: data).
95
+ and_return(tcp_edge_result)
96
+ result = @edges_tcp_client.update(
97
+ id: tcp_edge_result["id"],
98
+ description: "New description",
99
+ metadata: "New metadata",
100
+ hostports: "New hostports",
101
+ backend: "New backend",
102
+ ip_restriction: "New ip_restriction"
103
+ )
104
+ expect(result.class).to eq(NgrokAPI::Models::TCPEdge)
105
+ end
106
+ end
107
+
108
+ describe "#update!" do
109
+ it "will make a patch request and return an instance of NgrokAPI::Models::TCPEdge" do
110
+ path = '/edges/tcp/%{id}'
111
+ replacements = {
112
+ id: tcp_edge_result["id"],
113
+ }
114
+ data = {}
115
+ data[:description] = "New description"
116
+ data[:metadata] = "New metadata"
117
+ data[:hostports] = "New hostports"
118
+ data[:backend] = "New backend"
119
+ data[:ip_restriction] = "New ip_restriction"
120
+ expect(@client).to receive(:patch).with(path % replacements, data: data).
121
+ and_return(tcp_edge_result)
122
+ result = @edges_tcp_client.update(
123
+ id: tcp_edge_result["id"],
124
+ description: "New description",
125
+ metadata: "New metadata",
126
+ hostports: "New hostports",
127
+ backend: "New backend",
128
+ ip_restriction: "New ip_restriction"
129
+ )
130
+ expect(result.class).to eq(NgrokAPI::Models::TCPEdge)
131
+ # expect(result.id).to eq(tcp_edge_result["id"])
132
+ end
133
+ end
134
+
135
+ describe "#delete" do
136
+ it "will make a delete request" do
137
+ path = '/edges/tcp/%{id}'
138
+ replacements = {
139
+ id: api_key_result["id"],
140
+ }
141
+ expect(@client).to receive(:delete).with(path % replacements).and_return(nil)
142
+ @edges_tcp_client.delete(
143
+ id: api_key_result["id"]
144
+ )
145
+ end
146
+ end
147
+
148
+ describe "#delete!" do
149
+ it "will make a delete request" do
150
+ path = '/edges/tcp/%{id}'
151
+ replacements = {
152
+ id: api_key_result["id"],
153
+ }
154
+ expect(@client).to receive(:delete).with(path % replacements, danger: true).and_return(nil)
155
+ @edges_tcp_client.delete!(
156
+ id: api_key_result["id"]
157
+ )
158
+ end
159
+
160
+ it "will make a delete request and return NotFoundError if 404" do
161
+ path = '/edges/tcp/%{id}'
162
+ replacements = {
163
+ id: api_key_result["id"],
164
+ }
165
+ expect do
166
+ expect(@client).to receive(:delete).with(path % replacements, danger: true).
167
+ and_raise(NgrokAPI::Errors::NotFoundError)
168
+ result = @edges_tcp_client.delete!(
169
+ id: api_key_result["id"]
170
+ )
171
+ expect(result).to be nil
172
+ end.to raise_error(NgrokAPI::Errors::NotFoundError)
173
+ end
174
+ end
175
+ end
@@ -0,0 +1,187 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe NgrokAPI::Services::EdgesTLSClient do
4
+ let(:base_url) { 'https://api.ngrok.com' }
5
+ let(:path) { '/edges/tls' }
6
+ let(:not_found) do
7
+ NgrokAPI::Errors::NotFoundError.new(response: tls_edge_result)
8
+ end
9
+
10
+ before(:each) do
11
+ @client = class_double("HttpClient")
12
+ @edges_tls_client = NgrokAPI::Services::EdgesTLSClient.new(client: @client)
13
+ end
14
+
15
+ describe "#create" do
16
+ it "will make a post request and return an instance of NgrokAPI::Models::TLSEdge" do
17
+ path = '/edges/tls'
18
+ replacements = {
19
+ }
20
+ data = {}
21
+ data[:description] = "New description"
22
+ data[:metadata] = "New metadata"
23
+ data[:hostports] = "New hostports"
24
+ data[:backend] = "New backend"
25
+ data[:ip_restriction] = "New ip_restriction"
26
+ data[:mutual_tls] = "New mutual_tls"
27
+ data[:tls_termination] = "New tls_termination"
28
+ expect(@client).to receive(:post).with(path % replacements, data: data).
29
+ and_return(tls_edge_result)
30
+ result = @edges_tls_client.create(
31
+ description: "New description",
32
+ metadata: "New metadata",
33
+ hostports: "New hostports",
34
+ backend: "New backend",
35
+ ip_restriction: "New ip_restriction",
36
+ mutual_tls: "New mutual_tls",
37
+ tls_termination: "New tls_termination"
38
+ )
39
+ expect(result.class).to eq(NgrokAPI::Models::TLSEdge)
40
+ end
41
+ end
42
+
43
+ describe "#get" do
44
+ it "will make a get request and return an instance of NgrokAPI::Models::TLSEdge" do
45
+ path = '/edges/tls/%{id}'
46
+ replacements = {
47
+ id: tls_edge_result["id"],
48
+ }
49
+ data = {}
50
+ expect(@client).to receive(:get).with(path % replacements, data: data).
51
+ and_return(tls_edge_result)
52
+ result = @edges_tls_client.get(
53
+ id: tls_edge_result["id"]
54
+ )
55
+ expect(result.class).to eq(NgrokAPI::Models::TLSEdge)
56
+ end
57
+ end
58
+
59
+ describe "#get!" do
60
+ it "will make a get request and return an instance of NgrokAPI::Models::TLSEdge" do
61
+ path = '/edges/tls/%{id}'
62
+ replacements = {
63
+ id: tls_edge_result["id"],
64
+ }
65
+ data = {}
66
+ expect(@client).to receive(:get).with(path % replacements, data: data).
67
+ and_return(tls_edge_result)
68
+ result = @edges_tls_client.get(
69
+ id: tls_edge_result["id"]
70
+ )
71
+ expect(result.class).to eq(NgrokAPI::Models::TLSEdge)
72
+ # expect(result.id).to eq(tls_edge_result["id"])
73
+ end
74
+ end
75
+
76
+ describe "#list" do
77
+ it "will make a call to list (a GET request) and return a NgrokAPI::Models::Listable" do
78
+ expect(@client).to receive(:list).
79
+ and_return(tls_edge_results)
80
+ url = base_url + path + "?before_id=" + api_key_result["id"] + "&limit=1"
81
+ result = @edges_tls_client.list(url: url)
82
+ expect(result.class).to eq(NgrokAPI::Models::Listable)
83
+ end
84
+ end
85
+
86
+ describe "#update" do
87
+ it "will make a patch request and return an instance of NgrokAPI::Models::TLSEdge" do
88
+ path = '/edges/tls/%{id}'
89
+ replacements = {
90
+ id: tls_edge_result["id"],
91
+ }
92
+ data = {}
93
+ data[:description] = "New description"
94
+ data[:metadata] = "New metadata"
95
+ data[:hostports] = "New hostports"
96
+ data[:backend] = "New backend"
97
+ data[:ip_restriction] = "New ip_restriction"
98
+ data[:mutual_tls] = "New mutual_tls"
99
+ data[:tls_termination] = "New tls_termination"
100
+ expect(@client).to receive(:patch).with(path % replacements, data: data).
101
+ and_return(tls_edge_result)
102
+ result = @edges_tls_client.update(
103
+ id: tls_edge_result["id"],
104
+ description: "New description",
105
+ metadata: "New metadata",
106
+ hostports: "New hostports",
107
+ backend: "New backend",
108
+ ip_restriction: "New ip_restriction",
109
+ mutual_tls: "New mutual_tls",
110
+ tls_termination: "New tls_termination"
111
+ )
112
+ expect(result.class).to eq(NgrokAPI::Models::TLSEdge)
113
+ end
114
+ end
115
+
116
+ describe "#update!" do
117
+ it "will make a patch request and return an instance of NgrokAPI::Models::TLSEdge" do
118
+ path = '/edges/tls/%{id}'
119
+ replacements = {
120
+ id: tls_edge_result["id"],
121
+ }
122
+ data = {}
123
+ data[:description] = "New description"
124
+ data[:metadata] = "New metadata"
125
+ data[:hostports] = "New hostports"
126
+ data[:backend] = "New backend"
127
+ data[:ip_restriction] = "New ip_restriction"
128
+ data[:mutual_tls] = "New mutual_tls"
129
+ data[:tls_termination] = "New tls_termination"
130
+ expect(@client).to receive(:patch).with(path % replacements, data: data).
131
+ and_return(tls_edge_result)
132
+ result = @edges_tls_client.update(
133
+ id: tls_edge_result["id"],
134
+ description: "New description",
135
+ metadata: "New metadata",
136
+ hostports: "New hostports",
137
+ backend: "New backend",
138
+ ip_restriction: "New ip_restriction",
139
+ mutual_tls: "New mutual_tls",
140
+ tls_termination: "New tls_termination"
141
+ )
142
+ expect(result.class).to eq(NgrokAPI::Models::TLSEdge)
143
+ # expect(result.id).to eq(tls_edge_result["id"])
144
+ end
145
+ end
146
+
147
+ describe "#delete" do
148
+ it "will make a delete request" do
149
+ path = '/edges/tls/%{id}'
150
+ replacements = {
151
+ id: api_key_result["id"],
152
+ }
153
+ expect(@client).to receive(:delete).with(path % replacements).and_return(nil)
154
+ @edges_tls_client.delete(
155
+ id: api_key_result["id"]
156
+ )
157
+ end
158
+ end
159
+
160
+ describe "#delete!" do
161
+ it "will make a delete request" do
162
+ path = '/edges/tls/%{id}'
163
+ replacements = {
164
+ id: api_key_result["id"],
165
+ }
166
+ expect(@client).to receive(:delete).with(path % replacements, danger: true).and_return(nil)
167
+ @edges_tls_client.delete!(
168
+ id: api_key_result["id"]
169
+ )
170
+ end
171
+
172
+ it "will make a delete request and return NotFoundError if 404" do
173
+ path = '/edges/tls/%{id}'
174
+ replacements = {
175
+ id: api_key_result["id"],
176
+ }
177
+ expect do
178
+ expect(@client).to receive(:delete).with(path % replacements, danger: true).
179
+ and_raise(NgrokAPI::Errors::NotFoundError)
180
+ result = @edges_tls_client.delete!(
181
+ id: api_key_result["id"]
182
+ )
183
+ expect(result).to be nil
184
+ end.to raise_error(NgrokAPI::Errors::NotFoundError)
185
+ end
186
+ end
187
+ end
@@ -0,0 +1,57 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe NgrokAPI::Services::EndpointsClient do
4
+ let(:base_url) { 'https://api.ngrok.com' }
5
+ let(:path) { '/endpoints' }
6
+ let(:not_found) do
7
+ NgrokAPI::Errors::NotFoundError.new(response: endpoint_result)
8
+ end
9
+
10
+ before(:each) do
11
+ @client = class_double("HttpClient")
12
+ @endpoints_client = NgrokAPI::Services::EndpointsClient.new(client: @client)
13
+ end
14
+
15
+ describe "#list" do
16
+ it "will make a call to list (a GET request) and return a NgrokAPI::Models::Listable" do
17
+ expect(@client).to receive(:list).
18
+ and_return(endpoint_results)
19
+ url = base_url + path + "?before_id=" + api_key_result["id"] + "&limit=1"
20
+ result = @endpoints_client.list(url: url)
21
+ expect(result.class).to eq(NgrokAPI::Models::Listable)
22
+ end
23
+ end
24
+
25
+ describe "#get" do
26
+ it "will make a get request and return an instance of NgrokAPI::Models::Endpoint" do
27
+ path = '/endpoints/%{id}'
28
+ replacements = {
29
+ id: endpoint_result["id"],
30
+ }
31
+ data = {}
32
+ expect(@client).to receive(:get).with(path % replacements, data: data).
33
+ and_return(endpoint_result)
34
+ result = @endpoints_client.get(
35
+ id: endpoint_result["id"]
36
+ )
37
+ expect(result.class).to eq(NgrokAPI::Models::Endpoint)
38
+ end
39
+ end
40
+
41
+ describe "#get!" do
42
+ it "will make a get request and return an instance of NgrokAPI::Models::Endpoint" do
43
+ path = '/endpoints/%{id}'
44
+ replacements = {
45
+ id: endpoint_result["id"],
46
+ }
47
+ data = {}
48
+ expect(@client).to receive(:get).with(path % replacements, data: data).
49
+ and_return(endpoint_result)
50
+ result = @endpoints_client.get(
51
+ id: endpoint_result["id"]
52
+ )
53
+ expect(result.class).to eq(NgrokAPI::Models::Endpoint)
54
+ # expect(result.id).to eq(endpoint_result["id"])
55
+ end
56
+ end
57
+ end