/src/test/java/com/paypal/core/soap/SignatureSOAPHeaderAuthStrategyTest.java
https://gitlab.com/CORP-RESELLER/sdk-core-java · Java · 104 lines · 82 code · 22 blank · 0 comment · 0 complexity · 539736ea58bfe672590ba547bbe8ed08 MD5 · raw file
- package com.paypal.core.soap;
- import java.io.ByteArrayInputStream;
- import javax.xml.parsers.DocumentBuilder;
- import javax.xml.parsers.DocumentBuilderFactory;
- import junit.framework.Assert;
- import org.testng.annotations.Test;
- import org.w3c.dom.Document;
- import org.w3c.dom.Element;
- import org.w3c.dom.NodeList;
- import com.paypal.core.credential.SignatureCredential;
- import com.paypal.core.credential.SubjectAuthorization;
- import com.paypal.core.credential.TokenAuthorization;
- public class SignatureSOAPHeaderAuthStrategyTest {
-
-
- @Test
- public void generateHeaderStrategyForTokenTest() throws Exception{
- SignatureCredential signatureCredential = new SignatureCredential("testusername","testpassword","testsignature");
- SignatureSOAPHeaderAuthStrategy signatureSOAPHeaderAuthStrategy = new SignatureSOAPHeaderAuthStrategy();
- TokenAuthorization tokenAuthorization = new TokenAuthorization("accessToken","tokenSecret");
- signatureSOAPHeaderAuthStrategy.setThirdPartyAuthorization(tokenAuthorization);
- signatureCredential.setThirdPartyAuthorization(tokenAuthorization);
- String payload = signatureSOAPHeaderAuthStrategy.generateHeaderStrategy(signatureCredential);
- Assert.assertEquals("<ns:RequesterCredentials/>", payload);
- }
-
- @Test
- public void generateHeaderStrategyForSubjectTest() throws Exception{
- SignatureCredential signatureCredential = new SignatureCredential("testusername","testpassword","testsignature");
- SignatureSOAPHeaderAuthStrategy signatureSOAPHeaderAuthStrategy = new SignatureSOAPHeaderAuthStrategy();
- SubjectAuthorization subjectAuthorization = new SubjectAuthorization("testsubject");
- signatureSOAPHeaderAuthStrategy.setThirdPartyAuthorization(subjectAuthorization);
- signatureCredential.setThirdPartyAuthorization(subjectAuthorization);
- String payload = signatureSOAPHeaderAuthStrategy.generateHeaderStrategy(signatureCredential);
-
-
- Document dom = loadXMLFromString(payload);
- Element docEle = dom.getDocumentElement();
- NodeList credential = docEle.getElementsByTagName("ebl:Credentials");
- NodeList user = ((Element)credential.item(0)).getElementsByTagName("ebl:Username");
- NodeList psw = ((Element)credential.item(0)).getElementsByTagName("ebl:Password");
- NodeList sign = ((Element)credential.item(0)).getElementsByTagName("ebl:Signature");
- NodeList subject = ((Element)credential.item(0)).getElementsByTagName("ebl:Subject");
-
- String username= user.item(0).getTextContent();
- String password = psw.item(0).getTextContent();
- String signature = sign.item(0).getTextContent();
- String sub = subject.item(0).getTextContent();
-
- Assert.assertEquals("testusername", username);
- Assert.assertEquals("testpassword", password);
- Assert.assertEquals("testsignature", signature);
- Assert.assertEquals("testsubject",sub);
- }
-
- @Test
- public void generateHeaderStrategyForNonThirdPartyTest() throws Exception{
- SignatureCredential signatureCredential = new SignatureCredential("testusername","testpassword","testsignature");
- SignatureSOAPHeaderAuthStrategy signatureSOAPHeaderAuthStrategy = new SignatureSOAPHeaderAuthStrategy();
- String payload = signatureSOAPHeaderAuthStrategy.generateHeaderStrategy(signatureCredential);
-
- Document dom = loadXMLFromString(payload);
- Element docEle = dom.getDocumentElement();
- NodeList credential = docEle.getElementsByTagName("ebl:Credentials");
- NodeList user = ((Element)credential.item(0)).getElementsByTagName("ebl:Username");
- NodeList psw = ((Element)credential.item(0)).getElementsByTagName("ebl:Password");
- NodeList sign = ((Element)credential.item(0)).getElementsByTagName("ebl:Signature");
- NodeList subject = ((Element)credential.item(0)).getElementsByTagName("ebl:Subject");
-
- String username= user.item(0).getTextContent();
- String password = psw.item(0).getTextContent();
- String signature = sign.item(0).getTextContent();
- Object sub = subject.item(0);
-
- Assert.assertEquals("testusername", username);
- Assert.assertEquals("testpassword", password);
- Assert.assertEquals("testsignature", signature);
- Assert.assertNull(sub);
- }
-
- @Test
- public void setGetThirdPartyAuthorization(){
- SignatureSOAPHeaderAuthStrategy signatureSOAPHeaderAuthStrategy = new SignatureSOAPHeaderAuthStrategy();
- SubjectAuthorization subjectAuthorization = new SubjectAuthorization("testsubject");
- signatureSOAPHeaderAuthStrategy.setThirdPartyAuthorization(subjectAuthorization);
- Assert.assertNotNull(signatureSOAPHeaderAuthStrategy.getThirdPartyAuthorization());
- }
-
- private Document loadXMLFromString(String xml) throws Exception
- {
- ByteArrayInputStream stream = new ByteArrayInputStream(xml.getBytes());
- DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
- return builder.parse(stream);
- }
-
-
- }