コード例 #1
0
        private async Task Seed(string energySupplierGlnNumber, string meteringPointGsrnNumber)
        {
            //TODO: Need to separate customers from energy suppliers - This does not make any sense at all
            var customerId = "Unknown";
            var customer   = new EnergySupplier(new GlnNumber(customerId));

            _energySupplierRepository.Add(customer);

            var energySupplierGln = new GlnNumber(energySupplierGlnNumber);
            var energySupplier    = new EnergySupplier(energySupplierGln);

            _energySupplierRepository.Add(energySupplier);

            await _unitOfWorkCallback.CommitAsync().ConfigureAwait(false);

            var meteringPoint =
                MeteringPoint.CreateProduction(
                    GsrnNumber.Create(meteringPointGsrnNumber), true);

            var systemTimeProvider = _serviceProvider.GetRequiredService <ISystemDateTimeProvider>();

            meteringPoint.RegisterMoveIn(new MarketParticipantMrid(customerId), new MarketParticipantMrid(energySupplierGlnNumber), systemTimeProvider.Now().Minus(Duration.FromDays(365)));
            meteringPoint.ActivateMoveIn(new MarketParticipantMrid(customerId), new MarketParticipantMrid(energySupplierGlnNumber));
            _meteringPointRepository.Add(meteringPoint);
            await _unitOfWorkCallback.CommitAsync().ConfigureAwait(false);
        }
コード例 #2
0
        private Task <MeteringPoint> GetMeteringPointAsync(string gsrnNumber)
        {
            var meteringPointId = GsrnNumber.Create(gsrnNumber);
            var meteringPoint   =
                _meteringPointRepository.GetByGsrnNumberAsync(meteringPointId);

            return(meteringPoint);
        }
コード例 #3
0
        private (ProcessId, GsrnNumber, Instant) CreateTestValues()
        {
            var processId     = new ProcessId(Guid.NewGuid().ToString());
            var gsrnNumber    = GsrnNumber.Create("571234567891234568");
            var effectiveDate = SystemClock.Instance.GetCurrentInstant().Plus(Duration.FromDays(60));

            return(processId, gsrnNumber, effectiveDate);
        }
コード例 #4
0
 public void Should_create_when_gsrn_value_is_valid(string gsrnValue)
 {
     Assert.NotNull(GsrnNumber.Create(gsrnValue));
 }
コード例 #5
0
 public void Should_throw_when_length_is_invalid(string gsrnValue)
 {
     Assert.Throws <InvalidMeteringPointIdRuleException>(() => GsrnNumber.Create(gsrnValue));
 }
コード例 #6
0
 private static GsrnNumber CreateGsrnNumber()
 {
     return(GsrnNumber.Create("571234567891234568"));
 }