Search in sources :

Example 1 with UTF_8

use of org.apache.commons.lang.CharEncoding.UTF_8 in project googleads-java-lib by googleads.

the class JaxWsSoapContextHandlerTest method testHandleMessage_outboundNoHeaders.

@Test
public void testHandleMessage_outboundNoHeaders() throws Exception {
    final String mockSoapXml = "<Hi>Hello world!</Hi>";
    Answer<Object> transform = (invocation) -> {
        StreamResult stream = (StreamResult) invocation.getArguments()[1];
        Streams.write(mockSoapXml, stream.getOutputStream(), Charset.forName(UTF_8));
        return null;
    };
    when(mockSoapMessageContext.get(MessageContext.MESSAGE_OUTBOUND_PROPERTY)).thenReturn(Boolean.TRUE);
    when(mockSoapMessageContext.getMessage()).thenReturn(mockMessage);
    when(mockMessage.getSOAPPart()).thenReturn(mockSoapPart);
    when(mockSoapPart.getEnvelope()).thenReturn(mockEnvelope);
    when(mockEnvelope.addHeader()).thenReturn(mockHeader);
    // captureServiceAndOperationNames
    when(mockSoapMessageContext.get(MessageContext.WSDL_SERVICE)).thenReturn(wsdlService);
    when(mockSoapMessageContext.getMessage()).thenReturn(mockMessage);
    when(mockMessage.getSOAPBody()).thenReturn(mockSoapBody);
    when(mockMessage.getSOAPPart()).thenReturn(mockSoapPart);
    when(mockSoapBody.getFirstChild()).thenReturn(firstChild);
    when(firstChild.getLocalName()).thenReturn(OPERATION_LOCAL_NAME);
    // captureSoapXml
    when(mockSoapMessageContext.getMessage()).thenReturn(mockMessage);
    when(mockTransformerSupplier.get()).thenReturn(mockTransformer);
    Mockito.doAnswer(transform).when(mockTransformer).transform(any(), any());
    assertTrue(jaxWsSoapContextHandler.handleMessage(mockSoapMessageContext));
    RequestInfo requestInfo = jaxWsSoapContextHandler.getLastRequestInfoBuilder().build();
    assertEquals(mockSoapXml, requestInfo.getPayload());
    assertEquals(wsdlService.getLocalPart(), requestInfo.getServiceName());
    assertEquals(OPERATION_LOCAL_NAME, requestInfo.getMethodName());
}
Also used : ArgumentMatchers.any(org.mockito.ArgumentMatchers.any) ResponseInfoXPathSet(com.google.api.ads.common.lib.soap.ResponseInfoXPathSet) Transformer(javax.xml.transform.Transformer) Mock(org.mockito.Mock) SOAPException(javax.xml.soap.SOAPException) StreamResult(javax.xml.transform.stream.StreamResult) Supplier(com.google.common.base.Supplier) RunWith(org.junit.runner.RunWith) Node(javax.xml.soap.Node) AdsApiConfiguration(com.google.api.ads.common.lib.conf.AdsApiConfiguration) Streams(com.google.api.ads.common.lib.utils.Streams) HashSet(java.util.HashSet) SOAPElement(javax.xml.soap.SOAPElement) MockitoAnnotations(org.mockito.MockitoAnnotations) Answer(org.mockito.stubbing.Answer) NodeExtractor(com.google.api.ads.common.lib.utils.NodeExtractor) Charset(java.nio.charset.Charset) SOAPHeader(javax.xml.soap.SOAPHeader) SOAPBody(javax.xml.soap.SOAPBody) MessageContext(javax.xml.ws.handler.MessageContext) Before(org.junit.Before) OutputStream(java.io.OutputStream) Logger(org.slf4j.Logger) RequestInfo(com.google.api.ads.common.lib.client.RequestInfo) Assert.assertTrue(org.junit.Assert.assertTrue) Set(java.util.Set) Test(org.junit.Test) Mockito.when(org.mockito.Mockito.when) JUnit4(org.junit.runners.JUnit4) Mockito.verify(org.mockito.Mockito.verify) SOAPMessageContext(javax.xml.ws.handler.soap.SOAPMessageContext) Mockito(org.mockito.Mockito) SOAPPart(javax.xml.soap.SOAPPart) UTF_8(org.apache.commons.lang.CharEncoding.UTF_8) RequestInfoXPathSet(com.google.api.ads.common.lib.soap.RequestInfoXPathSet) QName(javax.xml.namespace.QName) SOAPEnvelope(javax.xml.soap.SOAPEnvelope) SOAPMessage(javax.xml.soap.SOAPMessage) Assert.assertEquals(org.junit.Assert.assertEquals) StreamResult(javax.xml.transform.stream.StreamResult) RequestInfo(com.google.api.ads.common.lib.client.RequestInfo) Test(org.junit.Test)

Example 2 with UTF_8

use of org.apache.commons.lang.CharEncoding.UTF_8 in project googleads-java-lib by googleads.

the class JaxWsSoapContextHandlerTest method testHandleMessage_outboundWithHeaders.

