Package

Source Code of AdminUploadAppleCertificatesTest

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
import static play.test.Helpers.HTMLUNIT;
import static play.test.Helpers.running;
import static play.test.Helpers.testServer;

import java.io.File;
import java.util.HashMap;

import org.junit.Test;

import play.Play;
import play.libs.F.Callback;
import play.test.TestBrowser;

import com.baasbox.configuration.Push;
import com.baasbox.db.DbHelper;
import com.baasbox.exception.InvalidAppCodeException;
import com.baasbox.util.ConfigurationFileContainer;
import com.orientechnologies.orient.core.db.ODatabaseRecordThreadLocal;
import com.orientechnologies.orient.core.db.record.ODatabaseRecord;
import com.orientechnologies.orient.core.db.record.ODatabaseRecordTx;

import core.AbstractRouteHeaderTest;
import core.TestConfig;


public class AdminUploadAppleCertificatesTest extends AbstractRouteHeaderTest {

  @Override
  public String getRouteAddress() {
    return "/admin/configuration/Push/dummy/profile1.sandbox.ios.certificate/filename.zip";
  }
 
  @Override
  public String getMethod() {
    return "PUT";
  }

  @Override
  protected void assertContent(String s) {
    // TODO Auto-generated method stub
   
  }
 
  @Test
  public void testCorrectUpload() throws Exception{
   
    running
    (
      getTestServer(),
      HTMLUNIT,
      new Callback<TestBrowser>()
          {
        public void invoke(TestBrowser browser)
        {
          setHeader(TestConfig.KEY_APPCODE, TestConfig.VALUE_APPCODE);
          setHeader(TestConfig.KEY_AUTH, TestConfig.AUTH_ADMIN_ENC);
          setMultipartFormData();
          setAssetFile("/TestFakeCertificate.p12", "application/octet-stream");
         
          int status = httpRequest("http://localhost:3333"+getRouteAddress(), getMethod(),new HashMap<String,String>());
          assertTrue(status==200);
          File folder =  Play.application().getFile("certificates");
          assertTrue(folder.exists());
          File certificate = Play.application().getFile("certificates/TestFakeCertificate.p12");
          assertTrue(certificate.exists());
          ODatabaseRecordTx db = null;
          try {
            db = DbHelper.open("1234567890", "admin", "admin");
          } catch (InvalidAppCodeException e) {
            fail();
          }
          ODatabaseRecordThreadLocal.INSTANCE.set(db);
          ConfigurationFileContainer cfc = Push.PROFILE1_SANDBOX_IOS_CERTIFICATE.getValueAsFileContainer();
          assertNotNull(cfc);
          assertNotNull(cfc.getName());
          assertNotNull(cfc.getContent());
          assertEquals("TestFakeCertificate.p12",cfc.getName());
          String content = new String(cfc.getContent());
          assertTrue(content.indexOf("I am a fake certificate")>-1);
          certificate.delete();
          folder.delete();
          db.close();
        }
          }
    );
  }
 
 

}
TOP

Related Classes of AdminUploadAppleCertificatesTest

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.