Code Duplication    Length = 12-17 lines in 5 locations

omaha_server/omaha/tests/test_api.py 5 locations

@@ 140-156 (lines=17) @@
137
        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
138
        obj = Data.objects.get(id=response.data['id'])
139
        self.assertEqual(response.data, self.serializer(obj).data)
140
141
142
class PlatformTest(BaseTest, APITestCase):
143
    url = 'platform-list'
144
    url_detail = 'platform-detail'
145
    factory = PlatformFactory
146
    serializer = PlatformSerializer
147
148
    @is_private()
149
    def test_list(self):
150
        super(PlatformTest, self).test_list()
151
152
    @is_private()
153
    def test_create(self):
154
        data = dict(name='test_name')
155
        response = self.client.post(reverse(self.url), data, format='json')
156
        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
157
        obj = Platform.objects.get(id=response.data['id'])
158
        self.assertEqual(response.data, self.serializer(obj).data)
159
@@ 124-137 (lines=14) @@
121
        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
122
        obj = Application.objects.get(id=response.data['id'])
123
        self.assertEqual(response.data, self.serializer(obj).data)
124
125
126
class DataTest(BaseTest, APITestCase):
127
    url = 'data-list'
128
    url_detail = 'data-detail'
129
    factory = DataFactory
130
    serializer = DataSerializer
131
132
    @is_private()
133
    def test_create(self):
134
        app = ApplicationFactory.create()
135
        data = dict(name=0, app=app.pk)
136
        response = self.client.post(reverse(self.url), data, format='json')
137
        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
138
        obj = Data.objects.get(id=response.data['id'])
139
        self.assertEqual(response.data, self.serializer(obj).data)
140
@@ 108-121 (lines=14) @@
105
        response = self.client.get(url, format='json')
106
        self.assertEqual(response.status_code, status.HTTP_200_OK)
107
        self.assertDictEqual(response.data, self.serializer(obj).data)
108
109
110
class AppTest(BaseTest, APITestCase):
111
    url = 'application-list'
112
    url_detail = 'application-detail'
113
    factory = ApplicationFactory
114
    serializer = AppSerializer
115
116
    @is_private()
117
    def test_create(self):
118
        data = dict(id='test_id', name='test_name', data_set=[])
119
        response = self.client.post(reverse(self.url
120
                                            ), data, format='json')
121
        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
122
        obj = Application.objects.get(id=response.data['id'])
123
        self.assertEqual(response.data, self.serializer(obj).data)
124
@@ 159-171 (lines=13) @@
156
        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
157
        obj = Platform.objects.get(id=response.data['id'])
158
        self.assertEqual(response.data, self.serializer(obj).data)
159
160
161
class ChannelTest(BaseTest, APITestCase):
162
    url = 'channel-list'
163
    url_detail = 'channel-detail'
164
    factory = ChannelFactory
165
    serializer = ChannelSerializer
166
167
    @is_private()
168
    def test_create(self):
169
        data = dict(name='test_name')
170
        response = self.client.post(reverse(self.url), data, format='json')
171
        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
172
        obj = Channel.objects.get(id=response.data['id'])
173
        self.assertEqual(response.data, self.serializer(obj).data)
174
@@ 399-410 (lines=12) @@
396
        self.install_app_list = [install_app]
397
        self.uninstall_app_list = [uninstall_app]
398
        self.mac_app = dict(appid=self.app.id, version=str(self.mac_version.short_version))
399
400
        self._generate_fake_statistics()
401
        now = datetime.now()
402
        updates = [(datetime(now.year-1, x, 1).strftime("%Y-%m"), x - 1) for x in range(2, 13)]
403
        updates.append((datetime(now.year, 1, 1).strftime("%Y-%m"), 0))
404
        installs = [(datetime(now.year-1, x, 1).strftime("%Y-%m"), 1) for x in range(2, 13)]
405
        installs.append((datetime(now.year, 1, 1).strftime("%Y-%m"), 1))
406
        uninstalls = [(datetime(now.year-1, x, 1).strftime("%Y-%m"), 1) for x in range(2, 13)]
407
        uninstalls.append((datetime(now.year, 1, 1).strftime("%Y-%m"), 1))
408
409
        win_platform_statistics = dict(new=installs, updates=updates, uninstalls=uninstalls)
410
        mac_platform_statistics = dict(new=installs, updates=updates)
411
        self.users_statistics = dict(win=win_platform_statistics, mac=mac_platform_statistics)
412
        self.data = dict(data=dict(self.users_statistics))
413