Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

ledgersmb::dbtest(3pm) [debian man page]

LedgerSMB::DBTest(3pm)					User Contributed Perl Documentation				    LedgerSMB::DBTest(3pm)

NAME
LedgerSMB::DBTest - LedgerSMB commit filter for test cases. SYOPSIS
This module creates a DBI-like interface but ensures autocommit is off, and filters commit statements such that they don't do anything. This can be used for making API test cases which involve DB commits safe for production environments. USAGE
Both LedgerSMB.pm and LedgerSMB/Form.pm assign a global database handler for all database access within a script in the dbh property (for example, $request->{dbh} or $form->{dbh}). By setting this early to a LedgerSMB::DBTest (instead of a DBI object), the tests can be made safe. However, there are a few limitations to be aware of. One cannot run tests through the standard request handler and use this module. Hence this is limited to unit tests of files in the LedgerSMB, scripts, and bin directories. Here is an example of how this could be done: my $lsmb = LedgerSMB->new(); $lsmb->merge($testdata); my $dbh = LedgerSMB::DBTest->connect("dbi:Pg:dbname=$company", "$username", "$password",) $lsmb->{dbh} = $dbh; METHODS
connect($dsn, $user, $pass) Connects to the database and returns a LedgerSMB::DBTest object commit() Tests the current transaction (issues a 'SELECT 1;' to the database). If this is successful returns 1, if not, rolls back and returns false. Note that this means all past tests are rolled back and this is inconsistent with normal transactional behavior. prepare() Returns a statement handle, via the private DBI database handle. do() passes this statement on to the private database handle errstr() passes this call on to the private database handle err() passes this call on to the private database handle quote() passes this call on to the private database handle quote_identifier() passes this call on to the private database handle rollback() passes this call on to the private database handle. Note that this will roll back all statements issues through this object. perl v5.14.2 2010-03-02 LedgerSMB::DBTest(3pm)

Check Out this Related Man Page

LedgerSMB::DBObject::Account(3pm)			User Contributed Perl Documentation			 LedgerSMB::DBObject::Account(3pm)

NAME
LedgerSMB::DBObject::Account - Base class for chart of accounts entries SYNOPSYS
This class contains methods for managing chart of accounts entries (headings and accounts). INERITS
LedgerSMB::DBObject METHODS
save() This method saves the chart of accounts entry. The hash component of the object may contain an id attribute, used to overwrite an account if that one exists. Hash entries Used: id: (optional): If set, overwrite existing account. accno: the text used to specify the account number description: Text to describe the account category: A = asset, L = liability, Q = Equity, I = Income, E = expense gifi_accno: The GIFI account entry control code heading: (Optional) The integer representing the heading.id desired contra: If true, the account balances on the opposite side. tax: If true, is a tax account link: a list of strings representing text box identifier. get() This method gets a chart of accounts entry. It requires that the $account->{id} value must be properly set. check_transactions() Returns true if the account has transactions, false if not. Also sets the $account->{has_transactions} value to the return value. $account->{id} must be set. is_recon Returns true if is set up for reconciliation. False otherwise. delete() Attempts to delete the account. This will NOT succeed if the account is referenced in any way by any transactions, credit accounts, etc. $account->{id} must be set. list() Returns a list of all accounts. generate_links() A mostly-private method for generating and checking whether link data is valid. This is usually done (automatically) in preparation for saving the information to the database. list_headings Returns a list of account_heading's. No inputs required. SEE ALSO
LedgerSMB::DBObject, LedgerSMB COPYRIGHT
Copyright (c) 2009, the LedgerSMB Core Team. This is licensed under the GNU General Public License, version 2, or at your option any later version. Please see the accompanying License.txt for more information. perl v5.14.2 2012-03-25 LedgerSMB::DBObject::Account(3pm)
Man Page