@@ -166,4 +166,102 @@ public void testGetFormattedFee_returnsPercentNoFee() {
166166 int resourceIdCaptorValue = resourceIdCaptor .getValue ();
167167 assertThat (resourceIdCaptorValue , is (R .string .noFee ));
168168 }
169+
170+ @ Test
171+ public void testGetFormattedFee_returnsMixedNoFee () {
172+ Fee flatFee = new Fee (mJSONObject .optJSONObject ("FEE_EIGHT" ).optJSONArray ("nodes" ).optJSONObject (0 ));
173+ Fee percentFee = new Fee (mJSONObject .optJSONObject ("FEE_NINE" ).optJSONArray ("nodes" ).optJSONObject (0 ));
174+
175+ FeeFormatter .getFormattedFee (context , Arrays .asList (flatFee ,percentFee ));
176+ verify (resources ).getString (resourceIdCaptor .capture ());
177+ int resourceIdCaptorValue = resourceIdCaptor .getValue ();
178+ assertThat (resourceIdCaptorValue , is (R .string .noFee ));
179+ }
180+
181+ @ Test
182+ public void testGetFormattedFee_returnsFlatFee () {
183+ Fee percentFee = new Fee (mJSONObject .optJSONObject ("FEE_EIGHT" ).optJSONArray ("nodes" ).optJSONObject (0 ));
184+ FeeFormatter .getFormattedFee (context , Arrays .asList (mFlatFee ,percentFee ));
185+
186+ verify (resources ).getString (resourceIdCaptor .capture (), formatterArgumentCapture .capture ());
187+ int resourceIdCaptorValue = resourceIdCaptor .getValue ();
188+ List <Object > argumentList = formatterArgumentCapture .getAllValues ();
189+ assertThat (resourceIdCaptorValue , is (R .string .fee_flat_formatter ));
190+ assertThat (argumentList .size (), is (2 ));
191+ }
192+
193+ @ Test
194+ public void testGetFormattedFee_returnsFlatFeeWithMinAndMax () {
195+ Fee percentFee = new Fee (mJSONObject .optJSONObject ("FEE_TEN" ).optJSONArray ("nodes" ).optJSONObject (0 ));
196+ FeeFormatter .getFormattedFee (context , Arrays .asList (mFlatFee ,percentFee ));
197+
198+ verify (resources ).getString (resourceIdCaptor .capture (), formatterArgumentCapture .capture ());
199+ int resourceIdCaptorValue = resourceIdCaptor .getValue ();
200+ List <Object > argumentList = formatterArgumentCapture .getAllValues ();
201+ assertThat (resourceIdCaptorValue , is (R .string .fee_flat_formatter ));
202+ assertThat (argumentList .size (), is (2 ));
203+ }
204+
205+ @ Test
206+ public void testGetFormattedFee_returnsFlatFeeWithMaxOnly () {
207+ Fee percentFee = new Fee (mJSONObject .optJSONObject ("FEE_TWELVE" ).optJSONArray ("nodes" ).optJSONObject (0 ));
208+ FeeFormatter .getFormattedFee (context , Arrays .asList (mFlatFee ,percentFee ));
209+
210+ verify (resources ).getString (resourceIdCaptor .capture (), formatterArgumentCapture .capture ());
211+ int resourceIdCaptorValue = resourceIdCaptor .getValue ();
212+ List <Object > argumentList = formatterArgumentCapture .getAllValues ();
213+ assertThat (resourceIdCaptorValue , is (R .string .fee_flat_formatter ));
214+ assertThat (argumentList .size (), is (2 ));
215+ }
216+
217+ @ Test
218+ public void testGetFormattedFee_returnsFlatFeeWithMinOnly () {
219+ Fee percentFee = new Fee (mJSONObject .optJSONObject ("FEE_ELEVEN" ).optJSONArray ("nodes" ).optJSONObject (0 ));
220+ FeeFormatter .getFormattedFee (context , Arrays .asList (mFlatFee ,percentFee ));
221+
222+ verify (resources ).getString (resourceIdCaptor .capture (), formatterArgumentCapture .capture ());
223+ int resourceIdCaptorValue = resourceIdCaptor .getValue ();
224+ List <Object > argumentList = formatterArgumentCapture .getAllValues ();
225+ assertThat (resourceIdCaptorValue , is (R .string .fee_flat_formatter ));
226+ assertThat (argumentList .size (), is (2 ));
227+ }
228+
229+ @ Test
230+ public void testGetFormattedFee_returnsPercentFeeWithMinAndMax () {
231+ Fee flatFee = new Fee (mJSONObject .optJSONObject ("FEE_NINE" ).optJSONArray ("nodes" ).optJSONObject (0 ));
232+ Fee percentFee = new Fee (mJSONObject .optJSONObject ("FEE_TWO" ).optJSONArray ("nodes" ).optJSONObject (0 ));
233+ FeeFormatter .getFormattedFee (context , Arrays .asList (flatFee ,percentFee ));
234+
235+ verify (resources ).getString (resourceIdCaptor .capture (), formatterArgumentCapture .capture ());
236+ int resourceIdCaptorValue = resourceIdCaptor .getValue ();
237+ List <Object > argumentList = formatterArgumentCapture .getAllValues ();
238+ assertThat (resourceIdCaptorValue , is (R .string .fee_percent_formatter ));
239+ assertThat (argumentList .size (), is (4 ));
240+ }
241+
242+ @ Test
243+ public void testGetFormattedFee_returnsPercentFeeWithMinOnly () {
244+ Fee flatFee = new Fee (mJSONObject .optJSONObject ("FEE_NINE" ).optJSONArray ("nodes" ).optJSONObject (0 ));
245+ Fee percentFee = new Fee (mJSONObject .optJSONObject ("FEE_THREE" ).optJSONArray ("nodes" ).optJSONObject (0 ));
246+ FeeFormatter .getFormattedFee (context , Arrays .asList (flatFee ,percentFee ));
247+
248+ verify (resources ).getString (resourceIdCaptor .capture (), formatterArgumentCapture .capture ());
249+ int resourceIdCaptorValue = resourceIdCaptor .getValue ();
250+ List <Object > argumentList = formatterArgumentCapture .getAllValues ();
251+ assertThat (resourceIdCaptorValue , is (R .string .fee_percent_only_min_formatter ));
252+ assertThat (argumentList .size (), is (3 ));
253+ }
254+
255+ @ Test
256+ public void testGetFormattedFee_returnsPercentFeeWithMaxOnly () {
257+ Fee flatFee = new Fee (mJSONObject .optJSONObject ("FEE_NINE" ).optJSONArray ("nodes" ).optJSONObject (0 ));
258+ Fee percentFee = new Fee (mJSONObject .optJSONObject ("FEE_FOUR" ).optJSONArray ("nodes" ).optJSONObject (0 ));
259+ FeeFormatter .getFormattedFee (context , Arrays .asList (flatFee ,percentFee ));
260+
261+ verify (resources ).getString (resourceIdCaptor .capture (), formatterArgumentCapture .capture ());
262+ int resourceIdCaptorValue = resourceIdCaptor .getValue ();
263+ List <Object > argumentList = formatterArgumentCapture .getAllValues ();
264+ assertThat (resourceIdCaptorValue , is (R .string .fee_percent_only_max_formatter ));
265+ assertThat (argumentList .size (), is (3 ));
266+ }
169267}
0 commit comments