~unifield-team/unifield-wm/us-826

« back to all changes in this revision

Viewing changes to account_activable/test/account_activable.yml

  • Committer: matthieu.choplin at msf
  • Date: 2012-08-30 07:48:00 UTC
  • mto: This revision was merged to the branch mainline in revision 1118.
  • Revision ID: matthieu.choplin@geneva.msf.org-20120830074800-l442bu42mt0yzutn
[uf-1374]- change the write and create by an _sql_constraint on the financing contract check dates

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
-
 
2
  In order to test the account module, I start by creating a new account as inactive
 
3
  I create Asset Account Type.
 
4
-
 
5
  !record {model: account.account.type, id: account_account_type_asset0}:
 
6
    close_method: balance
 
7
    code: asset
 
8
    name: Asset
 
9
    sign: 1
 
10
 
 
11
-
 
12
  I create the account
 
13
-
 
14
  !record {model: account.account, id: account_1}:
 
15
    name: "Test Account"
 
16
    code: "TEST"
 
17
    type: payable
 
18
    user_type: account_account_type_asset0
 
19
    inactivation_date: !eval "'%s-01-01' %(datetime.now().year + 2)"
 
20
    
 
21
-
 
22
  I check that the activation date is today
 
23
-
 
24
  !python {model: account.account}: |
 
25
    ac = self.browse(cr, uid, ref("account_1"))
 
26
    import datetime
 
27
    from dateutil.relativedelta import relativedelta
 
28
    assert  ac.activation_date == (datetime.datetime.today() + relativedelta(months=-3)).strftime('%Y-%m-%d'), "Wrong activation date"
 
29
 
 
30
-
 
31
  I create an analytical journal, ...
 
32
-
 
33
  !record {model: account.analytic.journal, id: analytic_journal_1}:
 
34
    code: CANJ
 
35
    name: Cash Analytic Journal
 
36
    type: general
 
37
 
 
38
-
 
39
  ... a journal view ...
 
40
-
 
41
  !record {model: account.journal.view, id: journal_view_1}:
 
42
    name: JournalView
 
43
-
 
44
  ...a journal, ...
 
45
-
 
46
  !record {model: account.journal, id: account_journal_1}:
 
47
    name: Cash Journal
 
48
    code: CTST
 
49
    currency: base.CHF
 
50
    type: cash
 
51
    view_id: journal_view_1
 
52
    analytic_journal_id: analytic_journal_1
 
53
    default_debit_account_id: account_1
 
54
    default_credit_account_id: account_1
 
55
-
 
56
  ...a fiscal year, ...
 
57
-
 
58
  !record {model: account.fiscalyear, id: account_fiscalyear_fiscalyear0}:
 
59
    code: !eval "'FY%s'% (datetime.now().year + 1)"
 
60
    company_id: base.main_company
 
61
    date_start: !eval "'%s-01-01' %(datetime.now().year + 10)"
 
62
    date_stop: !eval "'%s-12-31' %(datetime.now().year + 10)"
 
63
    name: !eval "'Fiscal Year %s' %(datetime.now().year + 10)"
 
64
-
 
65
  ... and a period.
 
66
-
 
67
  !record {model: account.period, id: account_period_0}:
 
68
    company_id: base.main_company
 
69
    date_start: !eval "'%s-03-01' %(datetime.now().year + 1,)"
 
70
    date_stop: !eval "'%s-03-31' %(datetime.now().year + 1)"
 
71
    fiscalyear_id: account_fiscalyear_fiscalyear0
 
72
    name: !eval "'Mar %s' %(datetime.now().year + 1)"
 
73
    special: 1
 
74
    state: draft
 
75
-
 
76
  I create an account move line with all of this.
 
77
-
 
78
  !record {model: account.move.line, id: move_line_test}:
 
79
    name: testline
 
80
    journal_id: account_journal_1
 
81
    period_id: account_period_0
 
82
    account_id: account_1
 
83
    currency_id: base.CHF
 
84
    date: !eval "'%s-03-12' %(datetime.now().year + 1)"
 
85
    
 
86
-
 
87
  I change the inactivation date to today (forbidden)
 
88
-
 
89
  !python {model: account.account}: |
 
90
    import datetime
 
91
    try:
 
92
      self.write(cr, uid, ref('account_1'), vals={'inactivation_date': datetime.datetime.now().strftime('%Y-%m-%d')})
 
93
    except Exception as exception:
 
94
      assert exception.value == "You cannot set an inactivity date lower than tomorrow!", "Incative date lower"
 
95
     
 
96
-
 
97
  I change the dates so that activation_date > inactivation_date (forbidden)
 
98
-
 
99
  !python {model: account.account}: |
 
100
    import datetime
 
101
    try:
 
102
      self.write(cr, uid, ref('account_1'), vals={'activation_date': '%s-03-12' %(datetime.datetime.now().year + 1), 'inactivation_date': '%s-03-01' %(datetime.datetime.now().year + 1)})
 
103
    except Exception as exception:
 
104
      assert exception.value == "Activation date must be lower than inactivation date!", "Activation lower"
 
105
     
 
106
-
 
107
  I change the move line date so that it is outside the account's activity period (forbidden)
 
108
-
 
109
  !python {model: account.move.line}: |
 
110
    import datetime
 
111
    try:
 
112
      self.write(cr, uid, ref('move_line_test'), vals={'account_id': ref('account_1'), 'date': '%s-03-01' %(datetime.datetime.now().year + 2)})
 
113
    except Exception as exception:
 
114
      assert exception.value.startswith("The selected account is not active:"), "Date out"