/******************************************************************************* * (c) Copyright 2016 Hewlett-Packard Development Company, L.P. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Apache License v2.0 which accompany this distribution. * * The Apache License is available at * http://www.apache.org/licenses/LICENSE-2.0 * *******************************************************************************/ package io.cloudslang.lang.compiler; import org.junit.Assert; import org.junit.Rule; import org.junit.Test; import org.junit.rules.ExpectedException; public class ExtensionTest { @Rule public ExpectedException exception = ExpectedException.none(); @Test public void testValidateSlangFileExtensionInvalidExtension() { exception.expect(RuntimeException.class); exception.expectMessage("File: slang.sls must have one of the following extensions: sl, sl.yaml, sl.yml."); Extension.validateSlangFileExtension("slang.sls"); } @Test public void testValidateSlangFileExtensionSl() { Extension.validateSlangFileExtension("slang.sl"); } @Test public void testValidateSlangFileExtensionSlYaml() { Extension.validateSlangFileExtension("slang.sl.yaml"); } @Test public void testValidateSlangFileExtensionSlYml() { Extension.validateSlangFileExtension("slang.sl.yml"); } @Test public void testValidatePropertiesFileExtensionInvalidExtension() { exception.expect(RuntimeException.class); exception.expectMessage("File: slang.sls must have one of the following extensions: prop.sl."); Extension.validatePropertiesFileExtension("slang.sls"); } @Test public void testValidatePropertiesFileExtensionPropSl() { Extension.validatePropertiesFileExtension("slang.prop.sl"); } @Test public void testRemoveFileExtension() { Assert.assertEquals("slang", Extension.removeExtension("slang.prop.sl")); } @Test public void testRemoveFileExtensionInvalidExtension() { Assert.assertEquals("slang.prsaop.sasdl", Extension.removeExtension("slang.prsaop.sasdl")); } @Test public void testFindExtension() { Assert.assertEquals(Extension.PROP_SL, Extension.findExtension("slang.prop.sl")); } @Test public void testFindExtensionInvalidExtension() { Assert.assertEquals(null, Extension.findExtension("slang.prsaop.sasdl")); } @Test public void testGetYamlFileExtension() { String[] extensions = Extension.getYamlFileExtensionValues(); Assert.assertEquals(2, extensions.length); Assert.assertEquals("yaml", extensions[0]); Assert.assertEquals("yml", extensions[1]); } }