1 | #!/usr/bin/env python |
---|
2 | # -*- coding: utf-8 -*- |
---|
3 | |
---|
4 | """ |
---|
5 | Unit tests for gluon.recfile |
---|
6 | """ |
---|
7 | import unittest |
---|
8 | import os |
---|
9 | import shutil |
---|
10 | import uuid |
---|
11 | |
---|
12 | |
---|
13 | from gluon import recfile |
---|
14 | |
---|
15 | |
---|
16 | class TestRecfile(unittest.TestCase): |
---|
17 | |
---|
18 | def setUp(self): |
---|
19 | os.mkdir('tests') |
---|
20 | |
---|
21 | def tearDown(self): |
---|
22 | shutil.rmtree('tests') |
---|
23 | |
---|
24 | def test_generation(self): |
---|
25 | for k in range(10): |
---|
26 | teststring = 'test%s' % k |
---|
27 | filename = os.path.join('tests', str(uuid.uuid4()) + '.test') |
---|
28 | with recfile.open(filename, "w") as g: |
---|
29 | g.write(teststring) |
---|
30 | with recfile.open(filename, "r") as f: |
---|
31 | self.assertEqual(f.read(), teststring) |
---|
32 | is_there = recfile.exists(filename) |
---|
33 | self.assertTrue(is_there) |
---|
34 | recfile.remove(filename) |
---|
35 | is_there = recfile.exists(filename) |
---|
36 | self.assertFalse(is_there) |
---|
37 | for k in range(10): |
---|
38 | teststring = 'test%s' % k |
---|
39 | filename = str(uuid.uuid4()) + '.test' |
---|
40 | with recfile.open(filename, "w", path='tests') as g: |
---|
41 | g.write(teststring) |
---|
42 | with recfile.open(filename, "r", path='tests') as f: |
---|
43 | self.assertEqual(f.read(), teststring) |
---|
44 | is_there = recfile.exists(filename, path='tests') |
---|
45 | self.assertTrue(is_there) |
---|
46 | recfile.remove(filename, path='tests') |
---|
47 | is_there = recfile.exists(filename, path='tests') |
---|
48 | self.assertFalse(is_there) |
---|
49 | for k in range(10): |
---|
50 | teststring = 'test%s' % k |
---|
51 | filename = os.path.join('tests', str(uuid.uuid4()), str(uuid.uuid4()) + '.test') |
---|
52 | with recfile.open(filename, "w") as g: |
---|
53 | g.write(teststring) |
---|
54 | with recfile.open(filename, "r") as f: |
---|
55 | self.assertEqual(f.read(), teststring) |
---|
56 | is_there = recfile.exists(filename) |
---|
57 | self.assertTrue(is_there) |
---|
58 | recfile.remove(filename) |
---|
59 | is_there = recfile.exists(filename) |
---|
60 | self.assertFalse(is_there) |
---|
61 | |
---|
62 | def test_existing(self): |
---|
63 | filename = os.path.join('tests', str(uuid.uuid4()) + '.test') |
---|
64 | with open(filename, 'w') as g: |
---|
65 | g.write('this file exists') |
---|
66 | self.assertTrue(recfile.exists(filename)) |
---|
67 | r = recfile.open(filename, "r") |
---|
68 | self.assertTrue(hasattr(r, 'read')) |
---|
69 | r.close() |
---|
70 | recfile.remove(filename, path='tests') |
---|
71 | self.assertFalse(recfile.exists(filename)) |
---|
72 | self.assertRaises(IOError, recfile.remove, filename) |
---|
73 | self.assertRaises(IOError, recfile.open, filename, "r") |
---|