working on testing signup routes again

This commit is contained in:
David Bomba 2019-06-24 21:05:47 +10:00
parent 67fa34fe82
commit 518d5f12e7
8 changed files with 39 additions and 17 deletions

View File

@ -54,6 +54,7 @@ class BaseController extends Controller
private function buildManager()
{
$include = '';
if(request()->input('include') !== null)
{
@ -65,17 +66,12 @@ class BaseController extends Controller
$include = implode(",", $include);
}
else
else if(count($this->forced_includes) >= 1)
{
if(count($this->forced_includes)>=1)
$include = implode(",", $this->forced_includes);
else
$include = '';
}
$include = implode(",", $this->forced_includes);
Log::error('forced includes = ' . print_r($this->forced_includes,1));
Log::error('includes = ' . $include);
}
$this->manager->parseIncludes($include);
@ -86,7 +82,8 @@ class BaseController extends Controller
$this->manager->setSerializer(new JsonApiSerializer());
} else
}
else
{
$this->manager->setSerializer(new ArraySerializer());

View File

@ -107,6 +107,19 @@ class CompanyController extends BaseController
'settings' => json_encode(DefaultSettings::userSettings()),
]);
/*
* Required dependencies
*/
if($user)
auth()->login($user, false);
$user->setCompany($company);
/*
* Create token
*/
$company_token = CreateCompanyToken::dispatchNow($company, auth()->user());
return $this->itemResponse($company);
}

View File

@ -38,7 +38,9 @@ class CreateAccount
public function __construct(array $request)
{
$this->request = $request;
}
/**
@ -68,6 +70,14 @@ class CreateAccount
*/
$user = CreateUser::dispatchNow($this->request, $account, $company, true); //make user company_owner
/*
* Required dependencies
*/
if($user)
auth()->login($user, false);
$user->setCompany($company);
/*
* Create token
*/

View File

@ -15,6 +15,7 @@ use App\DataMapper\CompanySettings;
use App\Models\Account;
use App\Models\AccountGateway;
use App\Models\Client;
use App\Models\CompanyUser;
use App\Models\Country;
use App\Models\Currency;
use App\Models\Expense;
@ -67,7 +68,7 @@ class Company extends BaseModel
public function users()
{
return $this->hasMany(User::class);
return $this->hasMany(CompanyUser::class);
}
/**

View File

@ -94,7 +94,8 @@ class User extends Authenticatable implements MustVerifyEmail
*/
public function token()
{
return $this->hasOne(CompanyToken::class)->orderBy('id', 'ASC');
return $this->tokens->whereCompanyId($this->company()->id)->first();
//return $this->hasOne(CompanyToken::class)->orderBy('id', 'ASC');
}
/**

View File

@ -105,7 +105,7 @@ class UserTransformer extends EntityTransformer
$transformer = new CompanyTokenTransformer($this->serializer);
return $this->includeItem($user->token, $transformer, CompanyToken::class);
return $this->includeItem($user->token(), $transformer, CompanyToken::class);
}

View File

@ -46,8 +46,8 @@ class ClientTest extends TestCase
$data = [
'first_name' => $this->faker->firstName,
'last_name' => $this->faker->lastName,
'name' => $this->faker->company,
'email' => $this->faker->unique()->safeEmail,
'name' => $this->faker->company,
'email' => $this->faker->unique()->safeEmail,
'password' => 'ALongAndBrilliantPassword123',
'_token' => csrf_token(),
'privacy_policy' => 1,
@ -87,8 +87,8 @@ class ClientTest extends TestCase
$data = [
'first_name' => $this->faker->firstName,
'last_name' => $this->faker->lastName,
'name' => $this->faker->company,
'email' => $this->faker->unique()->safeEmail,
'name' => $this->faker->company,
'email' => $this->faker->unique()->safeEmail,
'password' => 'ALongAndBrilliantPassword123',
'_token' => csrf_token(),
'privacy_policy' => 1,

View File

@ -124,7 +124,7 @@ class RecurringInvoiceTest extends TestCase
])->post('/api/v1/signup', $data);
$acc = $response->json();
Log::error($acc);
$account = Account::find($this->decodePrimaryKey($acc['data']['id']));
$company_token = $account->default_company->tokens()->first();