---
# System prepended metadata

title: Testes de mesa VoxMe

---

# Testes de mesa VoxMe

### Usuario é o assinante e assistido
Como o assinante é o assistido principal, ele visualiza seus dados e os dados dos assistidos secundarios no quem usa o voxme.

Acesso ao assistido principal:

 1. Usuario consegue alterar nome
 2. Usuario não pode alterar a sua senha. (campo e botões ficam oculto)
 3. Usuario consegue alterar o email:

        1. Ao mudar o seu email o usuario gera um assistido principal
        Nesse cenario os campos de senha ficam visiveis e são obrigatorios. 

Acesso ao assistido secundario:
 1. Usuario consegue alterar nome
 2. Usuario consegue alterar seu email
 3. Usuario consegue alterar sua senha

### Usuario é o assinante e tem assistido principal

Assinante visualiza somente assistido principal e assistidos secundarios no quem usa o voxme.

Acesso ao assistido principal

  1. Usuario consegue alterar seu nome
  2. Usuario consegue alterar sua senha
  3. Usuario consegue alterar seu email:

    1. Deve exigir a senha se for para outro email que não seja o email do assinante

    2. Se o assinante mudar o email do assistido para o seu email, o assinante torna-se o assistido principal.
    Nessa situação os campos de nome e telefone ficam desabilitados e o campo/botão de senha ficam ocultos.

Acesso ao assistido secundario:

 1. Usuario consegue alterar nome
 2. Usuario consegue alterar seu email
 3. Usuario consegue alterar sua senha

### Usuario é o assistido principal
O assistido principal logou no voxme, nessa situação ele pode:
 1. Usuario consegue alterar nome
 2. Usuario consegue alterar seu email
 3. Usuario consegue alterar sua senha

### Usuario é o assistido secundario
O assistido secundario logou no voxme, nessa situação ele pode:
 1. Usuario consegue alterar nome
 2. Usuario consegue alterar seu email
 3. Usuario consegue alterar sua senha


Como ficam os dados (Redux)

Somente o assinante e o assistido principal ficam persistidos no Redux (userInfo) abaixo as principais informações em cada um dos cenarios:

#### Assinante e assistido logado:
_Nessa situação as informações do user_data são as mesmas do assinante_

```json
{
is_subscriber: true,
is_user: true,
subscriber_data: null,
user_data: {...} //assistido principal (assinante)
}

```

#### Assinante logado com assistido principal:
_Nessa situação as informações do user_data são as informações do assistido principal_

```json
{
is_subscriber: true,
is_user: false,
subscriber_data: null,
user_data: {...} //assistido principal
}

```

#### Assistido principal logado (assinatura para outra pessoa):
_Nessa situação as informações do userInfo passam a ser as informações do assistido, o user_data fica nulo e o subscriber_data contém as informações do assinante_

```json
{
is_subscriber: false,
is_user: true,
subscriber_data: {...}, //assinante
user_data: {null}
}

```

#### Assistido secundario logado:
_Nessa situação as informações do userInfo passam a ser as informações do assistido secundario, o user_data fica nulo e o subscriber_data contém as informações do assinante_
_Edições quando o assistido secundario estiver logado devem ser persistidas no redux_

```json
{
is_subscriber: false,
is_user: true,
subscriber_data: {...}, //assinante
user_data: {null}
}

```
usuário assinate e assistido (self-assist)

quem usa o voxme:

- campo, nome e telefone ficam bloqueados
- botão trocar senha fica oculto
- campo email liberado
- ao aletar o email, desbloqueia o nome, telefone e exibe a senha (pois vai deixar de ser self-assist)

usuário assinate, assistido é outra pessoa

- todos os campos liberados
- aparece o botão de trocar senha
- se colocar o email do proprio assistido, bloqueia todos os campos menos o email
- oculta o trocar senha

usuário assinante com assistidos secundários

- todos os campos liberados
- não existe validação especial
- não tem tratamento especial

usuário logado como assistido (não é self-assist)

- visualizar os dados próprios
- todos os campos liberados
- não tem tratamento especial
- na seção de conta, apenas visual

