Package com.pugh.sockso.music.scheduling

Source Code of com.pugh.sockso.music.scheduling.SchedulerRunnerTest

package com.pugh.sockso.music.scheduling;

import com.pugh.sockso.Properties;
import com.pugh.sockso.StringProperties;
import com.pugh.sockso.tests.SocksoTestCase;

public class SchedulerRunnerTest extends SocksoTestCase {

    private Properties p;

    @Override
    public void setUp() {
        p = new StringProperties();
    }

    private SchedulerRunner getInstance( final String scheduler ) {
        p.set( "scheduler", scheduler );
        return new SchedulerRunner( null, p );
    }

    public void testGetSchedulerReturnsSimpleSchedulerWhenNothingSpecified() {
        assertEquals( SimpleScheduler.class, getInstance("").getScheduler().getClass() );
    }

    public void testGetSchedulerReturnsCronSchedulerWhenSpecified() {
        assertEquals( CronScheduler.class, getInstance("cron").getScheduler().getClass() );
    }

    public void testGetSchedulerReturnsManualSchedulerWhenSpecified() {
        assertEquals( ManualScheduler.class, getInstance("manual").getScheduler().getClass() );
    }

    public void testGetSchedulerReturnsSimpleSchedulerWhenInvalidOneSpecified() {
        assertEquals( SimpleScheduler.class, getInstance("doesnotexist").getScheduler().getClass() );
    }

    public void testGetSchedulerReturnsNewValueWhenSchedulerIsChanged() {
        SchedulerRunner runner = getInstance( "" );
        assertEquals( SimpleScheduler.class, runner.getScheduler().getClass() );
        p.set( "scheduler", "cron" );
        assertEquals( CronScheduler.class, runner.getScheduler().getClass() );
    }

}
TOP

Related Classes of com.pugh.sockso.music.scheduling.SchedulerRunnerTest

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.