9 from cubes.file.entities import File |
9 from cubes.file.entities import File |
10 |
10 |
11 config = TestServerConfiguration('data') |
11 config = TestServerConfiguration('data') |
12 config.bootstrap_cubes() |
12 config.bootstrap_cubes() |
13 schema = config.load_schema() |
13 schema = config.load_schema() |
14 Card.schema = schema |
14 card_schema = schema['Card'] |
15 Card.__initialize__() |
15 cwuser_schema = schema['CWUser'] |
16 CWUser.schema = schema |
16 file_schema.schema = schema['File'] |
17 CWUser.__initialize__() |
17 |
18 File.schema = schema |
|
19 File.__initialize__() |
|
20 |
|
21 class GuessFieldTC(TestCase): |
18 class GuessFieldTC(TestCase): |
22 |
19 |
23 def test_card_fields(self): |
20 def test_card_fields(self): |
24 title_field = guess_field(Card, schema['title']) |
21 title_field = guess_field(card_schema, schema['title']) |
25 self.assertIsInstance(title_field, StringField) |
22 self.assertIsInstance(title_field, StringField) |
26 self.assertEquals(title_field.required, True) |
23 self.assertEquals(title_field.required, True) |
27 |
24 |
28 synopsis_field = guess_field(Card, schema['synopsis']) |
25 synopsis_field = guess_field(card_schema, schema['synopsis']) |
29 self.assertIsInstance(synopsis_field, TextField) |
26 self.assertIsInstance(synopsis_field, TextField) |
30 self.assertEquals(synopsis_field.required, False) |
27 self.assertEquals(synopsis_field.required, False) |
31 self.assertEquals(synopsis_field.help, 'an abstract for this card') |
28 self.assertEquals(synopsis_field.help, 'an abstract for this card') |
32 |
29 |
33 content_field = guess_field(Card, schema['content']) |
30 content_field = guess_field(card_schema, schema['content']) |
34 self.assertIsInstance(content_field, RichTextField) |
31 self.assertIsInstance(content_field, RichTextField) |
35 self.assertEquals(content_field.required, False) |
32 self.assertEquals(content_field.required, False) |
36 self.assertEquals(content_field.format_field, None) |
33 self.assertEquals(content_field.format_field, None) |
37 |
34 |
38 content_format_field = guess_field(Card, schema['content_format']) |
35 content_format_field = guess_field(card_schema, schema['content_format']) |
39 self.assertEquals(content_format_field, None) |
36 self.assertEquals(content_format_field, None) |
40 |
37 |
41 content_format_field = guess_field(Card, schema['content_format'], skip_meta_attr=False) |
38 content_format_field = guess_field(card_schema, schema['content_format'], skip_meta_attr=False) |
42 self.assertEquals(content_format_field.internationalizable, True) |
39 self.assertEquals(content_format_field.internationalizable, True) |
43 self.assertEquals(content_format_field.sort, True) |
40 self.assertEquals(content_format_field.sort, True) |
44 self.assertEquals(content_format_field.initial, 'text/rest') |
41 self.assertEquals(content_format_field.initial, 'text/rest') |
45 |
42 |
46 wikiid_field = guess_field(Card, schema['wikiid']) |
43 wikiid_field = guess_field(card_schema, schema['wikiid']) |
47 self.assertIsInstance(wikiid_field, StringField) |
44 self.assertIsInstance(wikiid_field, StringField) |
48 self.assertEquals(wikiid_field.required, False) |
45 self.assertEquals(wikiid_field.required, False) |
49 |
46 |
50 |
47 |
51 def test_euser_fields(self): |
48 def test_euser_fields(self): |
52 upassword_field = guess_field(CWUser, schema['upassword']) |
49 upassword_field = guess_field(cwuser_schema, schema['upassword']) |
53 self.assertIsInstance(upassword_field, StringField) |
50 self.assertIsInstance(upassword_field, StringField) |
54 self.assertIsInstance(upassword_field.widget, PasswordInput) |
51 self.assertIsInstance(upassword_field.widget, PasswordInput) |
55 self.assertEquals(upassword_field.required, True) |
52 self.assertEquals(upassword_field.required, True) |
56 |
53 |
57 last_login_time_field = guess_field(CWUser, schema['last_login_time']) |
54 last_login_time_field = guess_field(cwuser_schema, schema['last_login_time']) |
58 self.assertIsInstance(last_login_time_field, DateTimeField) |
55 self.assertIsInstance(last_login_time_field, DateTimeField) |
59 self.assertEquals(last_login_time_field.required, False) |
56 self.assertEquals(last_login_time_field.required, False) |
60 |
57 |
61 in_group_field = guess_field(CWUser, schema['in_group']) |
58 in_group_field = guess_field(cwuser_schema, schema['in_group']) |
62 self.assertIsInstance(in_group_field, RelationField) |
59 self.assertIsInstance(in_group_field, RelationField) |
63 self.assertEquals(in_group_field.required, True) |
60 self.assertEquals(in_group_field.required, True) |
64 self.assertEquals(in_group_field.role, 'subject') |
61 self.assertEquals(in_group_field.role, 'subject') |
65 self.assertEquals(in_group_field.help, 'groups grant permissions to the user') |
62 self.assertEquals(in_group_field.help, 'groups grant permissions to the user') |
66 |
63 |
67 owned_by_field = guess_field(CWUser, schema['owned_by'], 'object') |
64 owned_by_field = guess_field(cwuser_schema, schema['owned_by'], 'object') |
68 self.assertIsInstance(owned_by_field, RelationField) |
65 self.assertIsInstance(owned_by_field, RelationField) |
69 self.assertEquals(owned_by_field.required, False) |
66 self.assertEquals(owned_by_field.required, False) |
70 self.assertEquals(owned_by_field.role, 'object') |
67 self.assertEquals(owned_by_field.role, 'object') |
71 |
68 |
72 |
69 |
73 def test_file_fields(self): |
70 def test_file_fields(self): |
74 data_format_field = guess_field(File, schema['data_format']) |
71 data_format_field = guess_field(file_schema, schema['data_format']) |
75 self.assertEquals(data_format_field, None) |
72 self.assertEquals(data_format_field, None) |
76 data_encoding_field = guess_field(File, schema['data_encoding']) |
73 data_encoding_field = guess_field(file_schema, schema['data_encoding']) |
77 self.assertEquals(data_encoding_field, None) |
74 self.assertEquals(data_encoding_field, None) |
78 |
75 |
79 data_field = guess_field(File, schema['data']) |
76 data_field = guess_field(file_schema, schema['data']) |
80 self.assertIsInstance(data_field, FileField) |
77 self.assertIsInstance(data_field, FileField) |
81 self.assertEquals(data_field.required, True) |
78 self.assertEquals(data_field.required, True) |
82 self.assertIsInstance(data_field.format_field, StringField) |
79 self.assertIsInstance(data_field.format_field, StringField) |
83 self.assertIsInstance(data_field.encoding_field, StringField) |
80 self.assertIsInstance(data_field.encoding_field, StringField) |
84 |
81 |
85 if __name__ == '__main__': |
82 if __name__ == '__main__': |
86 unittest_main() |
83 unittest_main() |