View Javadoc

1   package org.apache.maven.surefire.its.jiras;
2   /*
3    * Licensed to the Apache Software Foundation (ASF) under one
4    * or more contributor license agreements.  See the NOTICE file
5    * distributed with this work for additional information
6    * regarding copyright ownership.  The ASF licenses this file
7    * to you under the Apache License, Version 2.0 (the
8    * "License"); you may not use this file except in compliance
9    * with the License.  You may obtain a copy of the License at
10   *
11   *     http://www.apache.org/licenses/LICENSE-2.0
12   *
13   * Unless required by applicable law or agreed to in writing,
14   * software distributed under the License is distributed on an
15   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16   * KIND, either express or implied.  See the License for the
17   * specific language governing permissions and limitations
18   * under the License.
19   */
20  
21  import org.apache.maven.surefire.its.fixture.OutputValidator;
22  import org.apache.maven.surefire.its.fixture.SurefireJUnit4IntegrationTestCase;
23  import org.apache.maven.surefire.its.fixture.SurefireLauncher;
24  import org.junit.Test;
25  
26  public class Surefire828EmptyGroupExprIT
27      extends SurefireJUnit4IntegrationTestCase
28  {
29      // !CategoryC
30      @Test
31      public void testJUnitRunEmptyGroups()
32      {
33          OutputValidator validator = unpackJUnit().sysProp( "profile", "emptyGroups" ).executeTest();
34          validator.verifyErrorFreeLog();
35          validator.assertTestSuiteResults( 5, 0, 0, 0 );
36          validator.verifyTextInLog( "catA: 2" );
37          validator.verifyTextInLog( "catB: 2" );
38          validator.verifyTextInLog( "catC: 0" );
39          validator.verifyTextInLog( "catNone: 1" );
40          validator.verifyTextInLog( "NoCategoryTest.CatNone: 1" );
41      }
42  
43      // CategoryA && CategoryB
44      @Test
45      public void testJUnitRunEmptyExcludeGroups()
46      {
47          OutputValidator validator = unpackJUnit().sysProp( "profile", "emptyExcludedGroups" ).executeTest();
48          validator.verifyErrorFreeLog();
49          validator.assertTestSuiteResults( 2, 0, 0, 0 );
50          validator.verifyTextInLog( "catA: 1" );
51          validator.verifyTextInLog( "catB: 1" );
52          validator.verifyTextInLog( "catC: 0" );
53          validator.verifyTextInLog( "catNone: 0" );
54          validator.verifyTextInLog( "mA: 1" );
55          validator.verifyTextInLog( "mB: 1" );
56          validator.verifyTextInLog( "mC: 0" );
57      }
58  
59      // CategoryA && CategoryB
60      @Test
61      public void testTestNGRunEmptyExcludeGroups()
62      {
63          OutputValidator validator = unpackTestNG().sysProp( "profile", "emptyExcludedGroups" ).executeTest();
64          validator.verifyErrorFreeLog();
65          validator.assertTestSuiteResults( 2, 0, 0, 0 );
66          validator.verifyTextInLog( "BasicTest.testInCategoriesAB()" );
67          validator.verifyTextInLog( "CategoryCTest.testInCategoriesAB()" );
68      }
69  
70      // !CategoryC
71      @Test
72      public void testTestNGRunEmptyGroups()
73      {
74          OutputValidator validator = unpackTestNG().sysProp( "profile", "emptyGroups" ).executeTest();
75          validator.verifyErrorFreeLog();
76          validator.assertTestSuiteResults( 8, 0, 0, 0 );
77          validator.verifyTextInLog( "catA: 2" );
78          validator.verifyTextInLog( "catB: 2" );
79          validator.verifyTextInLog( "catC: 0" );
80          validator.verifyTextInLog( "catNone: 1" );
81          validator.verifyTextInLog( "mA: 2" );
82          validator.verifyTextInLog( "mB: 2" );
83          validator.verifyTextInLog( "mC: 0" );
84          validator.verifyTextInLog( "NoCategoryTest.CatNone: 1" );
85      }
86  
87      private SurefireLauncher unpackJUnit()
88      {
89          return unpack( "surefire-828-emptyGroupExpr-junit48" );
90      }
91  
92      private SurefireLauncher unpackTestNG()
93      {
94          return unpack( "surefire-828-emptyGroupExpr-testng" );
95      }
96  
97  }