//To have a clean code in controller, all the dependencies have been moved to base location controller //TODO: This can be still refactored using MediatR public LocationsController(ICreateLocation createLocation, IGetLocationDetail getLocationDetail, IGetLocationListBasedOnUserId getLocationListBasedOnUserId, IGetLocationListBasedOnSearchText getLocationListBasedOnSearchText, IGetUserLocationList getUserLocationList) : base(createLocation, getLocationDetail, getLocationListBasedOnUserId, getLocationListBasedOnSearchText, getUserLocationList) { }
/// <summary> /// Contructor injection for all the micro services /// </summary> /// <param name="createLocation">Creates a new location for the logged-in user (Input: User Id, Location object)</param> /// <param name="getLocationDetail">Retrieves a location details (Input: Location ID)</param> /// <param name="getLocationListBasedOnUserId">Retrieves list of locations for logged-in user(Input: User ID)</param> /// <param name="getLocationListBasedOnSearchText">Retrieves list of locations based on remarks(Input: any text)</param> /// <param name="getUserLocationList">Retrieves list of locations based on username(Input: User name)</param> public BaseLocationController(ICreateLocation createLocation, IGetLocationDetail getLocationDetail, IGetLocationListBasedOnUserId getLocationListBasedOnUserId, IGetLocationListBasedOnSearchText getLocationListBasedOnSearchText, IGetUserLocationList getUserLocationList) { _createLocation = createLocation; _getLocationDetail = getLocationDetail; _getLocationListBasedOnUserId = getLocationListBasedOnUserId; _getLocationListBasedOnSearchText = getLocationListBasedOnSearchText; _getUserLocationList = getUserLocationList; }
public void TestInitialize() { userId = 1; createLocationModel = new CreateLocationModel() { Label = "Argentina", Latitude = 3.56D, Longitude = 7.76D, Remark = "Beautiful and charming" }; _createLocationCommand = new Mock <ICreateLocationCommand>(); _createLocation = new CreateLocation(_createLocationCommand.Object); }