|
7 | 7 | import com.azure.core.credential.AzureKeyCredential; |
8 | 8 | import com.azure.core.http.HttpClient; |
9 | 9 | import com.azure.core.http.HttpPipeline; |
| 10 | +import com.azure.core.http.HttpPipelinePosition; |
10 | 11 | import com.azure.core.http.policy.*; |
| 12 | +import com.azure.core.util.ClientOptions; |
11 | 13 | import com.azure.core.util.Configuration; |
12 | 14 | import com.azure.core.util.CoreUtils; |
13 | 15 | import org.junit.jupiter.api.AfterEach; |
|
17 | 19 | import org.mockito.Mockito; |
18 | 20 | import org.mockito.stubbing.Answer; |
19 | 21 |
|
| 22 | +import java.time.Duration; |
| 23 | +import java.time.temporal.ChronoUnit; |
20 | 24 | import java.util.ArrayList; |
21 | 25 | import java.util.List; |
22 | 26 | import java.util.Map; |
@@ -115,6 +119,69 @@ public void buildClientWithServiceVersion() { |
115 | 119 | assertNotNull(sipRoutingClient); |
116 | 120 | } |
117 | 121 |
|
| 122 | + @Test |
| 123 | + public void buildClientWithRetryPolicy() { |
| 124 | + SipRoutingClient sipRoutingClient = this.setupBuilderWithHttpClientWithCredential(this.clientBuilder) |
| 125 | + .retryPolicy(new RetryPolicy("1", ChronoUnit.SECONDS)) |
| 126 | + .buildClient(); |
| 127 | + assertNotNull(sipRoutingClient); |
| 128 | + } |
| 129 | + |
| 130 | + @Test |
| 131 | + public void buildClientWithRetryOptions() { |
| 132 | + SipRoutingClient sipRoutingClient = this.setupBuilderWithHttpClientWithCredential(this.clientBuilder) |
| 133 | + .retryOptions(new RetryOptions(new FixedDelayOptions(3, Duration.ZERO))) |
| 134 | + .buildClient(); |
| 135 | + assertNotNull(sipRoutingClient); |
| 136 | + } |
| 137 | + |
| 138 | + @Test |
| 139 | + public void buildClientWithClientOptions() { |
| 140 | + SipRoutingClient sipRoutingClient = this.setupBuilderWithHttpClientWithCredential(this.clientBuilder) |
| 141 | + .clientOptions(new ClientOptions()) |
| 142 | + .buildClient(); |
| 143 | + assertNotNull(sipRoutingClient); |
| 144 | + } |
| 145 | + |
| 146 | + @Test |
| 147 | + public void buildClientByReplacingHttpClient() { |
| 148 | + SipRoutingClient sipRoutingClient = this.setupBuilderWithHttpClientWithCredential(this.clientBuilder) |
| 149 | + .httpClient(this.httpClient) |
| 150 | + .httpClient(this.httpClient) |
| 151 | + .buildClient(); |
| 152 | + assertNotNull(sipRoutingClient); |
| 153 | + } |
| 154 | + |
| 155 | + @Test |
| 156 | + public void buildClientByReplacingPipeline() { |
| 157 | + HttpPipeline httpPipeline = mock(HttpPipeline.class); |
| 158 | + SipRoutingClient sipRoutingClient = this.setupBuilderWithHttpClientWithCredential(this.clientBuilder) |
| 159 | + .pipeline(httpPipeline) |
| 160 | + .pipeline(httpPipeline) |
| 161 | + .buildClient(); |
| 162 | + assertNotNull(sipRoutingClient); |
| 163 | + } |
| 164 | + |
| 165 | + @Test |
| 166 | + public void buildClientWithPolicyPerCall() { |
| 167 | + HttpPipelinePolicy policy = mock(HttpPipelinePolicy.class); |
| 168 | + doAnswer(invocation -> HttpPipelinePosition.PER_CALL).when(policy).getPipelinePosition(); |
| 169 | + SipRoutingClient sipRoutingClient = this.setupBuilderWithHttpClientWithCredential(this.clientBuilder) |
| 170 | + .addPolicy(policy) |
| 171 | + .buildClient(); |
| 172 | + assertNotNull(sipRoutingClient); |
| 173 | + } |
| 174 | + |
| 175 | + @Test |
| 176 | + public void buildClientWithPolicyPerRetry() { |
| 177 | + HttpPipelinePolicy policy = mock(HttpPipelinePolicy.class); |
| 178 | + doAnswer(invocation -> HttpPipelinePosition.PER_RETRY).when(policy).getPipelinePosition(); |
| 179 | + SipRoutingClient sipRoutingClient = this.setupBuilderWithHttpClientWithCredential(this.clientBuilder) |
| 180 | + .addPolicy(policy) |
| 181 | + .buildClient(); |
| 182 | + assertNotNull(sipRoutingClient); |
| 183 | + } |
| 184 | + |
118 | 185 | @Test |
119 | 186 | public void buildClientWithOneAdditionalPolicy() { |
120 | 187 | ClientBuilderSpyHelper spyHelper = new ClientBuilderSpyHelper(this.clientBuilder); |
|
0 commit comments