89 lines
2.9 KiB
YAML
89 lines
2.9 KiB
YAML
-
|
|
I create a "Testing" folder where all the test data will go.
|
|
-
|
|
!record {model: document.directory, id: dir_tests }:
|
|
name: 'Testing (will be deleted!)'
|
|
parent_id: dir_root
|
|
-
|
|
I create an attachment into the root folder (w. empty fields, test that
|
|
defaults work)
|
|
-
|
|
!record {model: ir.attachment, id: file_test1 }:
|
|
name: Test file.txt
|
|
-
|
|
I delete the attachment from the root folder
|
|
-
|
|
!python {model: ir.attachment}: |
|
|
self.unlink(cr, uid, [ref('file_test1')])
|
|
-
|
|
I create an attachment into the Testing folder.
|
|
-
|
|
!record {model: ir.attachment, id: file_test2 }:
|
|
name: Test file 2
|
|
parent_id: dir_tests
|
|
-
|
|
I update the attachment with data, namely "abcd"
|
|
-
|
|
!record {model: ir.attachment, id: file_test2 }:
|
|
datas: "YWJjZA==\n"
|
|
-
|
|
I test that the datas of the attachment are correct
|
|
-
|
|
!assert {model: ir.attachment, id: file_test2 }:
|
|
- datas == "YWJjZA==\n"
|
|
- file_size == 4
|
|
-
|
|
I rename the attachment.
|
|
-
|
|
!record {model: ir.attachment, id: file_test2 }:
|
|
name: Test renamed 2
|
|
-
|
|
I search the testing folder for attachments.
|
|
-
|
|
!python {model: ir.attachment}: |
|
|
ids = self.search(cr, uid, [('parent_id.name','=', 'Testing (will be deleted!)'), ('name','=','Test renamed 2')])
|
|
assert ids == [ ref("file_test2") ], ids
|
|
-
|
|
I create an attachment to a 3rd resource, eg. a res.country
|
|
-
|
|
!record {model: ir.attachment, id: attach_3rd }:
|
|
name: 'Country attachment.txt'
|
|
parent_id: dir_tests
|
|
datas: "Q291bnRyeSBhdHRhY2htZW50IGNvbnRlbnQ=\n"
|
|
res_model: res.country
|
|
res_id: !eval ref("base.za")
|
|
-
|
|
I search for the res.country attachment
|
|
-
|
|
!python {model: ir.attachment}: |
|
|
ids = self.search(cr, uid, [('res_model', '=', 'res.country'), ('res_id', '=', ref("base.za"))])
|
|
assert ids == [ ref("attach_3rd")], ids
|
|
-
|
|
I test that I can't create duplicate directories (even when duplicates are hidden by a record rule)
|
|
-
|
|
!python {model: document.directory}: |
|
|
duplicate_detected = False
|
|
from openerp.osv.osv import except_osv
|
|
try:
|
|
demo_uid = ref('base.user_demo')
|
|
dir_vals = {
|
|
'name': 'Testing (will be deleted!)',
|
|
'parent_id': ref('document.dir_root')
|
|
}
|
|
new_dir_id = self.create(cr, demo_uid, dir_vals, context=None)
|
|
self.unlink(cr, uid, [new_dir_id], context=None)
|
|
except except_osv, e:
|
|
duplicate_detected = e.value == u'Directory name must be unique!'
|
|
assert duplicate_detected is True, 'Failed to detect duplicate directory'
|
|
-
|
|
I delete the attachments
|
|
-
|
|
!python {model: ir.attachment}: |
|
|
self.unlink(cr, uid, [ref('file_test2')])
|
|
self.unlink(cr, uid, [ref('attach_3rd')])
|
|
-
|
|
I delete the tests folder
|
|
-
|
|
!python {model: document.directory}: |
|
|
self.unlink(cr, uid, [ref('dir_tests')])
|