Пример #1
0
        private static string PrepareExpectedResponse(AccountEntity accountEntity)
        {
            var accountTokens = accountEntity.Tokens.Select(x => new AccountToken(x.Issued, x.Expires,
                                                                                  TokenProfile.ConvertToAccountTokenTypeEnum(x.Type.ConvertToEnumeration()), x.Value));
            var getAccountResponse = new GetAccountResponse(accountEntity.Id, accountEntity.Email,
                                                            accountEntity.Confirmed, accountEntity.Created, !string.IsNullOrWhiteSpace(accountEntity.PasswordHash),
                                                            accountEntity.LastLogin, accountEntity.Roles.Select(x => x.RoleId), accountTokens);
            var settings = new JsonSerializerSettings
            {
                Formatting       = Formatting.Indented,
                ContractResolver = new DefaultTestPlatformContractResolver
                {
                    NamingStrategy = new CamelCaseNamingStrategy()
                },
                Converters = new List <JsonConverter> {
                    new StringEnumConverter()
                }
            };

            return(JsonConvert.SerializeObject(getAccountResponse, settings));
        }
Пример #2
0
        public async Task GetAccountAsync_Should_Return_OkObjectResult_With_GetAccountResponse()
        {
            var authResult = AuthorizationResult.Success();
            var getAccountTokenOutputQueries = new List <GetAccountTokenOutputQuery>
            {
                new GetAccountTokenOutputQuery(DateTimeOffset.UtcNow, DateTimeOffset.UtcNow.AddDays(1),
                                               TokenTypeEnumeration.AccountConfirmation, "123456")
            };
            var getAccountOutputQuery = new GetAccountOutputQuery(Guid.NewGuid(), "*****@*****.**", true,
                                                                  DateTimeOffset.UtcNow, true, null, new List <Guid> {
                Guid.NewGuid()
            }, getAccountTokenOutputQueries);
            var accountTokens = getAccountOutputQuery.Tokens.Select(x =>
                                                                    new AccountToken(x.Issued, x.Expires, TokenProfile.ConvertToAccountTokenTypeEnum(x.Type), x.Value));
            var getAccountResponse = new GetAccountResponse(getAccountOutputQuery.Id, getAccountOutputQuery.Email,
                                                            getAccountOutputQuery.Confirmed, getAccountOutputQuery.Created, getAccountOutputQuery.PasswordAssigned,
                                                            getAccountOutputQuery.LastLogin, getAccountOutputQuery.Roles, accountTokens);

            _authorizationServiceMock
            .Setup(x => x.AuthorizeAsync(It.IsAny <ClaimsPrincipal>(), It.IsAny <object>(), It.IsAny <string>()))
            .ReturnsAsync(authResult);
            _getAccountQueryHandlerMock
            .Setup(x => x.HandleAsync(It.IsAny <GetAccountInputQuery>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(getAccountOutputQuery);
            _mapperMock.Setup(x => x.Map <GetAccountOutputQuery, GetAccountResponse>(It.IsAny <GetAccountOutputQuery>()))
            .Returns(getAccountResponse);

            var result = await _controller.GetAccountAsync(getAccountOutputQuery.Id);

            var okResult = result.As <OkObjectResult>();

            okResult.Value.Should().BeEquivalentTo(getAccountResponse);
        }