Package com.sequenceiq.cloudbreak.service.stack.handler

Source Code of com.sequenceiq.cloudbreak.service.stack.handler.ProvisionRequestHandlerTest

package com.sequenceiq.cloudbreak.service.stack.handler;

import static org.mockito.BDDMockito.given;
import static org.mockito.Mockito.any;
import static org.mockito.Mockito.anyLong;
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;

import org.junit.Before;
import org.junit.Test;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;

import com.sequenceiq.cloudbreak.domain.CloudPlatform;
import com.sequenceiq.cloudbreak.repository.StackRepository;
import com.sequenceiq.cloudbreak.service.ServiceTestUtils;
import com.sequenceiq.cloudbreak.service.stack.event.ProvisionRequest;
import com.sequenceiq.cloudbreak.service.stack.flow.ProvisionSetupContext;

import reactor.event.Event;

public class ProvisionRequestHandlerTest {

    @InjectMocks
    private ProvisionRequestHandler underTest;

    @Mock
    private ProvisionSetupContext provisionSetupContext;

    @Mock
    private StackRepository stackRepository;

    private Event<ProvisionRequest> event;

    @Before
    public void setUp() {
        underTest = new ProvisionRequestHandler();
        MockitoAnnotations.initMocks(this);
        given(stackRepository.findById(anyLong())).willReturn(ServiceTestUtils.createStack());
        event = createEvent();
    }

    @Test
    public void testAcceptProvisionRequestEvent() {
        // GIVEN
        doNothing().when(provisionSetupContext).setupProvisioning(any(CloudPlatform.class), anyLong());
        // WHEN
        underTest.accept(event);
        // THEN
        verify(provisionSetupContext, times(1)).setupProvisioning(any(CloudPlatform.class), anyLong());
    }

    private Event<ProvisionRequest> createEvent() {
        return new Event<ProvisionRequest>(new ProvisionRequest(CloudPlatform.AZURE, 1L));
    }


}
TOP

Related Classes of com.sequenceiq.cloudbreak.service.stack.handler.ProvisionRequestHandlerTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.