@Test
public void testHandleMessage_outboundWithHeaders() throws Exception {
    final String mockSoapXml = "<Hi>Hello world!</Hi>";
    Answer<Object> transform = (invocation) -> {
        StreamResult stream = (StreamResult) invocation.getArguments()[1];
        Streams.write(mockSoapXml, stream.getOutputStream(), Charset.forName(UTF_8));
        return null;
    };
    SOAPElement mockHeader1 = Mockito.mock(SOAPElement.class);
    SOAPElement mockHeader2 = Mockito.mock(SOAPElement.class);
    SOAPElement mockHeader3 = Mockito.mock(SOAPElement.class);
    jaxWsSoapContextHandler.addHeader(null, null, mockHeader1);
    jaxWsSoapContextHandler.addHeader(null, null, mockHeader2);
    jaxWsSoapContextHandler.addHeader(null, null, mockHeader3);
    when(mockSoapMessageContext.get(MessageContext.MESSAGE_OUTBOUND_PROPERTY)).thenReturn(Boolean.TRUE);
    when(mockSoapMessageContext.getMessage()).thenReturn(mockMessage);
    when(mockMessage.getSOAPHeader()).thenReturn(mockHeader);
    // captureServiceAndOperationNames
    when(mockSoapMessageContext.get(MessageContext.WSDL_SERVICE)).thenReturn(wsdlService);
    when(mockSoapMessageContext.getMessage()).thenReturn(mockMessage);
    when(mockMessage.getSOAPBody()).thenReturn(mockSoapBody);
    when(mockMessage.getSOAPPart()).thenReturn(mockSoapPart);
    when(mockSoapBody.getFirstChild()).thenReturn(firstChild);
    when(firstChild.getLocalName()).thenReturn(OPERATION_LOCAL_NAME);
    // captureSoapXml
    when(mockSoapMessageContext.getMessage()).thenReturn(mockMessage);
    when(mockTransformerSupplier.get()).thenReturn(mockTransformer);
    Mockito.doAnswer(transform).when(mockTransformer).transform(any(), any());
    assertTrue(jaxWsSoapContextHandler.handleMessage(mockSoapMessageContext));
    RequestInfo requestInfo = jaxWsSoapContextHandler.getLastRequestInfoBuilder().build();
    assertEquals(mockSoapXml, requestInfo.getPayload());
    assertEquals(wsdlService.getLocalPart(), requestInfo.getServiceName());
    assertEquals(OPERATION_LOCAL_NAME, requestInfo.getMethodName());
    verify(mockHeader).addChildElement(mockHeader1);
    verify(mockHeader).addChildElement(mockHeader2);
    verify(mockHeader).addChildElement(mockHeader3);
}
Also used : ArgumentMatchers.any(org.mockito.ArgumentMatchers.any) ResponseInfoXPathSet(com.google.api.ads.common.lib.soap.ResponseInfoXPathSet) Transformer(javax.xml.transform.Transformer) Mock(org.mockito.Mock) SOAPException(javax.xml.soap.SOAPException) StreamResult(javax.xml.transform.stream.StreamResult) Supplier(com.google.common.base.Supplier) RunWith(org.junit.runner.RunWith) Node(javax.xml.soap.Node) AdsApiConfiguration(com.google.api.ads.common.lib.conf.AdsApiConfiguration) Streams(com.google.api.ads.common.lib.utils.Streams) HashSet(java.util.HashSet) SOAPElement(javax.xml.soap.SOAPElement) MockitoAnnotations(org.mockito.MockitoAnnotations) Answer(org.mockito.stubbing.Answer) NodeExtractor(com.google.api.ads.common.lib.utils.NodeExtractor) Charset(java.nio.charset.Charset) SOAPHeader(javax.xml.soap.SOAPHeader) SOAPBody(javax.xml.soap.SOAPBody) MessageContext(javax.xml.ws.handler.MessageContext) Before(org.junit.Before) OutputStream(java.io.OutputStream) Logger(org.slf4j.Logger) RequestInfo(com.google.api.ads.common.lib.client.RequestInfo) Assert.assertTrue(org.junit.Assert.assertTrue) Set(java.util.Set) Test(org.junit.Test) Mockito.when(org.mockito.Mockito.when) JUnit4(org.junit.runners.JUnit4) Mockito.verify(org.mockito.Mockito.verify) SOAPMessageContext(javax.xml.ws.handler.soap.SOAPMessageContext) Mockito(org.mockito.Mockito) SOAPPart(javax.xml.soap.SOAPPart) UTF_8(org.apache.commons.lang.CharEncoding.UTF_8) RequestInfoXPathSet(com.google.api.ads.common.lib.soap.RequestInfoXPathSet) QName(javax.xml.namespace.QName) SOAPEnvelope(javax.xml.soap.SOAPEnvelope) SOAPMessage(javax.xml.soap.SOAPMessage) Assert.assertEquals(org.junit.Assert.assertEquals) StreamResult(javax.xml.transform.stream.StreamResult) SOAPElement(javax.xml.soap.SOAPElement) RequestInfo(com.google.api.ads.common.lib.client.RequestInfo) Test(org.junit.Test)

Aggregations

RequestInfo (com.google.api.ads.common.lib.client.RequestInfo)2 AdsApiConfiguration (com.google.api.ads.common.lib.conf.AdsApiConfiguration)2 RequestInfoXPathSet (com.google.api.ads.common.lib.soap.RequestInfoXPathSet)2 ResponseInfoXPathSet (com.google.api.ads.common.lib.soap.ResponseInfoXPathSet)2 NodeExtractor (com.google.api.ads.common.lib.utils.NodeExtractor)2 Streams (com.google.api.ads.common.lib.utils.Streams)2 Supplier (com.google.common.base.Supplier)2 OutputStream (java.io.OutputStream)2 Charset (java.nio.charset.Charset)2 HashSet (java.util.HashSet)2 Set (java.util.Set)2 QName (javax.xml.namespace.QName)2 Node (javax.xml.soap.Node)2 SOAPBody (javax.xml.soap.SOAPBody)2 SOAPElement (javax.xml.soap.SOAPElement)2 SOAPEnvelope (javax.xml.soap.SOAPEnvelope)2 SOAPException (javax.xml.soap.SOAPException)2 SOAPHeader (javax.xml.soap.SOAPHeader)2 SOAPMessage (javax.xml.soap.SOAPMessage)2 SOAPPart (javax.xml.soap.SOAPPart)2