mirror of
https://github.com/google/nomulus.git
synced 2025-07-13 22:45:10 +02:00
Make JSch injection lazy
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=154958750
This commit is contained in:
parent
5e7834b00e
commit
93c2a1e4f0
4 changed files with 53 additions and 15 deletions
|
@ -33,7 +33,6 @@ import com.google.api.services.bigquery.model.JobStatus;
|
|||
import com.google.appengine.api.taskqueue.TaskOptions;
|
||||
import com.google.appengine.api.taskqueue.TaskOptions.Method;
|
||||
import com.google.appengine.api.taskqueue.dev.QueueStateInfo.TaskStateInfo;
|
||||
import dagger.Lazy;
|
||||
import google.registry.export.BigqueryPollJobAction.BigqueryPollJobEnqueuer;
|
||||
import google.registry.request.HttpException.BadRequestException;
|
||||
import google.registry.request.HttpException.NotModifiedException;
|
||||
|
@ -41,6 +40,7 @@ import google.registry.testing.AppEngineRule;
|
|||
import google.registry.testing.ExceptionRule;
|
||||
import google.registry.testing.FakeClock;
|
||||
import google.registry.testing.FakeSleeper;
|
||||
import google.registry.testing.Lazies;
|
||||
import google.registry.testing.TaskQueueHelper;
|
||||
import google.registry.testing.TaskQueueHelper.TaskMatcher;
|
||||
import google.registry.util.CapturingLogHandler;
|
||||
|
@ -94,12 +94,7 @@ public class BigqueryPollJobActionTest {
|
|||
action.enqueuer = ENQUEUER;
|
||||
action.projectId = PROJECT_ID;
|
||||
action.jobId = JOB_ID;
|
||||
action.chainedQueueName =
|
||||
new Lazy<String>() {
|
||||
@Override
|
||||
public String get() {
|
||||
return CHAINED_QUEUE_NAME;
|
||||
}};
|
||||
action.chainedQueueName = Lazies.of(CHAINED_QUEUE_NAME);
|
||||
Logger.getLogger(BigqueryPollJobAction.class.getName()).addHandler(logHandler);
|
||||
}
|
||||
|
||||
|
|
|
@ -68,6 +68,7 @@ import google.registry.testing.FakeResponse;
|
|||
import google.registry.testing.FakeSleeper;
|
||||
import google.registry.testing.GpgSystemCommandRule;
|
||||
import google.registry.testing.IoSpyRule;
|
||||
import google.registry.testing.Lazies;
|
||||
import google.registry.testing.Providers;
|
||||
import google.registry.testing.TaskQueueHelper.TaskMatcher;
|
||||
import google.registry.testing.sftp.SftpServerRule;
|
||||
|
@ -189,10 +190,11 @@ public class RdeUploadActionTest {
|
|||
action.clock = clock;
|
||||
action.gcsUtils = new GcsUtils(gcsService, BUFFER_SIZE);
|
||||
action.ghostryde = new Ghostryde(BUFFER_SIZE);
|
||||
action.jsch =
|
||||
JSchModule.provideJSch(
|
||||
"user@ignored",
|
||||
keyring.getRdeSshClientPrivateKey(), keyring.getRdeSshClientPublicKey());
|
||||
action.lazyJsch =
|
||||
Lazies.of(
|
||||
JSchModule.provideJSch(
|
||||
"user@ignored",
|
||||
keyring.getRdeSshClientPrivateKey(), keyring.getRdeSshClientPublicKey()));
|
||||
action.jschSshSessionFactory = new JSchSshSessionFactory(standardSeconds(3));
|
||||
action.response = response;
|
||||
action.pgpCompressionFactory = compressFactory;
|
||||
|
@ -285,7 +287,7 @@ public class RdeUploadActionTest {
|
|||
persistResource(
|
||||
Cursor.create(CursorType.RDE_STAGING, stagingCursor, Registry.get("tld")));
|
||||
RdeUploadAction action = createAction(uploadUrl);
|
||||
action.jsch = createThrowingJSchSpy(action.jsch, 2);
|
||||
action.lazyJsch = Lazies.of(createThrowingJSchSpy(action.lazyJsch.get(), 2));
|
||||
action.runWithLock(uploadCursor);
|
||||
assertThat(response.getStatus()).isEqualTo(200);
|
||||
assertThat(response.getContentType()).isEqualTo(PLAIN_TEXT_UTF_8);
|
||||
|
@ -306,7 +308,7 @@ public class RdeUploadActionTest {
|
|||
persistResource(
|
||||
Cursor.create(CursorType.RDE_STAGING, stagingCursor, Registry.get("tld")));
|
||||
RdeUploadAction action = createAction(uploadUrl);
|
||||
action.jsch = createThrowingJSchSpy(action.jsch, 3);
|
||||
action.lazyJsch = Lazies.of(createThrowingJSchSpy(action.lazyJsch.get(), 3));
|
||||
thrown.expect(RuntimeException.class, "The crow flies in square circles.");
|
||||
action.runWithLock(uploadCursor);
|
||||
}
|
||||
|
|
32
javatests/google/registry/testing/Lazies.java
Normal file
32
javatests/google/registry/testing/Lazies.java
Normal file
|
@ -0,0 +1,32 @@
|
|||
// Copyright 2017 The Nomulus 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 google.registry.testing;
|
||||
|
||||
import dagger.Lazy;
|
||||
|
||||
/** Helper functions for {@link Lazy}. */
|
||||
public final class Lazies {
|
||||
|
||||
/**
|
||||
* Returns a {@link Lazy} that supplies a constant value.
|
||||
*/
|
||||
public static <T> Lazy<T> of(final T instance) {
|
||||
return new Lazy<T>() {
|
||||
@Override
|
||||
public T get() {
|
||||
return instance;
|
||||
}};
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue