示例#1
0
        public async Task <IActionResult> CreateLicenseAsync(
            [FromBody] CreateLicenseRequest createLicense, ApiVersion version, CancellationToken token)
        {
            var createdLicense = await _licenseInstructor.CreateAsync(createLicense.ToDto(), token);

            var routeValues = new
            {
                version   = version.ToString(),
                licenseId = createdLicense.LicenseId
            };

            return(CreatedAtAction(nameof(GetLicenseIdAsync), routeValues, createdLicense));
        }
            public void GivenNoUserIdValue_ShouldThrowSubmarineMappingException()
            {
                // Arrange
                var request = new CreateLicenseRequest();

                // Act & Assert
                Assert.Multiple(() =>
                {
                    var exception = Assert.Throws <MappingException>(() => request.ToDto());

                    Assert.That(exception.ExceptionCode, Is.EqualTo((int)ExceptionCode.MappingException));
                    Assert.That(exception.TechnicalMessage, Is.Not.Null);
                    Assert.That(exception.UserMessage, Is.EqualTo(ExceptionMessages.Mapping.Failed));
                });
            }
            public void GivenValidRequest_ShouldReturnDto()
            {
                // Arrange
                var request = new CreateLicenseRequest
                {
                    UserId = Guid.NewGuid()
                };

                // Act
                var result = request.ToDto();

                // Assert
                Assert.Multiple(() =>
                {
                    Assert.That(result.UserId, Is.EqualTo(request.UserId));
                });
            }