File tree Expand file tree Collapse file tree
main/java/com/marketdata/sdk
test/java/com/marketdata/sdk Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -33,6 +33,11 @@ private OptionsQuotesRequest(Builder b) {
3333 this .countback = b .countback ;
3434 }
3535
36+ /** Shortcut for {@code builder(first, rest...).build()}. */
37+ public static OptionsQuotesRequest of (String first , String ... rest ) {
38+ return builder (first , rest ).build ();
39+ }
40+
3641 /**
3742 * Start a builder with one or more option symbols. At least one symbol is required; duplicates
3843 * are kept (each one results in its own HTTP call).
Original file line number Diff line number Diff line change @@ -28,6 +28,11 @@ private StockQuotesRequest(Builder b) {
2828 this .week52 = b .week52 ;
2929 }
3030
31+ /** Shortcut for {@code builder(first, rest...).build()}. */
32+ public static StockQuotesRequest of (String first , String ... rest ) {
33+ return builder (first , rest ).build ();
34+ }
35+
3136 /** Start a builder with one or more ticker symbols. At least one is required. */
3237 public static Builder builder (String first , String ... rest ) {
3338 Builder b = new Builder ();
Original file line number Diff line number Diff line change @@ -37,6 +37,16 @@ void stockQuotesOptInColumnSettersChain() {
3737 assertThat (r .week52 ()).isTrue ();
3838 }
3939
40+ @ Test
41+ void stockQuotesOfFactoryCarriesSymbolsAndDefaultsOptionals () {
42+ StockQuotesRequest r = StockQuotesRequest .of ("AAPL" , "MSFT" );
43+
44+ assertThat (r .symbols ()).containsExactly ("AAPL" , "MSFT" );
45+ assertThat (r .extended ()).isNull ();
46+ assertThat (r .candle ()).isNull ();
47+ assertThat (r .week52 ()).isNull ();
48+ }
49+
4050 @ Test
4151 void stockCandlesCountbackSetterIsCarried () {
4252 StockCandlesRequest r =
@@ -114,6 +124,14 @@ void optionsQuotesFromSetterIsCarried() {
114124 assertThat (r .from ()).isEqualTo (TODAY .minusDays (1 ));
115125 }
116126
127+ @ Test
128+ void optionsQuotesOfFactoryCarriesSymbolsAndDefaultsOptionals () {
129+ OptionsQuotesRequest r = OptionsQuotesRequest .of ("AAPL250620C00200000" , "AAPL250620P00200000" );
130+
131+ assertThat (r .optionSymbols ()).containsExactly ("AAPL250620C00200000" , "AAPL250620P00200000" );
132+ assertThat (r .from ()).isNull ();
133+ }
134+
117135 @ Test
118136 void optionsRequestsRejectEmptyInputs () {
119137 assertThatThrownBy (() -> OptionsStrikesRequest .of ("" ))
You can’t perform that action at this time.
0 commit comments