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

« back to all changes in this revision

Viewing changes to financing_contract/test/financing_contract.yml

  • Committer: chloups208
  • Date: 2011-09-07 12:58:12 UTC
  • mto: (307.2.1 unifield-wm)
  • mto: This revision was merged to the branch mainline in revision 311.
  • Revision ID: chloups208@chloups208-laptop-20110907125812-dsb1jt93ae6bgfe2
[UF-390]pro forma invoice + shipment object refactoring + pack family object refactoring

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
-
2
 
  In order to test the financing contract,
3
 
  we need a lot.
4
 
  I create, in order, a account type, ...
5
 
-
6
 
  !record {model: account.account.type, id: account_account_type_expense0}:
7
 
    close_method: none
8
 
    code: expense
9
 
    name: Expense
10
 
    sign: 1
11
 
-
12
 
  ...a destination, ...
13
 
-
14
 
  !record {model: account.analytic.account, id: test_destination}:
15
 
    name: "Test Destination"
16
 
    code: "DESTINATION"
17
 
    category: DEST
18
 
-
19
 
  ...an account, ...
20
 
-
21
 
  !record {model: account.account, id: test_expense}:
22
 
    name: "Test Expense"
23
 
    code: "TEST"
24
 
    user_type: account_account_type_expense0
25
 
    type: payable 
26
 
    destination_ids:
27
 
      - test_destination
28
 
-
29
 
  ...a destination link, ...
30
 
-
31
 
  !record {model: account.destination.link, id: test_destination_link}:
32
 
    account_id: test_expense
33
 
    destination_id: test_destination
34
 
-
35
 
 ...a cost center...
36
 
-
37
 
  !record {model: account.analytic.account, id: analytic_account_OC1}:
38
 
    name: "OC1"
39
 
    code: "OC1"
40
 
    category: OC
41
 
-
42
 
 ...a cost center...
43
 
-
44
 
  !record {model: account.analytic.account, id: analytic_account_OC2}:
45
 
    name: "OC2"
46
 
    code: "OC2"
47
 
    category: OC
48
 
-
49
 
 ...a funding pool...
50
 
-
51
 
  !record {model: account.analytic.account, id: analytic_account_FP1}:
52
 
    name: "FP1"
53
 
    code: "FP1"
54
 
    category: FUNDING
55
 
    cost_center_ids:
56
 
      - analytic_account_OC2
57
 
    tuple_destination_account_ids:
58
 
      - test_destination_link
59
 
-
60
 
 ...a funding pool...
61
 
-
62
 
  !record {model: account.analytic.account, id: analytic_account_FP2}:
63
 
    name: "FP2"
64
 
    code: "FP2"
65
 
    category: FUNDING
66
 
    cost_center_ids:
67
 
      - analytic_account_OC1
68
 
      - analytic_account_OC2
69
 
    tuple_destination_account_ids:
70
 
      - test_destination_link
71
 
-
72
 
  I set the company currency's rate to 1 for the move
73
 
-
74
 
  !record {model: res.currency.rate, id: currency_rate_test_3}:
75
 
    name: !eval "'%s-01-01' %(datetime.now().year+1)"
76
 
    rate: 1.00
77
 
    currency_id: base.CHF
78
 
-
79
 
  I set another currency's rate to 100 for the move
80
 
-
81
 
  !record {model: res.currency.rate, id: currency_rate_test_4}:
82
 
    name: !eval "'%s-01-01' %(datetime.now().year+1)"
83
 
    rate: 100.00
84
 
    currency_id: base.EUR
85
 
-
86
 
  ...an analytical journal, ...
87
 
-
88
 
  !record {model: account.analytic.journal, id: analytic_journal_1}:
89
 
    code: CANJ
90
 
    name: Cash Analytic Journal
91
 
    type: general
92
 
-
93
 
  I create a cash account type
94
 
-
95
 
  !record {model: account.account.type, id: account_account_type_cash_0}:
96
 
    close_method: balance
97
 
    code: cash
98
 
    name: Cash
99
 
    sign: 1
100
 
    report_type: asset
101
 
 
102
 
-
103
 
  I create a X11003 Cash Account.
104
 
-
105
 
  !record {model: account.account, id: account_account_cash0}:
106
 
    code: 'X11003-test'
107
 
    company_id: base.main_company
108
 
    currency_mode: current
109
 
    name: Cash (test)
110
 
    type: liquidity
111
 
    reconcile: False
112
 
    user_type : account_account_type_cash_0
113
 
    activation_date: !eval time.strftime('%Y-01-01')
114
 
-
115
 
  ...a journal, ...
116
 
-
117
 
  !record {model: account.journal, id: account_journal_1}:
118
 
    name: Cash Journal
119
 
    code: CTST
