11package io .openapitools .api .capabilities ;
22
3+ import org .junit .Test ;
4+
35import java .util .List ;
46
57import static org .junit .Assert .assertEquals ;
6-
7- import org .junit .Test ;
8+ import static org .junit .Assert .assertTrue ;
89
910public class SelectTest {
1011
1112
1213 @ Test
13- public void testNoSelection (){
14+ public void testNoSelection () {
1415 List <Select > selections = Select .getSelections (null );
1516 assertEquals (0 , selections .size ());
1617 }
1718
1819 @ Test
19- public void testEmptySelection (){
20+ public void testEmptySelection () {
2021 List <Select > selections = Select .getSelections ("" );
2122 assertEquals (0 , selections .size ());
2223 }
2324
2425 @ Test
25- public void testWrongSelection (){
26+ public void testWrongSelection () {
2627 List <Select > selections = Select .getSelections ("::" );
2728 assertEquals (0 , selections .size ());
2829 selections = Select .getSelections ("|" );
2930 assertEquals (0 , selections .size ());
3031 }
3132
3233 @ Test
33- public void testIllegalSelection (){
34+ public void testIllegalSelection () {
3435 List <Select > selections = Select .getSelections ("?::4" );
3536 assertEquals (0 , selections .size ());
3637 selections = Select .getSelections ("3::4" );
@@ -44,33 +45,40 @@ public void testIllegalSelection(){
4445 }
4546
4647 @ Test
47- public void testSimpleSelection (){
48+ public void testSimpleSelection () {
4849 List <Select > selections = Select .getSelections ("u::4" );
4950 assertEquals (1 , selections .size ());
5051 selections = Select .getSelections ("attribute::value" );
5152 assertEquals (1 , selections .size ());
5253 selections = Select .getSelections ("a::value" );
5354 assertEquals (1 , selections .size ());
55+ selections = Select .getSelections ("attribute:: value" );
56+ assertEquals (1 , selections .size ());
57+ selections = Select .getSelections ("attribute:: value " );
58+ assertEquals (1 , selections .size ());
59+ selections = Select .getSelections ("attribute::value " );
60+ assertEquals (1 , selections .size ());
61+ }
62+
63+ @ Test
64+ public void testAdditionalSpecific () {
65+ assertEquals (" S p a c e s " , Select .getSelections ("attribute:: S p a c e s " ).get (0 ).getValue ());
66+ assertEquals ("(parenthesis)" , Select .getSelections ("attribute::(parenthesis)" ).get (0 ).getValue ());
67+ assertEquals ("forward/slash" , Select .getSelections ("attribute::forward/slash" ).get (0 ).getValue ());
5468 }
5569
5670 @ Test
57- public void testSelectionWithWhiteSpaceAttribute (){
71+ public void testSelectionWithWhiteSpaceAttribute () {
5872 List <Select > selections = Select .getSelections ("attribute ::value" );
5973 assertEquals (0 , selections .size ());
6074 selections = Select .getSelections ("attribute ::value" );
6175 assertEquals (0 , selections .size ());
6276 selections = Select .getSelections (" attribute::value" );
6377 assertEquals (0 , selections .size ());
64- selections = Select .getSelections ("attribute:: value" );
65- assertEquals (0 , selections .size ());
66- selections = Select .getSelections ("attribute:: value " );
67- assertEquals (0 , selections .size ());
68- selections = Select .getSelections ("attribute::value " );
69- assertEquals (0 , selections .size ());
7078 }
7179
7280 @ Test
73- public void testSelectionWithSuspiciousCharacters (){
81+ public void testSelectionWithSuspiciousCharacters () {
7482 List <Select > selections = Select .getSelections ("attribute or '1' = '1::value" );
7583 assertEquals (0 , selections .size ());
7684 selections = Select .getSelections ("attribute or '1' = '1::value" );
@@ -90,7 +98,7 @@ public void testSelectionWithSuspiciousCharacters(){
9098 }
9199
92100 @ Test
93- public void testSelectionCriteria (){
101+ public void testSelectionCriteria () {
94102 List <Select > selections = Select .getSelections ("attribute::value|otherAttribute::otherValue" );
95103 assertEquals (2 , selections .size ());
96104 boolean attributeValueObserved = false ;
@@ -112,7 +120,7 @@ public void testSelectionCriteria(){
112120 }
113121
114122 @ Test
115- public void testSelectionHavingMultipleCriteria (){
123+ public void testSelectionHavingMultipleCriteria () {
116124 List <Select > selections = Select .getSelections ("attribute::value|otherAttribute::otherValue" );
117125 assertEquals (2 , selections .size ());
118126 boolean attributeValueObserved = false ;
@@ -157,7 +165,7 @@ public void testSelectionHavingMultipleCriteria(){
157165 }
158166
159167 @ Test
160- public void testIllegalSelections (){
168+ public void testIllegalSelections () {
161169 List <Select > selections = Select .getSelections ("?::4|a::b" );
162170 assertEquals (0 , selections .size ());
163171 selections = Select .getSelections ("?::4|a::b" );
@@ -167,5 +175,13 @@ public void testIllegalSelections(){
167175 selections = Select .getSelections ("v::g|f::j|u::iio|3::4" );
168176 assertEquals (0 , selections .size ());
169177 }
170-
178+
179+ @ Test
180+ public void testWildcards () {
181+ List <Select > selections = Select .getSelections ("name::*loan|name::savings*" );
182+ assertEquals (2 , selections .size ());
183+ for (Select sel : selections ) {
184+ assertTrue (sel .getValue ().equals ("*loan" ) || sel .getValue ().equals ("savings*" ));
185+ }
186+ }
171187}
0 commit comments