19fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann/******************************************************************************* 234cd880f4e52a32b9f88ed4ea687b8f3f892395bEvgeny Mandrikov * Copyright (c) 2009, 2017 Mountainminds GmbH & Co. KG and Contributors 39fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann * All rights reserved. This program and the accompanying materials 49fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann * are made available under the terms of the Eclipse Public License v1.0 59fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann * which accompanies this distribution, and is available at 69fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann * http://www.eclipse.org/legal/epl-v10.html 79fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann * 89fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann * Contributors: 99fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann * Marc R. Hoffmann - initial API and implementation 109fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann * 119fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann *******************************************************************************/ 129fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmannpackage org.jacoco.core.runtime; 139fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 149fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmannimport static org.junit.Assert.assertEquals; 159fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 169fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmannimport java.util.Arrays; 179fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 189fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmannimport org.junit.Test; 199fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 209fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann/** 219fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann * Unit tests for {@link CommandLineSupport}. 229fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann */ 239fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmannpublic class CommandLineSupportTest { 249fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 259fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 269fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testQuote1() { 279fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals("aBc", CommandLineSupport.quote("aBc")); 289fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 299fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 309fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 319fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testQuote2() { 329fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals("\"a c\"", CommandLineSupport.quote("a c")); 339fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 349fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 359fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 369fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testQuote3() { 379fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals("\"a\\\"c\"", CommandLineSupport.quote("a\"c")); 389fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 399fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 409fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 419fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testQuote4() { 429fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals("\" xy \"", CommandLineSupport.quote(" xy ")); 439fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 449fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 459fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 469fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testQuote5() { 479fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals("a\\\\b", CommandLineSupport.quote("a\\b")); 489fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 499fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 509fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 519fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testQuoteList1() { 529fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals("", CommandLineSupport.quote(Arrays.<String> asList())); 539fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 549fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 559fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 569fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testQuoteList2() { 579fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals("a", CommandLineSupport.quote(Arrays.asList("a"))); 589fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 599fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 609fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 619fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testQuoteList3() { 629fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals("a b c", 639fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann CommandLineSupport.quote(Arrays.asList("a", "b", "c"))); 649fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 659fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 669fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 679fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testQuoteList4() { 689fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals("a \"b b\" c", 699fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann CommandLineSupport.quote(Arrays.asList("a", "b b", "c"))); 709fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 719fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 729fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 739fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testSplit1() { 749fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals(Arrays.asList(), CommandLineSupport.split(null)); 759fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 769fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 779fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 789fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testSplit2() { 799fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals(Arrays.asList(), CommandLineSupport.split("")); 809fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 819fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 829fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 839fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testSplit3() { 849fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals(Arrays.asList("abc"), CommandLineSupport.split("abc")); 859fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 869fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 879fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 889fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testSplit4() { 899fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals(Arrays.asList("aa", "bbbb", "cccccc"), 909fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann CommandLineSupport.split(" aa bbbb cccccc ")); 919fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 929fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 939fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 949fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testSplit5() { 959fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals(Arrays.asList("a a", "b b "), 969fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann CommandLineSupport.split("\"a a\" \"b b \" ")); 979fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 989fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 999fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 1009fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testSplit6() { 1019fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals(Arrays.asList("a\"c"), CommandLineSupport.split("a\\\"c")); 1029fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 1039fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 1049fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 1059fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testSplit7() { 1069fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals(Arrays.asList("a\\c"), CommandLineSupport.split("a\\c")); 1079fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 1089fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 1099fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 1109fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testSplit8() { 1119fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals(Arrays.asList("a\\"), CommandLineSupport.split("a\\")); 1129fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 1139fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 1149fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 1159fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testSplit9() { 1169fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals(Arrays.asList("a\\", "b"), 1179fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann CommandLineSupport.split("a\\ b")); 1189fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 1199fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 1209fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann @Test 1219fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann public void testSplit10() { 1229fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann assertEquals(Arrays.asList("a\\b"), CommandLineSupport.split("a\\\\b")); 1239fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann } 1249fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann 1259fdd14bd5cf0ad765135c8466dcaa9921c72c74bMarc R. Hoffmann} 126