120
 
    currency: base.EUR
121
 
    type: cash
122
 
    analytic_journal_id: analytic_journal_1
123
 
    default_debit_account_id: account_account_cash0
124
 
    default_credit_account_id: account_account_cash0
125
 
-
126
 
  ...a fiscal year, ...
127
 
-
128
 
  !record {model: account.fiscalyear, id: account_fiscalyear_fiscalyear0}:
129
 
    code: !eval "'FY%s'% (datetime.now().year+1)"
130
 
    company_id: base.main_company
131
 
    date_start: !eval "'%s-01-01' %(datetime.now().year+1)"
132
 
    date_stop: !eval "'%s-12-31' %(datetime.now().year+1)"
133
 
    name: !eval "'Fiscal Year %s' %(datetime.now().year+1)"
134
 
-
135
 
  ... and a period.
136
 
-
137
 
  !record {model: account.period, id: account_period_mar0}:
138
 
    company_id: base.main_company
139
 
    date_start: !eval "'%s-03-01' %(datetime.now().year+1)"
140
 
    date_stop: !eval "'%s-03-31' %(datetime.now().year+1)"
141
 
    fiscalyear_id: account_fiscalyear_fiscalyear0
142
 
    name: !eval "'Mar %s' %(datetime.now().year+1)"
143
 
    special: 1
144
 
    number: 3
145
 
    state: draft
146
 
-
147
 
  ... and a distribution.
148
 
-
149
 
  !record {model: analytic.distribution, id: distribution_test}:
150
 
    funding_pool_lines:
151
 
    - analytic_id: analytic_distribution.analytic_account_msf_private_funds
152
 
      cost_center_id: analytic_account_OC1
153
 
      destination_id: test_destination
154
 
      percentage: 50
155
 
      currency_id: base.CHF
156
 
      date: !eval "'%s-03-12' %(datetime.now().year+1)"
157
 
    - analytic_id: analytic_account_FP1
158
 
      cost_center_id: analytic_account_OC2
159
 
      destination_id: test_destination
160
 
      percentage: 50
161
 
      currency_id: base.CHF
162
 
      date: !eval "'%s-03-12' %(datetime.now().year+1)"
163
 
-
164
 
  ... and another distribution.
165
 
-
166
 
  !record {model: analytic.distribution, id: distribution_test_2}:
167
 
    funding_pool_lines:
168
 
    - analytic_id: analytic_account_FP1
169
 
      cost_center_id: analytic_account_OC2
170
 
      destination_id: test_destination
171
 
      percentage: 40
172
 
      currency_id: base.CHF
173
 
      date: !eval "'%s-03-12' %(datetime.now().year+1)"
174
 
    - analytic_id: analytic_account_FP2
175
 
      cost_center_id: analytic_account_OC2
176
 
      destination_id: test_destination
177
 
      percentage: 40
178
 
      currency_id: base.CHF
179
 
      date: !eval "'%s-03-12' %(datetime.now().year+1)"
180
 
    - analytic_id: analytic_account_FP2
181
 
      cost_center_id: analytic_account_OC1
182
 
      destination_id: test_destination
183
 
      percentage: 20
184
 
      currency_id: base.CHF
185
 
      date: !eval "'%s-03-12' %(datetime.now().year+1)"
186
 
-
187
 
  I create an account move line with all of this.
188
 
-
189
 
  !record {model: account.move.line, id: move_line_test}:
190
 
    name: testline
191
 
    journal_id: account_journal_1
192
 
    period_id: account_period_mar0
193
 
    account_id: test_expense
194
 
    currency_id: base.CHF
195
 
    date: !eval "'%s-03-12' %(datetime.now().year+1)"
196
 
    document_date: !eval "'%s-03-12' %(datetime.now().year+1)"
197
 
    debit_currency: 4242.0
198
 
    analytic_distribution_id: distribution_test
199
 
-
200
 
  I create an account move line with all of this.
201
 
-
202
 
  !record {model: account.move.line, id: move_line_test_2}:
203
 
    name: testline2
204
 
    journal_id: account_journal_1
205
 
    period_id: account_period_mar0
206
 
    account_id: test_expense
207
 
    currency_id: base.CHF
208
 
    date: !eval "'%s-03-12' %(datetime.now().year+1)"
209
 
    document_date: !eval "'%s-03-12' %(datetime.now().year+1)"
210
 
    debit_currency: 12500.0
211
 
    analytic_distribution_id: distribution_test_2
212
 
-
213
 
  Analytic lines are created from it
214
 
-
215
 
  !python {model: account.move.line}: |
216
 
    self.create_analytic_lines(cr, uid, [ref("move_line_test"), ref("move_line_test_2")], context={})
217
 
