Package fr.ippon.tatami.bot.route

Source Code of fr.ippon.tatami.bot.route.RssRouteBuilderUnitTest

package fr.ippon.tatami.bot.route;

import fr.ippon.tatami.bot.config.TatamibotConfiguration;
import org.joda.time.DateTime;
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import static org.hamcrest.Matchers.startsWith;
import static org.junit.Assert.assertThat;

public class RssRouteBuilderUnitTest {

    private static final Logger log = LoggerFactory.getLogger(RssRouteBuilderUnitTest.class);

    RssRouteBuilder sut = new RssRouteBuilder();

    @Test
    public void getRssEndpointUri_handlesUrlWithParameters() {
        sut.setConfiguration(getRssBotConfiguration("http://feeds.feedburner.com/LeBlogDesExpertsJ2ee?format=xml"));

        String uri = sut.getRssEndpointUri();

        assertThat(uri, startsWith("rss:http://feeds.feedburner.com/LeBlogDesExpertsJ2ee?format=xml&lastUpdate="));
    }

    @Test
    public void getRssEndpointUri_handlesUrlWithoutParameter() {
        sut.setConfiguration(getRssBotConfiguration("http://whatever"));

        String uri = sut.getRssEndpointUri();

        assertThat(uri, startsWith("rss:http://whatever?lastUpdate="));
    }

    private TatamibotConfiguration getRssBotConfiguration(String url) {
        TatamibotConfiguration configuration = new TatamibotConfiguration();
        configuration.setTatamibotConfigurationId("TEST_CONFIG_ID");
        configuration.setType(TatamibotConfiguration.TatamibotType.RSS);     // spécifique ... mais pas utilisé ici
        configuration.setDomain("ippon.fr");
        configuration.setUrl(url);
        configuration.setPollingDelay(60); // not used here
        configuration.setLastUpdateDate(DateTime.parse("2010-01-01T00:00:00").toDate());
        return configuration;
    }

}
TOP

Related Classes of fr.ippon.tatami.bot.route.RssRouteBuilderUnitTest

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.