public AssetSettingsListService(IAssetSettingsListRepository assetTargetWorkDefinitionData, IEnumerable <IRequestValidator <AssetSettingsListRequest> > assetSettingsListValidators, IEnumerable <IRequestValidator <IServiceRequest> > serviceRequestParametersValidators, IParameterAttributeCache parameterAttributeCache, IMapper mapper, ILoggingService loggingService, IOptions <Configurations> configurations) { this._assetSettingsListValidators = assetSettingsListValidators; this._serviceRequestParametersValidators = serviceRequestParametersValidators; this._assetSettingsListRepository = assetTargetWorkDefinitionData; this._parameterAttributeCache = parameterAttributeCache; this._mapper = mapper; this._loggingService = loggingService; this._loggingService.CreateLogger(typeof(AssetSettingsListService)); this._configurations = configurations.Value; }
public AssetSettingsListRepositoryTests() { _stubLoggingService = Substitute.For <ILoggingService>(); _stubTransactions = Substitute.For <ITransactions>(); _assetSettingsListRepository = new AssetSettingsListRepository(_stubTransactions, _stubLoggingService); _assetUIDs = new List <string> { Guid.NewGuid().ToString("N"), Guid.NewGuid().ToString("N"), Guid.NewGuid().ToString("N"), Guid.NewGuid().ToString("N"), Guid.NewGuid().ToString("N"), Guid.NewGuid().ToString("N") }; }
public AssetSettingsServiceTests() { this._customerUid = Guid.NewGuid(); this._userUid = Guid.NewGuid(); this._assetUIDs = new List <Guid>(); this._assetSettingsDtos = new List <AssetSettingsDto>(); for (int i = 0; i < 10; i++) { this._assetUIDs.Add(Guid.NewGuid()); } for (int i = 0; i < 10; i++) { this._assetSettingsDtos.Add(new AssetSettingsDto { AssetConfigUID = Guid.NewGuid(), AssetUID = this._assetUIDs[i], InsertUTC = DateTime.UtcNow, UpdateUTC = DateTime.UtcNow, StartDate = DateTime.Now.Date, TargetType = AssetTargetType.BucketVolumeinCuMeter.ToString(), TargetValue = 5500.00 }); } this._assetConfigTypeDtos = new List <AssetConfigTypeDto>(); this._assetConfigTypeDtos.AddRange( new List <AssetConfigTypeDto> { new AssetConfigTypeDto { AssetConfigTypeID = 0, ConfigTypeName = "IdletimeHours" }, new AssetConfigTypeDto { AssetConfigTypeID = 1, ConfigTypeName = "RuntimeHours" }, new AssetConfigTypeDto { AssetConfigTypeID = 2, ConfigTypeName = "Runtime" }, new AssetConfigTypeDto { AssetConfigTypeID = 3, ConfigTypeName = "OdometerinKmsPerWeek" }, new AssetConfigTypeDto { AssetConfigTypeID = 4, ConfigTypeName = "BucketVolumeinCuMeter" }, new AssetConfigTypeDto { AssetConfigTypeID = 5, ConfigTypeName = "PayloadinTonnes" }, new AssetConfigTypeDto { AssetConfigTypeID = 6, ConfigTypeName = "CycleCount" }, new AssetConfigTypeDto { AssetConfigTypeID = 7, ConfigTypeName = "VolumeinCuMeter" }, new AssetConfigTypeDto { AssetConfigTypeID = 8, ConfigTypeName = "IdlingBurnRateinLiPerHour" }, new AssetConfigTypeDto { AssetConfigTypeID = 9, ConfigTypeName = "WorkingBurnRateinLiPerHour" }, new AssetConfigTypeDto { AssetConfigTypeID = 10, ConfigTypeName = "PayloadPerCycleInTonnes" } }); this._stubTransactions = Substitute.For <ITransactions>(); this._stubAssetSettingsListRepository = Substitute.For <IAssetSettingsListRepository>(); this._stubAssetSettingsListRepository.FetchValidAssetUIds(Arg.Any <List <string> >(), Arg.Any <AssetSettingsListRequestDto>()).Returns( x => { var request = (AssetSettingsListRequestDto)x[1]; if (request.CustomerUid == _customerUid.ToString("N") && request.UserUid == _userUid.ToString("N")) { return(_assetUIDs.Where(y => ((List <string>)x[0]).Contains(y.ToString())).Select(z => z.ToString())); } else { return(new List <string>()); } }); this._stubAssetConfigTypeRepository = Substitute.For <IAssetConfigTypeRepository>(); this._stubAssetSettingsRepository = Substitute.For <IAssetConfigRepository>(); this._stubKafkaPublisher = Substitute.For <IPublisher>(); this._stubInjectConfig = Substitute.For <IInjectConfig>(); this._stubInjectConfig.ResolveKeyed <IPublisher>(Arg.Any <string>()).Returns(this._stubKafkaPublisher); this._stubAssetSettingsRepository.FetchAssetConfig(Arg.Any <List <string> >(), Arg.Any <AssetSettingsDto>()).Returns(x => Task.FromResult(_assetSettingsDtos.Where(y => ((List <string>)x[0]).Contains(y.AssetUID.ToString())))); this._stubAssetConfigTypeRepository.FetchByConfigTypeNames(Arg.Any <AssetConfigTypeDto>()).Returns(callInfo => Task.FromResult(_assetConfigTypeDtos.Where(x => ((AssetConfigTypeDto)callInfo[0]).ConfigTypeNames.Contains(x.ConfigTypeName)))); this._stubLoggingService = Substitute.For <ILoggingService>(); this._stubLoggingService.CreateLogger(this.GetType()); this._stubCustomerRepository = Substitute.For <ICustomerRepository>(); this._serviceRequestParametersValidators = new List <IRequestValidator <IServiceRequest> > { new CustomerUidValidator(this._stubCustomerRepository, this._stubLoggingService), new UserUidValidator(this._stubLoggingService) }; this._assetSettingsValidators = new List <IRequestValidator <AssetSettingsRequestBase> > { new AssetUIDsValidator(this._stubAssetSettingsListRepository, this._stubLoggingService) }; this._stubConfigurations = Options.Create <Configurations>(new Configurations { KafkaSettings = new KafkaSettings { PublisherTopics = new PublisherTopics { AssetWeeklySettingsTopicName = "VSS.VISIONLINK.INTERFACES.ASSETWEEKLYTARGETS", UserAssetSettingsTopicName = "VSS.VISIONLINK.INTERFACES.USERASSETTARGETS", AssetSettingsTopicName = "VSS.VISIONLINK.INTERFACES.ASSETTARGETS", UserAssetWeeklySettingsTopicName = "VSS.VISIONLINK.INTERFACES.USERASSETWEEKLYTARGETS" } } }); this._assetSettingsPublisher = new AssetSettingsPublisher(_stubConfigurations, _stubTransactions, _stubLoggingService); var mapperConfig = new MapperConfiguration(config => { config.CreateMap <AssetSettingsListDto, AssetSettingsDetails>(); config.CreateMap <AssetSettingsDto, AssetSettingsResponse>(); }); //var databaseManager = new DatabaseManager(""); this._mapper = mapperConfig.CreateMapper(); this._assetSettingsService = new AssetSettingsService(_stubAssetSettingsRepository, _stubAssetConfigTypeRepository, _assetSettingsPublisher, _assetSettingsValidators, _serviceRequestParametersValidators, _mapper, _stubTransactions, _stubLoggingService); }
public AssetUIDsValidator(IAssetSettingsListRepository assetSettingsListRepository, ILoggingService loggingService) : base(loggingService) { this._assetSettingsListRepository = assetSettingsListRepository; }
public AssetSettingsListServiceTests() { _customerUid = Guid.NewGuid(); _userUid = Guid.NewGuid(); _assetUIDs = new List <Guid>(); _stubLoggingService = Substitute.For <ILoggingService>(); _stubCustomerRepository = Substitute.For <ICustomerRepository>(); _stubLoggingService.CreateLogger(typeof(AssetSettingsListService)); _assetSettingsListValidators = new List <IRequestValidator <AssetSettingsListRequest> > { new AssetSettingsListPageValidator(_stubLoggingService), new AssetSettingsFilterValidator(_stubLoggingService), new AssetSettingsSortColumnValidator(_stubLoggingService) }; _serviceRequestParametersValidators = new List <IRequestValidator <IServiceRequest> > { new CustomerUidValidator(_stubCustomerRepository, _stubLoggingService), new UserUidValidator(_stubLoggingService) }; for (int i = 0; i < 10; i++) { _assetUIDs.Add(Guid.NewGuid()); } _stubParameterAttributeCache = Substitute.For <IParameterAttributeCache>(); _stubAssetSettingsListRepository = Substitute.For <IAssetSettingsListRepository>(); _stubAssetSettingsListRepository.FetchEssentialAssets(Arg.Any <AssetSettingsListRequestDto>()).Returns( x => { var request = (AssetSettingsListRequestDto)x[0]; if (request.CustomerUid == _customerUid.ToString("N") && request.UserUid == _userUid.ToString("N")) { if ((_assetUIDs.Count / request.PageSize) < request.PageNumber) { return(new Tuple <int, IList <AssetSettingsListDto> >(0, new List <AssetSettingsListDto>())); } return(new Tuple <int, IList <AssetSettingsListDto> >(_assetUIDs.Count, _assetUIDs.Select(y => new AssetSettingsListDto { AssetUIDString = y.ToString("N"), AssetName = y.ToString("N") }).ToList())); } else { return(new Tuple <int, IList <AssetSettingsListDto> >(0, new List <AssetSettingsListDto>())); } }); _stubAssetSettingsListRepository.FetchDeviceTypesByAssetUID(Arg.Any <AssetDeviceTypeRequest>()).Returns(x => { var request = (AssetDeviceTypeRequest)x[0]; return(Tuple.Create <int, IEnumerable <DeviceTypeDto> >(3, new List <DeviceTypeDto>() { new DeviceTypeDto() { DeviceType = "PL121", AssetCount = 120 }, new DeviceTypeDto() { DeviceType = "PL142", AssetCount = 24 }, new DeviceTypeDto() { DeviceType = "PL132", AssetCount = 100 } })); }); var mapperconfig = new MapperConfiguration(cfg => { cfg.CreateMap <AssetSettingsListDto, AssetSettingsDetails>(); }); this._stubConfigurations = Options.Create <Configurations>(Substitute.For <Configurations>()); _mapper = mapperconfig.CreateMapper(); _assetSettingsListService = new AssetSettingsListService(_stubAssetSettingsListRepository, _assetSettingsListValidators, _serviceRequestParametersValidators, _stubParameterAttributeCache, _mapper, _stubLoggingService, _stubConfigurations); }