-
218
 
  Create a donor (almost empty)
219
 
-
220
 
  !record {model: financing.contract.donor, id: donor1}:
221
 
    name: "Donor"
222
 
    code: "TEST"
223
 
-
224
 
  Create a contract
225
 
-
226
 
  !record {model: financing.contract.contract, id: contract1}:
227
 
    name: "Contract"
228
 
    code: "TEST"
229
 
    donor_id: donor1
230
 
    instance_id: !ref {search: "[]", model: msf.instance}
231
 
    grant_amount: 100000.0
232
 
    eligibility_from_date: !eval "'%s-01-01' %(datetime.now().year+1)"
233
 
    eligibility_to_date: !eval "'%s-12-31' %(datetime.now().year+1)"
234
 
    reporting_currency: base.CHF
235
 
    funding_pool_ids:
236
 
      - funding_pool_id: analytic_account_FP1
237
 
        funded: True
238
 
      - funding_pool_id: analytic_account_FP2
239
 
        funded: False
240
 
    cost_center_ids:
241
 
      - analytic_account_OC2
242
 
    actual_line_ids:
243
 
      - name: "A"
244
 
        code: "A"
245
 
        account_destination_ids:
246
 
          - test_destination_link
247
 
-
248
 
  Assert that total retrieved for funded is 7121 CHF, and project is 12121 CHF
249
 
-
250
 
  !python {model: financing.contract.contract}: |
251
 
    context = {"reporting_currency": ref("base.CHF"),
252
 
               "reporting_type": "all",
253
 
               "currency_table_id": None}
254
 
    contract = self.pool.get('financing.contract.contract').browse(cr, uid, ref("contract1"), context=context)
255
 
    #assert len(contract.actual_line_ids) == 1, ("No reporting line!")
256
 
    # assert contract.actual_line_ids[0].allocated_real == 2121, ("Allocation is not what is expected! %s" % contract.actual_line_ids[0].allocated_real)
257
 
    #assert contract.actual_line_ids[0].allocated_real == 7121, ("Allocation is not what is expected!")
258
 
    #assert contract.actual_line_ids[0].project_real == 12121, ("Project is not what is expected!")
259
 
-
260
 
  Assert that total retrieved for funded is 712100 EUR
261
 
-
262
 
  !python {model: financing.contract.contract}: |
263
 
    context = {"reporting_currency": ref("base.EUR"),
264
 
               "reporting_type": "all",
265
 
               "currency_table_id": None}
266
 
    contract = self.pool.get('financing.contract.contract').browse(cr, uid, ref("contract1"), context=context)
267
 
    #assert len(contract.actual_line_ids) == 1, ("No reporting line!")
268
 
    # assert contract.actual_line_ids[0].allocated_real == 212100, ("Allocation is not what is expected! %s" % contract.actual_line_ids[0].allocated_real)
269
 
    #assert contract.actual_line_ids[0].allocated_real == 712100, ("Allocation is not what is expected!")
270
 
    #assert contract.actual_line_ids[0].project_real == 1212100, ("Project is not what is expected!")
271
 
-
272
 
  Create a currency table
273
 
-
274
 
  !record {model: res.currency.table, id: test_table}:
275
 
    name: "Test"
276
 
    code: "TEST"
277
 
-
278
 
  Import table currency rates
279
 
-
280
 
  !python {model: import.table.currencies}: |
281
 
    import datetime
282
 
    import base64
283
 
    import_file = '"Currency Code","Rate"\n"EUR","10.0"\n"CHF","1.0"'
284
 
    wizard = self.create(cr, uid, {'rate_date':  "%s-03-01" %(datetime.datetime.now().year+1),
285
 
                                   'import_file': base64.encodestring(import_file)}, context={})
286
 
    self.import_table_rates(cr, uid, [wizard], context={'active_id': ref("test_table")})
287
 
-
288
 
  Assert that total retrieved for funded with currency table is 71210 EUR
289
 
-
290
 
  !python {model: financing.contract.contract}: |
291
 
    context = {"reporting_currency": ref("base.EUR"),
292
 
               "reporting_type": "all",
293
 
               "currency_table_id": ref("test_table")}
294
 
    contract = self.pool.get('financing.contract.contract').browse(cr, uid, ref("contract1"), context=context)
295
 
    #assert len(contract.actual_line_ids) == 1, ("No reporting line!")
296
 
    # assert contract.actual_line_ids[0].allocated_real == 21210, ("Allocation is not what is expected! %s" % contract.actual_line_ids[0].allocated_real)
297
 
    #assert contract.actual_line_ids[0].allocated_real == 71210, ("Allocation is not what is expected!")
298
 
    #assert contract.actual_line_ids[0].project_real == 121210, ("Project is not what is expected!")