Package org.cedj.geekseek.service.security.test.functional

Source Code of org.cedj.geekseek.service.security.test.functional.TwitterAuthLoginTestCase

package org.cedj.geekseek.service.security.test.functional;

import java.net.URL;

import org.cedj.geekseek.domain.persistence.test.integration.PersistenceDeployments;
import org.cedj.geekseek.domain.user.model.User;
import org.cedj.geekseek.domain.user.test.integration.UserDeployments;
import org.cedj.geekseek.service.security.oauth.AuthServlet;
import org.cedj.geekseek.service.security.picketlink.OAuthAuthenticator;
import org.cedj.geekseek.service.security.test.arquillian.TwitterLogin;
import org.cedj.geekseek.service.security.user.UserRegistration;
import org.jboss.arquillian.container.test.api.Deployment;
import org.jboss.arquillian.junit.Arquillian;
import org.jboss.arquillian.test.api.ArquillianResource;
import org.jboss.shrinkwrap.api.ShrinkWrap;
import org.jboss.shrinkwrap.api.asset.EmptyAsset;
import org.jboss.shrinkwrap.api.asset.StringAsset;
import org.jboss.shrinkwrap.api.spec.WebArchive;
import org.jboss.shrinkwrap.resolver.api.maven.Maven;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;

@RunWith(Arquillian.class)
public class TwitterAuthLoginTestCase {

    @Deployment(testable = false)
    public static WebArchive deploy() {
        return ShrinkWrap.create(WebArchive.class)
            .addAsResource("Twitter.properties")
            .addPackages(false,
                AuthServlet.class.getPackage(),
                OAuthAuthenticator.class.getPackage(),
                UserRegistration.class.getPackage())
            .addAsLibraries(UserDeployments.user())
            .addAsLibraries(
                Maven.resolver()
                    .loadPomFromFile("pom.xml")
                    .resolve("org.agorava:agorava-twitter-cdi", "org.picketlink:picketlink-impl")
                    .withTransitivity()
                    .asFile())
            .addAsWebInfResource(EmptyAsset.INSTANCE, "beans.xml")
            .addAsResource(new StringAsset(
                    PersistenceDeployments.descriptor()
                        .getAllPersistenceUnit().get(0)
                        .clazz(User.class.getName())
                        .up().exportAsString()), "META-INF/persistence.xml");
    }

    @ArquillianResource
    private URL base;

    @Test
    public void shouldLogin() throws Exception {

        URL auth = new URL(base, "auth");
        String session = new TwitterLogin().login(auth.toExternalForm());
        Assert.assertNotNull(session);
    }
}
TOP

Related Classes of org.cedj.geekseek.service.security.test.functional.TwitterAuthLoginTestCase

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.