com.emc.ecs.sync.cli.CliTest.java Source code

Java tutorial

Introduction

Here is the source code for com.emc.ecs.sync.cli.CliTest.java

Source

/*
 * Copyright 2013-2016 EMC Corporation. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License").
 * You may not use this file except in compliance with the License.
 * A copy of the License is located at
 *
 * http://www.apache.org/licenses/LICENSE-2.0.txt
 *
 * or in the "license" file accompanying this file. This file is distributed
 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */
package com.emc.ecs.sync.cli;

import com.emc.ecs.sync.config.ConfigUtil;
import com.emc.ecs.sync.config.ConfigWrapper;
import com.emc.ecs.sync.rest.LogLevel;
import org.apache.commons.cli.CommandLine;
import org.apache.commons.cli.DefaultParser;
import org.junit.Assert;
import org.junit.Test;

public class CliTest {
    @Test
    public void testCliConfigParsing() throws Exception {
        String db = "foo:bar", filters = "", rest = "";
        String source = "", target = "", xml = "";
        LogLevel log = LogLevel.silent;
        String[] args = { "--help", "--version", "--no-rest-server", "--rest-only", "--db-connect-string", db,
                "--filters", filters, "--rest-endpoint", rest, "--source", source, "--target", target,
                "--xml-config", xml, "--log-level", log.toString(), };

        ConfigWrapper<CliConfig> wrapper = ConfigUtil.wrapperFor(CliConfig.class);
        CommandLine commandLine = new DefaultParser().parse(wrapper.getOptions(), args);
        CliConfig cliConfig = wrapper.parse(commandLine);

        Assert.assertTrue(cliConfig.isHelp());
        Assert.assertTrue(cliConfig.isVersion());
        Assert.assertFalse(cliConfig.isRestEnabled());
        Assert.assertTrue(cliConfig.isRestOnly());
        Assert.assertEquals(db, cliConfig.getDbConnectString());
        Assert.assertEquals(filters, cliConfig.getFilters());
        Assert.assertEquals(rest, cliConfig.getRestEndpoint());
        Assert.assertEquals(source, cliConfig.getSource());
        Assert.assertEquals(target, cliConfig.getTarget());
        Assert.assertEquals(xml, cliConfig.getXmlConfig());
        Assert.assertEquals(log, cliConfig.getLogLevel());
    }
}