~ubuntu-branches/ubuntu/oneiric/python-boto/oneiric

« back to all changes in this revision

Viewing changes to boto/tests/test_s3connection.py

  • Committer: Bazaar Package Importer
  • Author(s): Scott Moser
  • Date: 2010-01-05 15:12:37 UTC
  • mfrom: (4.1.5 squeeze)
  • Revision ID: james.westby@ubuntu.com-20100105151237-skgxjkyogir1vl0k
Tags: 1.9b-1ubuntu1
* merge Loic's changes made in 1.8d-1ubuntu2
* Rename Vcs-* to XS-Debian-Vcs-*.
* Run testsuite during build but ignore failures since it currently doesn't
  pass.
* Add ${misc:Depends}.
* Add XB-Python-Version: ${python:Versions}.

Show diffs side-by-side

added added

removed removed

Lines of Context:
28
28
import unittest
29
29
import time
30
30
import os
 
31
import urllib
31
32
from boto.s3.connection import S3Connection
32
33
from boto.exception import S3PermissionsError
33
34
 
41
42
        bucket = c.create_bucket(bucket_name)
42
43
        # now try a get_bucket call and see if it's really there
43
44
        bucket = c.get_bucket(bucket_name)
44
 
        # create a new key and store it's content from a string
 
45
        # test logging
 
46
        logging_bucket = c.create_bucket(bucket_name + '-log')
 
47
        logging_bucket.set_as_logging_target()
 
48
        bucket.enable_logging(target_bucket=logging_bucket, target_prefix=bucket.name)
 
49
        bucket.disable_logging()
 
50
        c.delete_bucket(logging_bucket)
45
51
        k = bucket.new_key()
46
52
        k.name = 'foobar'
47
53
        s1 = 'This is a test of file upload and download'
55
61
        # check to make sure content read from s3 is identical to original
56
62
        assert s1 == fp.read(), 'corrupted file'
57
63
        fp.close()
 
64
        # test generated URLs
 
65
        url = k.generate_url(3600)
 
66
        file = urllib.urlopen(url)
 
67
        assert s1 == file.read(), 'invalid URL %s' % url
 
68
        url = k.generate_url(3600, force_http=True)
 
69
        file = urllib.urlopen(url)
 
70
        assert s1 == file.read(), 'invalid URL %s' % url
58
71
        bucket.delete_key(k)
59
72
        # test a few variations on get_all_keys - first load some data
60
73
        # for the first one, let's override the content type
110
123
        assert k.get_metadata(mdkey1) == mdval1
111
124
        assert k.get_metadata(mdkey2) == mdval2
112
125
        bucket.delete_key(k)
 
126
        # test list and iterator
 
127
        rs1 = bucket.list()
 
128
        num_iter = 0
 
129
        for r in rs1:
 
130
            num_iter = num_iter + 1
 
131
        rs = bucket.get_all_keys()
 
132
        num_keys = len(rs)
 
133
        assert num_iter == num_keys
113
134
        # try a key with a funny character
114
 
        rs = bucket.get_all_keys()
115
 
        num_keys = len(rs)
116
135
        k = bucket.new_key()
117
136
        k.name = 'testnewline\n'
118
137
        k.set_contents_from_string('This is a test')