Even more tests!

This commit is contained in:
James Cole
2015-01-01 13:32:31 +01:00
parent 778a42bcc0
commit 402e8588cf
7 changed files with 155 additions and 10 deletions

View File

@@ -125,14 +125,6 @@ class TransactionJournal extends Eloquent
return $query->where('transaction_journals.date', '<=', $date->format('Y-m-d 00:00:00'));
}
/**
* @param Builder $query
*/
public function scopeDefaultSorting(Builder $query)
{
$query->orderBy('date', 'DESC')->orderBy('transaction_journals.id', 'DESC');
}
/**
* @param Builder $query
* @param $amount

View File

@@ -0,0 +1,10 @@
<?php
League\FactoryMuffin\Facade::define(
'Transaction', [
'account_id' => 'factory|Account',
'transaction_journal_id' => 'factory|TransactionJournal',
'description' => 'sentence',
'amount' => 'numberBetween:1,100',
]
);

View File

@@ -2,6 +2,15 @@
League\FactoryMuffin\Facade::define(
'TransactionCurrency', [
'code' => 'word',
]
'code' => function () {
$code = '';
for ($i = 0; $i < 3; $i++) {
$code .= chr(rand(65, 90));
}
return $code;
},
'name' => 'word',
'symbol' => '$'
]
);

View File

@@ -0,0 +1,8 @@
<?php
League\FactoryMuffin\Facade::define(
'TransactionGroup', [
'user_id' => 'factory|User',
'relation' => 'balance',
]
);

View File

@@ -0,0 +1,25 @@
<?php
use League\FactoryMuffin\Facade as f;
/**
* Class TransactionGroupTest
*/
class TransactionGroupTest extends TestCase
{
public function setUp()
{
parent::setUp();
}
public function tearDown()
{
parent::tearDown();
}
public function testUser()
{
$group = f::create('TransactionGroup');
$this->assertEquals($group->user_id, $group->user->id);
}
}

View File

@@ -0,0 +1,33 @@
<?php
use League\FactoryMuffin\Facade as f;
/**
* Class TransactionJournalTest
*/
class TransactionJournalTest extends TestCase
{
public function setUp()
{
parent::setUp();
}
public function tearDown()
{
parent::tearDown();
}
public function testMorethan()
{
$journal = f::create('TransactionJournal');
$transaction = f::create('Transaction');
$other = clone $transaction;
$journal->transactions()->save($transaction);
$journal->transactions()->save($other);
$amount = floatval($transaction->amount);
$amount++;
$this->assertCount(1, TransactionJournal::moreThan($amount)->get());
}
}

View File

@@ -0,0 +1,68 @@
<?php
use League\FactoryMuffin\Facade as f;
/**
* Class TransactionTest
*/
class TransactionTest extends TestCase
{
public function setUp()
{
parent::setUp();
}
public function tearDown()
{
parent::tearDown();
}
public function testAccount()
{
$transaction = f::create('Transaction');
$this->assertCount(1, Transaction::accountIs($transaction->account)->get());
}
public function testDateAfter()
{
$transaction = f::create('Transaction');
$date = clone $transaction->transactionJournal->date;
$date->subDay();
$this->assertCount(1, Transaction::after($date)->get());
}
public function testDateBefore()
{
$transaction = f::create('Transaction');
$date = clone $transaction->transactionJournal->date;
$date->addDay();
$this->assertCount(1, Transaction::before($date)->get());
}
public function testLessThan()
{
$transaction = f::create('Transaction');
$amount = floatval($transaction->amount);
$amount--;
$this->assertCount(1, Transaction::moreThan($amount)->get());
}
public function testMoreThan()
{
$transaction = f::create('Transaction');
$amount = floatval($transaction->amount);
$amount++;
$this->assertCount(1, Transaction::moreThan($amount)->get());
}
public function testTransactionTypes()
{
$transaction = f::create('Transaction');
$type = $transaction->transactionJournal->transactionType->type;
$this->assertCount(1, Transaction::transactionTypes([$type])->get());
}
}