1
0
mirror of https://github.com/firstBitMarksistskaya/jenkins-lib.git synced 2025-02-12 14:57:15 +02:00

Исправил работу тестов

This commit is contained in:
Nikita Gryzlov 2020-04-02 15:27:00 +03:00
parent 91e869a2a6
commit b38364eb7c
No known key found for this signature in database
GPG Key ID: C1EAE411FEF0BF2F
4 changed files with 51 additions and 51 deletions

View File

@ -1,26 +0,0 @@
package ru.pulsar.jenkins.library
import org.apache.commons.io.FileUtils
import org.apache.commons.lang3.SystemUtils
import java.nio.charset.StandardCharsets
class MockStepExecutor extends StepExecutor {
MockStepExecutor() {
super(null)
}
@Override
boolean isUnix() {
return SystemUtils.IS_OS_UNIX
}
@Override
String libraryResource(String path) {
return FileUtils.readFileToString(
new File("resources/" + path),
StandardCharsets.UTF_8
)
}
}

View File

@ -3,29 +3,18 @@ package ru.pulsar.jenkins.library.configuration;
import org.apache.commons.io.IOUtils;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import ru.pulsar.jenkins.library.IStepExecutor;
import ru.pulsar.jenkins.library.MockStepExecutor;
import ru.pulsar.jenkins.library.ioc.ContextRegistry;
import ru.pulsar.jenkins.library.ioc.IContext;
import ru.pulsar.jenkins.library.utils.TestUtils;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.when;
class ConfigurationReaderTest {
@BeforeEach
void setUp() {
IContext context = mock(IContext.class);
IStepExecutor steps = spy(new MockStepExecutor());
when(context.getStepExecutor()).thenReturn(steps);
ContextRegistry.registerContext(context);
TestUtils.setupMockedContext();
}
@Test

View File

@ -3,9 +3,7 @@ package ru.pulsar.jenkins.library.steps;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import ru.pulsar.jenkins.library.IStepExecutor;
import ru.pulsar.jenkins.library.MockStepExecutor;
import ru.pulsar.jenkins.library.ioc.ContextRegistry;
import ru.pulsar.jenkins.library.ioc.IContext;
import ru.pulsar.jenkins.library.utils.TestUtils;
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.catchThrowable;
@ -13,23 +11,16 @@ import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.ArgumentMatchers.contains;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
class CmdTest {
private IStepExecutor steps;
private IStepExecutor steps = TestUtils.getMockedStepExecutor();
@BeforeEach
void setUp() {
IContext context = mock(IContext.class);
steps = spy(new MockStepExecutor());
when(context.getStepExecutor()).thenReturn(steps);
ContextRegistry.registerContext(context);
TestUtils.setupMockedContext(steps);
}
@Test

View File

@ -0,0 +1,46 @@
package ru.pulsar.jenkins.library.utils;
import org.apache.commons.io.FileUtils;
import org.apache.commons.lang3.SystemUtils;
import ru.pulsar.jenkins.library.IStepExecutor;
import ru.pulsar.jenkins.library.ioc.ContextRegistry;
import ru.pulsar.jenkins.library.ioc.IContext;
import java.io.File;
import java.nio.charset.StandardCharsets;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
public class TestUtils {
public static IStepExecutor getMockedStepExecutor() {
IStepExecutor steps = mock(IStepExecutor.class);
when(steps.isUnix()).thenReturn(SystemUtils.IS_OS_UNIX);
when(steps.libraryResource(anyString())).thenAnswer(invocation -> {
String path = invocation.getArgument(0);
return FileUtils.readFileToString(
new File("resources/" + path),
StandardCharsets.UTF_8
);
});
return steps;
}
public static IContext setupMockedContext() {
return setupMockedContext(getMockedStepExecutor());
}
public static IContext setupMockedContext(IStepExecutor steps) {
IContext context = mock(IContext.class);
when(context.getStepExecutor()).thenReturn(steps);
ContextRegistry.registerContext(context);
return context;
}
}