View Javadoc
1   /*
2    * Copyright © 2016 Greg Chabala
3    *
4    * This file is part of brick-control-lab.
5    *
6    * brick-control-lab is free software: you can redistribute it and/or modify
7    * it under the terms of the GNU Lesser General Public License as
8    * published by the Free Software Foundation, either version 3 of the
9    * License, or (at your option) any later version.
10   *
11   * brick-control-lab is distributed in the hope that it will be useful,
12   * but WITHOUT ANY WARRANTY; without even the implied warranty of
13   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14   * GNU Lesser General Public License for more details.
15   *
16   * You should have received a copy of the GNU Lesser General Public License
17   * along with brick-control-lab.  If not, see http://www.gnu.org/licenses/.
18   */
19  package org.chabala.brick.controllab;
20  
21  import org.junit.Test;
22  
23  import java.util.Arrays;
24  import java.util.stream.Collectors;
25  
26  import static org.hamcrest.Matchers.*;
27  import static org.junit.Assert.assertThat;
28  
29  /**
30   * Testing {@link InputId}.
31   */
32  public class InputIdTest {
33  
34      @Test
35      public void testThereAreEightInputs() throws Exception {
36          assertThat(InputId.values(), arrayWithSize(8));
37      }
38  
39      @Test
40      public void testThereAreFourPassiveInputs() throws Exception {
41          assertThat(Arrays.stream(InputId.values())
42                     .map(InputId::getInputType)
43                     .filter(InputType.PASSIVE::equals)
44                     .collect(Collectors.toList()), hasSize(4));
45      }
46  
47      @Test
48      public void testThereAreFourActiveInputs() throws Exception {
49          assertThat(Arrays.stream(InputId.values())
50                     .map(InputId::getInputType)
51                     .filter(InputType.ACTIVE::equals)
52                     .collect(Collectors.toList()), hasSize(4));
53      }
54  }