~diegosarmentero/+junk/u1-scope

« back to all changes in this revision

Viewing changes to tests/test_soundcloud.py

  • Committer: David Callé
  • Date: 2013-01-16 18:29:15 UTC
  • Revision ID: davidc@framli.eu-20130116182915-7suk9yf1tleuigrm
* Init SoundCloud scope
* Add tests

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# -*- coding: utf-8 -*-
 
2
 
 
3
from gi.repository import Dee
 
4
from unittest import TestCase, main
 
5
from src import unity_soundcloud_daemon as scope
 
6
 
 
7
d = scope.Daemon()
 
8
searches = ['submarine']
 
9
mock_data = {'should_pass': 'file:tests/data/mock_soundcloud_pass#',
 
10
             'should_fail': 'file:tests/data/mock_soundcloud_fail#'}
 
11
 
 
12
class TestSoundcloud(TestCase):
 
13
 
 
14
    def test_search(self):
 
15
        scope.SEARCH_URI = mock_data['should_pass']
 
16
        model = Dee.SequenceModel.new()
 
17
        model.set_schema('s', 's', 'u', 'u', 's', 's', 's', 's')
 
18
        model.set_column_names('uri', 'icon_hint', 'category', 'result_type',
 
19
                               'mimetype', 'title', 'comment', 'dnd_uri')
 
20
        scope.Daemon.update_results_model(d, searches[0], model)
 
21
        self.assertEqual(model[0][0],
 
22
                         'http://soundcloud.com/vibecatt/echos')
 
23
        self.assertEqual(model[0][1],
 
24
                         '')
 
25
        self.assertEqual(model[0][5],
 
26
                         'Echos')
 
27
        self.assertEqual(model[0][6],
 
28
                         '')
 
29
        self.assertEqual(model[1][0],
 
30
                         'http://soundcloud.com/vibecatt/ganymede')
 
31
        self.assertEqual(model[1][1],
 
32
                         '')
 
33
        self.assertEqual(model[1][5],
 
34
                         'Ganymede')
 
35
        self.assertEqual(model[1][6],
 
36
                         '')
 
37
 
 
38
    def test_failing_search(self):
 
39
        scope.SEARCH_URI = mock_data['should_fail']
 
40
        model = Dee.SequenceModel.new()
 
41
        model.set_schema('s', 's', 'u', 'u', 's', 's', 's', 's')
 
42
        model.set_column_names('uri', 'icon_hint', 'category', 'result_type',
 
43
                               'mimetype', 'title', 'comment', 'dnd_uri')
 
44
        scope.Daemon.update_results_model(d, searches[0], model)
 
45
        self.assertEqual(len(model), 0)
 
46
 
 
47
if __name__ == '__main__':
 
48
    main()