Preyea Regmi
5 years ago
14 changed files with 465 additions and 115 deletions
-
BIN.idea/caches/build_file_checksums.ser
-
7app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV3/gateway/recipientaddV3/RecipientAddV3Gateway.java
-
32app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV3/model/recipientaddV3/ReceiverInfoViewStateDTO.java
-
74app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV3/model/recipientaddV3/ValidationRuleModel.java
-
43app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV3/model/recipientlistingV3/AgentV3Model.java
-
35app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV3/model/recipientlistingV3/Branch.java
-
37app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV3/model/recipientlistingV3/PaymentMethodV3Model.java
-
43app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV3/model/recipientlistingV3/ReceiverInfoV3Model.java
-
19app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV3/presenter/recipientaddV3/RecipientAddV3InteractorInterface.java
-
94app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV3/presenter/recipientaddV3/RecipientAddV3Presenter.java
-
56app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV3/presenter/recipientaddV3/RecipientAddV3PresenterInterface.java
-
66app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV3/view/recipientaddV3/RecipientAddV3Activity.java
-
21app/src/main/java/com/gmeremit/online/gmeremittance_native/recipientV3/view/recipientlistingV3/RecipientListingV3Activity.java
-
53app/src/test/java/com/gmeremit/online/gmeremittance_native/AddRecipientV3ValidationExecutorTester.java
@ -0,0 +1,7 @@ |
|||
package com.gmeremit.online.gmeremittance_native.recipientV3.gateway.recipientaddV3; |
|||
|
|||
import com.gmeremit.online.gmeremittance_native.base.PrivilegedGateway; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV3.presenter.recipientaddV3.RecipientAddV3InteractorInterface; |
|||
|
|||
public class RecipientAddV3Gateway extends PrivilegedGateway implements RecipientAddV3InteractorInterface.RecipientAddV3GatewayInterface { |
|||
} |
@ -1,32 +0,0 @@ |
|||
package com.gmeremit.online.gmeremittance_native.recipientV3.model.recipientaddV3; |
|||
|
|||
import android.support.annotation.IdRes; |
|||
import android.view.View; |
|||
|
|||
import com.gmeremit.online.gmeremittance_native.recipientV3.presenter.recipientaddV3.RecipientAddV3PresenterInterface; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* A plain DTO object that map's validation rule to corresponding UI widget |
|||
*/ |
|||
public class ReceiverInfoViewStateDTO { |
|||
|
|||
|
|||
|
|||
List<Object> validationRule; |
|||
|
|||
public ReceiverInfoViewStateDTO( List<Object> validationRule) { |
|||
this.validationRule = validationRule; |
|||
} |
|||
|
|||
public void applyValidationRuleToAllViews(RecipientAddV3PresenterInterface.RecipientAddV2ContractInterface view) |
|||
{ |
|||
for(Object rule:validationRule) |
|||
{ |
|||
|
|||
} |
|||
} |
|||
|
|||
|
|||
} |
@ -0,0 +1,74 @@ |
|||
package com.gmeremit.online.gmeremittance_native.recipientV3.model.recipientaddV3; |
|||
|
|||
public class ValidationRuleModel { |
|||
String fieldName; |
|||
String required; |
|||
String minLength; |
|||
String maxLength; |
|||
String assciiAllowed; |
|||
|
|||
public ValidationRuleModel(String fieldName, String required, String minLength, String maxLength, String assciiAllowed) { |
|||
this.fieldName = fieldName; |
|||
this.required = required; |
|||
this.minLength = minLength; |
|||
this.maxLength = maxLength; |
|||
this.assciiAllowed = assciiAllowed; |
|||
} |
|||
|
|||
public String getFieldName() { |
|||
return fieldName; |
|||
} |
|||
|
|||
public void setFieldName(String fieldName) { |
|||
this.fieldName = fieldName; |
|||
} |
|||
|
|||
public String getRequired() { |
|||
return required; |
|||
} |
|||
|
|||
public void setRequired(String required) { |
|||
this.required = required; |
|||
} |
|||
|
|||
public String getMinLength() { |
|||
return minLength; |
|||
} |
|||
|
|||
public void setMinLength(String minLength) { |
|||
this.minLength = minLength; |
|||
} |
|||
|
|||
public int getMaxLength() { |
|||
try { |
|||
return Integer.parseInt(maxLength); |
|||
} catch (NumberFormatException e) { |
|||
return 0; |
|||
} |
|||
} |
|||
|
|||
public void setMaxLength(String maxLength) { |
|||
this.maxLength = maxLength; |
|||
} |
|||
|
|||
public String getAssciiAllowed() { |
|||
return assciiAllowed; |
|||
} |
|||
|
|||
public void setAssciiAllowed(String assciiAllowed) { |
|||
this.assciiAllowed = assciiAllowed; |
|||
} |
|||
|
|||
public boolean shouldShowView() { |
|||
return !"H".equalsIgnoreCase(required); |
|||
} |
|||
|
|||
public boolean isOnlyAsciiAllowed() { |
|||
return "T".equalsIgnoreCase(assciiAllowed); |
|||
} |
|||
|
|||
public boolean isValueValid(String value) |
|||
{ |
|||
return false; |
|||
} |
|||
} |
@ -0,0 +1,35 @@ |
|||
package com.gmeremit.online.gmeremittance_native.recipientV3.model.recipientlistingV3; |
|||
|
|||
import android.os.Parcel; |
|||
import android.os.Parcelable; |
|||
|
|||
public class Branch implements Parcelable { |
|||
|
|||
|
|||
@Override |
|||
public int describeContents() { |
|||
return 0; |
|||
} |
|||
|
|||
@Override |
|||
public void writeToParcel(Parcel dest, int flags) { |
|||
} |
|||
|
|||
public Branch() { |
|||
} |
|||
|
|||
protected Branch(Parcel in) { |
|||
} |
|||
|
|||
public static final Parcelable.Creator<Branch> CREATOR = new Parcelable.Creator<Branch>() { |
|||
@Override |
|||
public Branch createFromParcel(Parcel source) { |
|||
return new Branch(source); |
|||
} |
|||
|
|||
@Override |
|||
public Branch[] newArray(int size) { |
|||
return new Branch[size]; |
|||
} |
|||
}; |
|||
} |
@ -0,0 +1,19 @@ |
|||
package com.gmeremit.online.gmeremittance_native.recipientV3.presenter.recipientaddV3; |
|||
|
|||
import com.gmeremit.online.gmeremittance_native.autodebitV2.model.autodebitaccountlisting.AutoDebitAccount; |
|||
import com.gmeremit.online.gmeremittance_native.base.BaseInteractorInterface; |
|||
import com.gmeremit.online.gmeremittance_native.base.PrivilegedGatewayInterface; |
|||
|
|||
import java.util.List; |
|||
|
|||
import io.reactivex.Observable; |
|||
import okhttp3.ResponseBody; |
|||
|
|||
public interface RecipientAddV3InteractorInterface extends BaseInteractorInterface { |
|||
|
|||
|
|||
interface RecipientAddV3GatewayInterface extends PrivilegedGatewayInterface |
|||
{ |
|||
|
|||
} |
|||
} |
@ -0,0 +1,53 @@ |
|||
package com.gmeremit.online.gmeremittance_native; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV3.model.recipientaddV3.ValidationRuleModel; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV3.model.recipientlistingV3.ReceiverInfoV3Model; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV3.presenter.recipientaddV3.RecipientAddV3Presenter; |
|||
import com.gmeremit.online.gmeremittance_native.recipientV3.presenter.recipientaddV3.RecipientAddV3PresenterInterface; |
|||
|
|||
import org.junit.Test; |
|||
import org.mockito.Mock; |
|||
import org.mockito.Mockito; |
|||
|
|||
|
|||
public class AddRecipientV3ValidationExecutorTester { |
|||
|
|||
public static final ValidationRuleModel FULL_NAME_VALIDATION_RULE_REQUIRED_ONLY_ASCII=new ValidationRuleModel("fullname","S","0","","T"); |
|||
|
|||
@Test(expected = IllegalArgumentException.class) |
|||
public void constructor_Should_Throw_IAE_For_Null_Parameter() |
|||
{ |
|||
new RecipientAddV3Presenter.AddRecipientV3ValidationExecutor(null,null); |
|||
} |
|||
|
|||
|
|||
@Test(expected = IllegalArgumentException.class) |
|||
public void apply_Dynamic_Validation_Rule_To_View_Should_Throw_IAE_For_Null_Validation_Rule() |
|||
{ |
|||
RecipientAddV3PresenterInterface.RecipientAddV3ContractInterface view=Mockito.mock(RecipientAddV3PresenterInterface.RecipientAddV3ContractInterface.class); |
|||
ReceiverInfoV3Model receiverInfoV3Model= Mockito.mock(ReceiverInfoV3Model.class); |
|||
RecipientAddV3Presenter.AddRecipientV3ValidationExecutor validationExecutor= new RecipientAddV3Presenter.AddRecipientV3ValidationExecutor(view,receiverInfoV3Model); |
|||
|
|||
|
|||
validationExecutor.applyDynamicValidationRuleToView(null); |
|||
} |
|||
|
|||
@Test |
|||
public void fullname_validation_rule_required_only_ascii_should_apply_to_corresponding_view() |
|||
{ |
|||
RecipientAddV3PresenterInterface.RecipientAddV3ContractInterface view=Mockito.mock(RecipientAddV3PresenterInterface.RecipientAddV3ContractInterface.class); |
|||
ReceiverInfoV3Model receiverInfoV3Model= Mockito.mock(ReceiverInfoV3Model.class); |
|||
|
|||
Mockito.when(receiverInfoV3Model.getName()).thenReturn("Ram"); |
|||
|
|||
|
|||
RecipientAddV3Presenter.AddRecipientV3ValidationExecutor validationExecutor= new RecipientAddV3Presenter.AddRecipientV3ValidationExecutor(view,receiverInfoV3Model); |
|||
|
|||
validationExecutor.applyDynamicValidationRuleToView(FULL_NAME_VALIDATION_RULE_REQUIRED_ONLY_ASCII); |
|||
|
|||
Mockito.verify(view).updateValidationRuleToWidgetFullName(true,true,0); |
|||
Mockito.verify(view).updateValueToWidgetFullName("Ram"); |
|||
|
|||
} |
|||
|
|||
|
|||
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue