diff options
author | ZHANG Dapeng <zdapeng@google.com> | 2017-11-02 16:40:49 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-11-02 16:40:49 -0700 |
commit | 34555e497ab20e2bd49a20ebb2f0082f52ddae4e (patch) | |
tree | e8eb0fda0275eb5a9fc586b98c78954b0986c5c5 /testing | |
parent | 2162cd07d5debe833bfdfe3512f30ed085140b91 (diff) | |
download | grpc-grpc-java-34555e497ab20e2bd49a20ebb2f0082f52ddae4e.tar.gz |
testing: add TlsTesting.loadCert
Diffstat (limited to 'testing')
-rw-r--r-- | testing/src/main/java/io/grpc/testing/TestUtils.java | 2 | ||||
-rw-r--r-- | testing/src/main/java/io/grpc/testing/TlsTesting.java | 38 | ||||
-rw-r--r-- | testing/src/test/java/io/grpc/testing/TlsTestingTest.java | 41 |
3 files changed, 80 insertions, 1 deletions
diff --git a/testing/src/main/java/io/grpc/testing/TestUtils.java b/testing/src/main/java/io/grpc/testing/TestUtils.java index c584de595..a307073b8 100644 --- a/testing/src/main/java/io/grpc/testing/TestUtils.java +++ b/testing/src/main/java/io/grpc/testing/TestUtils.java @@ -159,7 +159,7 @@ public class TestUtils { * * @param name name of a file in src/main/resources/certs. * - * @deprecated Not for public use + * @deprecated Not for public use. Use {@link TlsTesting#loadCert} instead. */ @Deprecated public static File loadCert(String name) throws IOException { diff --git a/testing/src/main/java/io/grpc/testing/TlsTesting.java b/testing/src/main/java/io/grpc/testing/TlsTesting.java new file mode 100644 index 000000000..c71af990f --- /dev/null +++ b/testing/src/main/java/io/grpc/testing/TlsTesting.java @@ -0,0 +1,38 @@ +/* + * Copyright 2017, gRPC Authors All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.grpc.testing; + +import io.grpc.ExperimentalApi; +import java.io.InputStream; + +/** Convenience utilities for using TLS in tests. */ +@ExperimentalApi("https://github.com/grpc/grpc-java/issues/1791") +public final class TlsTesting { + /** + * Retrieves the specified test certificate or key resource in src/main/resources/certs/ as an + * {@code InputStream}. + * + * @param name name of a file in src/main/resources/certs/, e.g., {@code "ca.key"}. + * + * @since 1.8.0 + */ + public static InputStream loadCert(String name) { + return TestUtils.class.getResourceAsStream("/certs/" + name); + } + + private TlsTesting() {} +} diff --git a/testing/src/test/java/io/grpc/testing/TlsTestingTest.java b/testing/src/test/java/io/grpc/testing/TlsTestingTest.java new file mode 100644 index 000000000..554edac6f --- /dev/null +++ b/testing/src/test/java/io/grpc/testing/TlsTestingTest.java @@ -0,0 +1,41 @@ +/* + * Copyright 2017, gRPC Authors All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.grpc.testing; + +import static org.junit.Assert.assertNotNull; + +import java.io.InputStream; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.JUnit4; + +/** Unit tests for {@link TlsTesting}. */ +@RunWith(JUnit4.class) +public class TlsTestingTest { + @Test + public void loadCert() throws Exception { + InputStream is = null; + try { + is = TlsTesting.loadCert("ca.key"); + assertNotNull(is); + } finally { + if (is != null) { + is.close(); + } + } + } +} |