Best Python code snippet using molotov_python
1987.py
Source:1987.py
1# pylint: disable=E11032"""3Tests for groups module4"""5from dateutil.relativedelta import relativedelta6from random import randint7import uuid8import mock9from urllib import urlencode10from django.conf import settings11from django.core.cache import cache12from django.test.utils import override_settings13from django.utils import timezone14from edx_solutions_api_integration.models import GroupRelationship, GroupProfile15from edx_solutions_organizations.models import Organization16from edx_solutions_projects.models import Project17from edx_solutions_api_integration.test_utils import APIClientMixin18from xmodule.modulestore.tests.factories import CourseFactory, ItemFactory19from xmodule.modulestore.tests.django_utils import (20 ModuleStoreTestCase,21 TEST_DATA_SPLIT_MODULESTORE22)23from student.tests.factories import GroupFactory24@mock.patch.dict("django.conf.settings.FEATURES", {'ENFORCE_PASSWORD_POLICY': False,25 'ADVANCED_SECURITY': False,26 'PREVENT_CONCURRENT_LOGINS': False})27class GroupsApiTests(ModuleStoreTestCase, APIClientMixin):28 """ Test suite for Groups API views """29 MODULESTORE = TEST_DATA_SPLIT_MODULESTORE30 def setUp(self):31 super(GroupsApiTests, self).setUp()32 self.test_username = str(uuid.uuid4())33 self.test_password = str(uuid.uuid4())34 self.test_email = str(uuid.uuid4()) + '@test.org'35 self.test_group_name = str(uuid.uuid4())36 self.test_first_name = str(uuid.uuid4())37 self.test_last_name = str(uuid.uuid4())38 self.base_users_uri = '/api/server/users'39 self.base_groups_uri = '/api/server/groups'40 self.base_workgroups_uri = '/api/server/workgroups/'41 self.test_course_data = '<html>{}</html>'.format(str(uuid.uuid4()))42 self.course = CourseFactory.create()43 self.test_course_id = unicode(self.course.id)44 self.course_end_date = timezone.now() + relativedelta(days=60)45 self.course_content = ItemFactory.create(46 category="videosequence",47 parent_location=self.course.location,48 due=self.course_end_date,49 display_name="View_Sequence"50 )51 self.test_organization = Organization.objects.create(52 name="Test Organization",53 display_name='Test Org',54 contact_name='John Org',55 contact_email='john@test.org',56 contact_phone='+1 332 232 24234'57 )58 self.test_project = Project.objects.create(59 course_id=unicode(self.course.id),60 content_id=unicode(self.course_content.scope_ids.usage_id)61 )62 cache.clear()63 def test_group_list_post(self):64 data = {'name': self.test_group_name, 'type': 'test'}65 response = self.do_post(self.base_groups_uri, data)66 self.assertEqual(response.status_code, 201)67 self.assertGreater(response.data['id'], 0)68 confirm_uri = self.base_groups_uri + '/' + str(response.data['id'])69 self.assertIn(confirm_uri, response.data['uri'])70 self.assertGreater(len(response.data['name']), 0)71 def test_group_list_get_with_profile(self): # pylint: disable=R091572 group_type = 'series'73 display_name = 'My first series'74 profile_data = {'display_name': display_name}75 data = {76 'name': self.test_group_name,77 'type': group_type,78 'data': profile_data79 }80 response = self.do_post(self.base_groups_uri, data)81 self.assertGreater(response.data['id'], 0)82 group_id = response.data['id']83 # query for list of groups, but don't put the type filter84 test_uri = self.base_groups_uri85 response = self.do_get(test_uri)86 self.assertEqual(response.status_code, 400)87 # try again with filter88 test_uri = '{}?type={}'.format(self.base_groups_uri, group_type)89 response = self.do_get(test_uri)90 self.assertEqual(response.status_code, 200)91 self.assertEqual(response.data['count'], 1)92 self.assertEqual(response.data['num_pages'], 1)93 self.assertEqual(len(response.data['results']), 1)94 self.assertEqual(response.data['results'][0]['id'], group_id)95 self.assertEqual(response.data['results'][0]['type'], group_type)96 self.assertEqual(response.data['results'][0]['name'], self.test_group_name)97 response_profile_data = response.data['results'][0]['data']98 self.assertEqual(response_profile_data['display_name'], display_name)99 # query the group detail100 test_uri = '{}/{}'.format(self.base_groups_uri, str(group_id))101 response = self.do_get(test_uri)102 self.assertEqual(response.status_code, 200)103 self.assertEqual(response.data['id'], group_id)104 self.assertIn(test_uri, response.data['uri'])105 self.assertEqual(response.data['name'], self.test_group_name)106 self.assertEqual(response.data['type'], group_type)107 response_profile_data = response.data['data']108 self.assertEqual(response_profile_data['display_name'], display_name)109 # update the profile110 updated_group_type = 'seriesX'111 updated_display_name = 'My updated series'112 profile_data = {'display_name': updated_display_name}113 data = {114 'name': self.test_group_name,115 'type': updated_group_type,116 'data': profile_data117 }118 response = self.do_post(test_uri, data)119 self.assertEqual(response.status_code, 200)120 # requery the filter121 test_uri = self.base_groups_uri + '?type=series'122 response = self.do_get(test_uri)123 self.assertEqual(response.status_code, 200)124 self.assertEqual(len(response.data['results']), 0)125 test_uri = '{}?type={}'.format(self.base_groups_uri, updated_group_type)126 response = self.do_get(test_uri)127 self.assertEqual(response.status_code, 200)128 self.assertEqual(len(response.data['results']), 1)129 self.assertEqual(response.data['results'][0]['id'], group_id)130 self.assertEqual(response.data['results'][0]['type'], updated_group_type)131 self.assertEqual(response.data['results'][0]['name'], self.test_group_name)132 response_profile_data = response.data['results'][0]['data']133 self.assertEqual(response_profile_data['display_name'], updated_display_name)134 def test_group_list_post_invalid_name(self):135 data = {'name': '', 'type': 'test'}136 response = self.do_post(self.base_groups_uri, data)137 self.assertEqual(response.status_code, 400)138 def test_group_list_post_missing_type(self):139 data = {'name': ''}140 response = self.do_post(self.base_groups_uri, data)141 self.assertEqual(response.status_code, 400)142 def test_group_list_get_uses_base_group_name(self):143 data = {'name': self.test_group_name, 'type': 'test'}144 response = self.do_post(self.base_groups_uri, data)145 self.assertEqual(response.status_code, 201)146 group_id = response.data['id']147 profile = GroupProfile.objects.get(group_id=group_id)148 profile.name = ''149 profile.save()150 test_uri = '{}?type=test'.format(self.base_groups_uri)151 response = self.do_get(test_uri)152 self.assertEqual(response.status_code, 200)153 self.assertEqual(response.data['results'][0]['name'], '{:04d}: {}'.format(group_id, self.test_group_name))154 profile.name = None155 profile.save()156 response = self.do_get(test_uri)157 self.assertEqual(response.status_code, 200)158 self.assertEqual(response.data['results'][0]['name'], '{:04d}: {}'.format(group_id, self.test_group_name))159 def test_group_detail_get(self):160 data = {'name': self.test_group_name, 'type': 'test'}161 response = self.do_post(self.base_groups_uri, data)162 self.assertEqual(response.status_code, 201)163 self.assertGreater(response.data['id'], 0)164 group_id = response.data['id']165 test_uri = self.base_groups_uri + '/' + str(group_id)166 response = self.do_get(test_uri)167 self.assertEqual(response.status_code, 200)168 self.assertEqual(response.data['id'], group_id)169 self.assertIn(test_uri, response.data['uri'])170 self.assertEqual(response.data['name'], self.test_group_name)171 def test_group_detail_get_uses_base_group_name(self):172 data = {'name': self.test_group_name, 'type': 'test'}173 response = self.do_post(self.base_groups_uri, data)174 self.assertEqual(response.status_code, 201)175 self.assertGreater(response.data['id'], 0)176 group_id = response.data['id']177 profile = GroupProfile.objects.get(group_id=group_id)178 profile.name = ''179 profile.save()180 test_uri = self.base_groups_uri + '/' + str(group_id)181 response = self.do_get(test_uri)182 self.assertEqual(response.status_code, 200)183 self.assertEqual(response.data['id'], group_id)184 self.assertIn(test_uri, response.data['uri'])185 self.assertEqual(response.data['name'], '{:04d}: {}'.format(group_id, self.test_group_name))186 def test_group_detail_get_with_missing_profile(self):187 data = {'name': self.test_group_name, 'type': 'test'}188 response = self.do_post(self.base_groups_uri, data)189 self.assertEqual(response.status_code, 201)190 self.assertGreater(response.data['id'], 0)191 group_id = response.data['id']192 GroupProfile.objects.get(group_id=group_id).delete()193 test_uri = self.base_groups_uri + '/' + str(group_id)194 response = self.do_get(test_uri)195 self.assertEqual(response.status_code, 200)196 self.assertEqual(response.data['id'], group_id)197 self.assertIn(test_uri, response.data['uri'])198 self.assertEqual(response.data['name'], '{:04d}: {}'.format(group_id, self.test_group_name))199 def test_group_detail_get_undefined(self):200 test_uri = self.base_groups_uri + '/123456789'201 response = self.do_get(test_uri)202 self.assertEqual(response.status_code, 404)203 def test_group_detail_post(self):204 data = {'name': self.test_group_name, 'type': 'test'}205 response = self.do_post(self.base_groups_uri, data)206 group_id = response.data['id']207 test_uri = response.data['uri']208 self.assertEqual(response.status_code, 201)209 group_name = 'Updated Name'210 group_type = 'seriesX'211 data = {212 'name': group_name,213 'type': group_type,214 'data': {215 'display_name': 'My updated series'216 }217 }218 response = self.do_post(test_uri, data)219 self.assertEqual(response.status_code, 200)220 self.assertEqual(response.data['id'], group_id)221 self.assertEqual(response.data['name'], group_name)222 self.assertEqual(response.data['uri'], test_uri)223 def test_group_detail_post_invalid_group(self):224 test_uri = '{}/23209232'.format(self.base_groups_uri)225 group_type = 'seriesX'226 data = {227 'name': self.test_group_name,228 'type': group_type,229 'data': {230 'display_name': 'My updated series'231 }232 }233 response = self.do_post(test_uri, data)234 self.assertEqual(response.status_code, 404)235 def test_group_detail_delete(self):236 local_username = self.test_username + str(randint(11, 99))237 data = {238 'email': self.test_email,239 'username': local_username,240 'password': self.test_password,241 'first_name': 'Joe',242 'last_name': 'Smith'243 }244 response = self.do_post(self.base_users_uri, data)245 user_id = response.data['id']246 data = {'name': self.test_group_name, 'type': 'test'}247 response = self.do_post(self.base_groups_uri, data)248 self.assertEqual(response.status_code, 201)249 self.assertGreater(response.data['id'], 0)250 group_id = response.data['id']251 test_uri = '{}/{}/users'.format(self.base_groups_uri, group_id)252 data = {'user_id': user_id}253 response = self.do_post(test_uri, data)254 self.assertEqual(response.status_code, 201)255 test_uri = '{}/{}'.format(self.base_groups_uri, group_id)256 response = self.do_delete(test_uri)257 self.assertEqual(response.status_code, 204)258 response = self.do_get(test_uri)259 self.assertEqual(response.status_code, 404)260 def test_group_detail_delete_invalid_group(self):261 test_uri = '{}/23209232'.format(self.base_groups_uri)262 response = self.do_delete(test_uri)263 self.assertEqual(response.status_code, 204)264 def test_group_users_list_post(self):265 local_username = self.test_username + str(randint(11, 99))266 data = {267 'email': self.test_email,268 'username': local_username,269 'password': self.test_password,270 'first_name': 'Joe',271 'last_name': 'Smith'272 }273 response = self.do_post(self.base_users_uri, data)274 user_id = response.data['id']275 data = {'name': 'Alpha Group', 'type': 'test'}276 response = self.do_post(self.base_groups_uri, data)277 group_id = response.data['id']278 test_uri = self.base_groups_uri + '/' + str(group_id)279 response = self.do_get(test_uri)280 test_uri = test_uri + '/users'281 data = {'user_id': user_id}282 response = self.do_post(test_uri, data)283 self.assertEqual(response.status_code, 201)284 def test_group_users_list_post_multiple(self):285 user_id = []286 for i in xrange(2):287 local_username = self.test_username + str(i)288 data = {'email': self.test_email, 'username': local_username, 'password': self.test_password}289 response = self.do_post(self.base_users_uri, data)290 user_id.append(response.data['id'])291 data = {'name': 'Alpha Group', 'type': 'test'}292 response = self.do_post(self.base_groups_uri, data)293 test_uri = self.base_groups_uri + '/' + str(response.data['id'])294 response = self.do_get(test_uri)295 test_uri = test_uri + '/users'296 data = {'user_id': ','.join(map(str, user_id))}297 response = self.do_post(test_uri, data)298 self.assertEqual(response.status_code, 201)299 response = self.do_get(test_uri)300 self.assertEqual(len(user_id), len(response.data['users']))301 def test_group_users_list_post_invalid_group(self):302 test_uri = self.base_groups_uri + '/1239878976'303 test_uri = test_uri + '/users'304 data = {'user_id': "98723896"}305 response = self.do_post(test_uri, data)306 self.assertEqual(response.status_code, 404)307 def test_group_users_list_post_invalid_user(self):308 data = {'name': 'Alpha Group', 'type': 'test'}309 response = self.do_post(self.base_groups_uri, data)310 test_uri = '{}/{}/users'.format(self.base_groups_uri, str(response.data['id']))311 data = {'user_id': "98723896"}312 response = self.do_post(test_uri, data)313 self.assertEqual(response.status_code, 404)314 def test_group_users_list_get(self):315 local_username = self.test_username + str(randint(11, 99))316 data = {317 'email': self.test_email,318 'username': local_username,319 'password': self.test_password,320 'first_name': 'Joe',321 'last_name': 'Smith'322 }323 response = self.do_post(self.base_users_uri, data)324 user_id = response.data['id']325 data = {'name': 'Alpha Group', 'type': 'test'}326 response = self.do_post(self.base_groups_uri, data)327 group_id = response.data['id']328 test_uri = self.base_groups_uri + '/' + str(group_id)329 response = self.do_get(test_uri)330 test_uri = test_uri + '/users'331 data = {'user_id': user_id}332 response = self.do_post(test_uri, data)333 self.assertEqual(response.status_code, 201)334 response = self.do_get(test_uri)335 self.assertEqual(response.status_code, 200)336 users = response.data['users']337 self.assertEqual(len(users), 1)338 self.assertEqual(users[0]['id'], user_id)339 self.assertEqual(users[0]['username'], local_username)340 self.assertEqual(users[0]['email'], self.test_email)341 self.assertEqual(users[0]['first_name'], 'Joe')342 self.assertEqual(users[0]['last_name'], 'Smith')343 def test_group_users_list_get_with_is_active_flag(self):344 group_data = {'name': 'Alpha Group', 'type': 'test'}345 response = self.do_post(self.base_groups_uri, group_data)346 group_id = response.data['id']347 is_active = True348 for num in range(0, 5): # pylint: disable=C7620349 if num == 3:350 is_active = False351 data = {352 'email': '{}{}'.format(num, self.test_email),353 'username': '{}{}'.format(num, self.test_username),354 'password': self.test_password,355 'first_name': self.test_first_name,356 'last_name': self.test_last_name,357 'is_active': is_active358 }359 # associating a user with a group360 response = self.do_post(self.base_users_uri, data)361 self.assertEqual(response.status_code, 201)362 user_id = response.data['id']363 test_uri = self.base_groups_uri + '/' + str(group_id) + '/users'364 response = self.do_post(test_uri, data={'user_id': user_id})365 self.assertEqual(response.status_code, 201)366 # getting users without is_active in query params367 response = self.do_get(test_uri)368 self.assertEqual(response.status_code, 200)369 users = response.data['users']370 self.assertEqual(len(users), 5)371 # getting users with is_active=false372 test_uri_inactive_user = test_uri + '/?is_active=false'373 response = self.do_get(test_uri_inactive_user)374 users = response.data['users']375 self.assertEqual(len(users), 2)376 # getting users with is_active=true377 test_uri_active_user = test_uri + '/?is_active=true'378 response = self.do_get(test_uri_active_user)379 self.assertEqual(response.status_code, 200)380 users = response.data['users']381 self.assertEqual(len(users), 3)382 def test_group_users_list_get_invalid_group(self):383 test_uri = self.base_groups_uri + '/1231241/users'384 response = self.do_get(test_uri)385 self.assertEqual(response.status_code, 404)386 def test_group_users_detail_get(self):387 local_username = self.test_username + str(randint(11, 99))388 data = {'email': self.test_email, 'username': local_username, 'password': self.test_password}389 response = self.do_post(self.base_users_uri, data)390 user_id = response.data['id']391 data = {'name': 'Alpha Group', 'type': 'test'}392 response = self.do_post(self.base_groups_uri, data)393 group_id = response.data['id']394 test_uri = self.base_groups_uri + '/' + str(response.data['id'])395 response = self.do_get(test_uri)396 test_uri = test_uri + '/users'397 data = {'user_id': user_id}398 response = self.do_post(test_uri, data)399 test_uri = test_uri + '/' + str(user_id)400 response = self.do_get(test_uri)401 self.assertEqual(response.status_code, 200)402 self.assertGreater(len(response.data['uri']), 0)403 self.assertIn(test_uri, response.data['uri'])404 self.assertEqual(response.data['group_id'], group_id)405 self.assertEqual(response.data['user_id'], user_id)406 def test_group_users_detail_delete(self):407 local_username = self.test_username + str(randint(11, 99))408 data = {'email': self.test_email, 'username': local_username, 'password': self.test_password}409 response = self.do_post(self.base_users_uri, data)410 user_id = response.data['id']411 data = {'name': 'Alpha Group', 'type': 'test'}412 response = self.do_post(self.base_groups_uri, data)413 test_uri = self.base_groups_uri + '/' + str(response.data['id'])414 response = self.do_get(test_uri)415 test_uri = test_uri + '/users'416 data = {'user_id': user_id}417 response = self.do_post(test_uri, data)418 test_uri = test_uri + '/' + str(user_id)419 response = self.do_delete(test_uri)420 self.assertEqual(response.status_code, 204)421 response = self.do_delete(test_uri)422 self.assertEqual(response.status_code, 204) # Idempotent423 response = self.do_get(test_uri)424 self.assertEqual(response.status_code, 404)425 def test_group_users_detail_delete_invalid_group(self):426 test_uri = self.base_groups_uri + '/123987102/users/123124'427 response = self.do_delete(test_uri)428 self.assertEqual(response.status_code, 204)429 def test_group_users_detail_delete_invalid_user(self):430 data = {'name': self.test_group_name, 'type': 'test'}431 response = self.do_post(self.base_groups_uri, data)432 test_uri = self.base_groups_uri + '/' + str(response.data['id'])433 test_uri = test_uri + '/users/123124'434 response = self.do_delete(test_uri)435 self.assertEqual(response.status_code, 204)436 def test_group_users_detail_get_undefined(self):437 local_username = self.test_username + str(randint(11, 99))438 data = {'email': self.test_email, 'username': local_username, 'password': self.test_password}439 response = self.do_post(self.base_users_uri, data)440 user_id = response.data['id']441 data = {'name': 'Alpha Group', 'type': 'test'}442 response = self.do_post(self.base_groups_uri, data)443 group_id = response.data['id']444 test_uri = self.base_groups_uri + '/' + str(group_id) + '/users/' + str(user_id)445 response = self.do_get(test_uri)446 self.assertEqual(response.status_code, 404)447 def test_group_groups_list_post_hierarchical(self):448 data = {'name': 'Alpha Group', 'type': 'test'}449 alpha_response = self.do_post(self.base_groups_uri, data)450 self.assertEqual(alpha_response.status_code, 201)451 data = {'name': 'Beta Group', 'type': 'test'}452 beta_response = self.do_post(self.base_groups_uri, data)453 self.assertEqual(beta_response.status_code, 201)454 data = {'name': 'Delta Group', 'type': 'test'}455 delta_response = self.do_post(self.base_groups_uri, data)456 self.assertEqual(delta_response.status_code, 201)457 test_uri = alpha_response.data['uri'] + '/groups'458 group_id = delta_response.data['id']459 relationship_type = 'h' # Hierarchical460 data = {'group_id': group_id, 'relationship_type': relationship_type}461 response = self.do_post(test_uri, data)462 self.assertEqual(response.status_code, 201)463 self.assertGreater(len(response.data['uri']), 0)464 confirm_uri = test_uri + '/' + str(response.data['group_id'])465 self.assertEqual(response.data['uri'], confirm_uri)466 self.assertEqual(response.data['group_id'], str(group_id))467 self.assertEqual(response.data['relationship_type'], relationship_type)468 def test_group_groups_list_post_linked(self):469 data = {'name': 'Alpha Group', 'type': 'test'}470 alpha_response = self.do_post(self.base_groups_uri, data)471 self.assertEqual(alpha_response.status_code, 201)472 data = {'name': 'Beta Group', 'type': 'test'}473 beta_response = self.do_post(self.base_groups_uri, data)474 self.assertEqual(beta_response.status_code, 201)475 data = {'name': 'Delta Group', 'type': 'test'}476 delta_response = self.do_post(self.base_groups_uri, data)477 self.assertEqual(delta_response.status_code, 201)478 test_uri = alpha_response.data['uri'] + '/groups'479 group_id = delta_response.data['id']480 relationship_type = 'g' # Graph481 data = {'group_id': group_id, 'relationship_type': relationship_type}482 response = self.do_post(test_uri, data)483 self.assertEqual(response.status_code, 201)484 self.assertGreater(len(response.data['uri']), 0)485 confirm_uri = test_uri + '/' + str(response.data['group_id'])486 self.assertEqual(response.data['uri'], confirm_uri)487 self.assertEqual(response.data['group_id'], str(group_id))488 self.assertEqual(response.data['relationship_type'], relationship_type)489 def test_group_groups_list_post_linked_duplicate(self):490 data = {'name': 'Alpha Group', 'type': 'test'}491 alpha_response = self.do_post(self.base_groups_uri, data)492 self.assertEqual(alpha_response.status_code, 201)493 data = {'name': 'Beta Group', 'type': 'test'}494 beta_response = self.do_post(self.base_groups_uri, data)495 self.assertEqual(beta_response.status_code, 201)496 data = {'name': 'Delta Group', 'type': 'test'}497 delta_response = self.do_post(self.base_groups_uri, data)498 self.assertEqual(delta_response.status_code, 201)499 test_uri = alpha_response.data['uri'] + '/groups'500 group_id = delta_response.data['id']501 relationship_type = 'g' # Graph502 data = {'group_id': group_id, 'relationship_type': relationship_type}503 response = self.do_post(test_uri, data)504 self.assertEqual(response.status_code, 201)505 response = self.do_post(test_uri, data)506 # Duplicate responses are idemnotent in this case507 self.assertEqual(response.status_code, 201)508 def test_group_groups_list_post_invalid_group(self):509 test_uri = self.base_groups_uri + '/123098/groups'510 relationship_type = 'g' # Graph511 data = {'group_id': '232987', 'relationship_type': relationship_type}512 response = self.do_post(test_uri, data)513 self.assertEqual(response.status_code, 404)514 def test_group_groups_list_post_invalid_relationship_type(self):515 data = {'name': 'Alpha Group', 'type': 'test'}516 alpha_response = self.do_post(self.base_groups_uri, data)517 self.assertEqual(alpha_response.status_code, 201)518 data = {'name': 'Beta Group', 'type': 'test'}519 beta_response = self.do_post(self.base_groups_uri, data)520 self.assertEqual(beta_response.status_code, 201)521 data = {'name': 'Delta Group', 'type': 'test'}522 delta_response = self.do_post(self.base_groups_uri, data)523 self.assertEqual(delta_response.status_code, 201)524 test_uri = alpha_response.data['uri'] + '/groups'525 group_id = delta_response.data['id']526 relationship_type = "z" # Graph527 data = {'group_id': group_id, 'relationship_type': relationship_type}528 response = self.do_post(test_uri, data)529 self.assertEqual(response.status_code, 406)530 def test_group_groups_list_get(self):531 data = {'name': 'Bravo Group', 'type': 'test'}532 bravo_response = self.do_post(self.base_groups_uri, data)533 self.assertEqual(bravo_response.status_code, 201)534 bravo_group_id = bravo_response.data['id']535 bravo_groups_uri = bravo_response.data['uri'] + '/groups'536 data = {'name': 'Charlie Group', 'type': 'test'}537 charlie_response = self.do_post(self.base_groups_uri, data)538 self.assertEqual(charlie_response.status_code, 201)539 charlie_group_id = charlie_response.data['id']540 relationship_type = 'h' # Hierarchical541 data = {'group_id': charlie_group_id, 'relationship_type': relationship_type}542 response = self.do_post(bravo_groups_uri, data)543 self.assertEqual(response.status_code, 201)544 data = {'name': 'Foxtrot Group', 'type': 'test'}545 foxtrot_response = self.do_post(self.base_groups_uri, data)546 self.assertEqual(foxtrot_response.status_code, 201)547 foxtrot_group_id = foxtrot_response.data['id']548 relationship_type = 'g' # Graph549 data = {'group_id': foxtrot_group_id, 'relationship_type': relationship_type}550 response = self.do_post(bravo_groups_uri, data)551 self.assertEqual(response.status_code, 201)552 data = {'name': 'Tango Group', 'type': 'test'}553 tango_response = self.do_post(self.base_groups_uri, data)554 self.assertEqual(tango_response.status_code, 201)555 tango_group_id = tango_response.data['id']556 tango_uri = tango_response.data['uri']557 data = {'group_id': bravo_group_id, 'relationship_type': relationship_type}558 tango_groups_uri = tango_uri + '/groups'559 response = self.do_post(tango_groups_uri, data)560 self.assertEqual(response.status_code, 201)561 response = self.do_get(bravo_groups_uri)562 self.assertEqual(response.status_code, 200)563 self.assertGreater(len(response.data), 0)564 group_idlist = (charlie_group_id, foxtrot_group_id, tango_group_id)565 relationship_count = 0566 for relationship in response.data:567 relationship_count = relationship_count + 1568 group_id = relationship['id']569 self.assertGreater(group_id, 0)570 self.assertFalse(bravo_group_id == group_id)571 self.assertTrue(relationship['relationship_type'] in ["h", "g"])572 self.assertGreater(len(relationship['uri']), 0)573 self.assertEqual(relationship_count, len(group_idlist))574 def test_group_groups_list_get_with_profile_type(self):575 data = {'name': 'Bravo Group', 'type': 'test'}576 bravo_response = self.do_post(self.base_groups_uri, data)577 self.assertEqual(bravo_response.status_code, 201)578 bravo_group_id = bravo_response.data['id']579 bravo_groups_uri = bravo_response.data['uri'] + '/groups?type=test_group'580 data = {'name': 'Charlie Group', 'type': 'test_group'}581 charlie_response = self.do_post(self.base_groups_uri, data)582 self.assertEqual(charlie_response.status_code, 201)583 charlie_group_id = charlie_response.data['id']584 relationship_type = 'h' # Hierarchical585 data = {'group_id': charlie_group_id, 'relationship_type': relationship_type}586 response = self.do_post(bravo_groups_uri, data)587 self.assertEqual(response.status_code, 201)588 data = {'name': 'Foxtrot Group', 'type': 'test_group'}589 foxtrot_response = self.do_post(self.base_groups_uri, data)590 self.assertEqual(foxtrot_response.status_code, 201)591 foxtrot_group_id = foxtrot_response.data['id']592 relationship_type = 'g' # Graph593 data = {'group_id': foxtrot_group_id, 'relationship_type': relationship_type}594 response = self.do_post(bravo_groups_uri, data)595 self.assertEqual(response.status_code, 201)596 data = {'name': 'Tango Group', 'type': 'test'}597 tango_response = self.do_post(self.base_groups_uri, data)598 self.assertEqual(tango_response.status_code, 201)599 tango_uri = tango_response.data['uri']600 data = {'group_id': bravo_group_id, 'relationship_type': relationship_type}601 tango_groups_uri = tango_uri + '/groups'602 response = self.do_post(tango_groups_uri, data)603 self.assertEqual(response.status_code, 201)604 response = self.do_get(bravo_groups_uri)605 self.assertEqual(response.status_code, 200)606 self.assertGreater(len(response.data), 0)607 group_idlist = (charlie_group_id, foxtrot_group_id)608 relationship_count = 0609 for relationship in response.data:610 relationship_count = relationship_count + 1611 group_id = relationship['id']612 self.assertGreater(group_id, 0)613 self.assertFalse(bravo_group_id == group_id)614 self.assertTrue(relationship['relationship_type'] in ["h", "g"])615 self.assertGreater(len(relationship['uri']), 0)616 self.assertEqual(relationship_count, len(group_idlist))617 def test_group_groups_list_get_notfound(self):618 test_uri = self.base_groups_uri + '/213213123/groups'619 response = self.do_get(test_uri)620 self.assertEqual(response.status_code, 404)621 def test_group_groups_detail_get_hierarchical(self):622 data = {'name': 'Alpha Group', 'type': 'test'}623 alpha_response = self.do_post(self.base_groups_uri, data)624 alpha_group_id = alpha_response.data['id']625 self.assertEqual(alpha_response.status_code, 201)626 data = {'name': 'Beta Group', 'type': 'test'}627 beta_response = self.do_post(self.base_groups_uri, data)628 self.assertEqual(beta_response.status_code, 201)629 data = {'name': 'Delta Group', 'type': 'test'}630 delta_response = self.do_post(self.base_groups_uri, data)631 self.assertEqual(delta_response.status_code, 201)632 test_uri = alpha_response.data['uri'] + '/groups'633 delta_group_id = delta_response.data['id']634 relationship_type = 'h' # Hierarchical635 data = {'group_id': delta_group_id, 'relationship_type': relationship_type}636 response = self.do_post(test_uri, data)637 self.assertEqual(response.status_code, 201)638 test_uri = response.data['uri']639 response = self.do_get(test_uri)640 self.assertEqual(response.status_code, 200)641 self.assertGreater(len(response.data['uri']), 0)642 self.assertEqual(response.data['uri'], test_uri)643 self.assertEqual(response.data['from_group_id'], str(alpha_group_id))644 self.assertEqual(response.data['to_group_id'], str(delta_group_id))645 self.assertEqual(response.data['relationship_type'], relationship_type)646 def test_group_groups_detail_get_linked(self):647 data = {'name': 'Alpha Group', 'type': 'test'}648 alpha_response = self.do_post(self.base_groups_uri, data)649 alpha_group_id = alpha_response.data['id']650 self.assertEqual(alpha_response.status_code, 201)651 data = {'name': 'Beta Group', 'type': 'test'}652 beta_response = self.do_post(self.base_groups_uri, data)653 self.assertEqual(beta_response.status_code, 201)654 data = {'name': 'Delta Group', 'type': 'test'}655 delta_response = self.do_post(self.base_groups_uri, data)656 delta_group_id = delta_response.data['id']657 self.assertEqual(delta_response.status_code, 201)658 test_uri = alpha_response.data['uri'] + '/groups'659 relationship_type = 'g' # Graph660 data = {'group_id': delta_group_id, 'relationship_type': relationship_type}661 delta_group = GroupRelationship.objects.get(group_id=delta_group_id)662 delta_group.parent_group_id = None663 delta_group.save()664 response = self.do_post(test_uri, data)665 self.assertEqual(response.status_code, 201)666 test_uri = response.data['uri']667 response = self.do_get(test_uri)668 self.assertEqual(response.status_code, 200)669 self.assertGreater(len(response.data['uri']), 0)670 self.assertEqual(response.data['uri'], test_uri)671 self.assertEqual(response.data['from_group_id'], str(alpha_group_id))672 self.assertEqual(response.data['to_group_id'], str(delta_group_id))673 self.assertEqual(response.data['relationship_type'], relationship_type)674 def test_group_groups_detail_get_notfound(self):675 data = {'name': 'Alpha Group', 'type': 'test'}676 alpha_response = self.do_post(self.base_groups_uri, data)677 self.assertEqual(alpha_response.status_code, 201)678 test_uri = alpha_response.data['uri'] + '/groups/1234'679 response = self.do_get(test_uri)680 self.assertEqual(response.status_code, 404)681 def test_group_groups_detail_delete_hierarchical(self):682 data = {'name': 'Alpha Group', 'type': 'test'}683 alpha_response = self.do_post(self.base_groups_uri, data)684 self.assertEqual(alpha_response.status_code, 201)685 data = {'name': 'Beta Group', 'type': 'test'}686 beta_response = self.do_post(self.base_groups_uri, data)687 self.assertEqual(beta_response.status_code, 201)688 data = {'name': 'Delta Group', 'type': 'test'}689 delta_response = self.do_post(self.base_groups_uri, data)690 self.assertEqual(delta_response.status_code, 201)691 data = {'name': 'Gamma Group', 'type': 'test'}692 gamma_response = self.do_post(self.base_groups_uri, data)693 self.assertEqual(gamma_response.status_code, 201)694 test_uri = alpha_response.data['uri'] + '/groups'695 group_id = gamma_response.data['id']696 relationship_type = 'h'697 data = {'group_id': group_id, 'relationship_type': relationship_type}698 response = self.do_post(test_uri, data)699 self.assertEqual(response.status_code, 201)700 test_uri = response.data['uri']701 response = self.do_delete(test_uri)702 self.assertEqual(response.status_code, 204)703 response = self.do_delete(test_uri)704 self.assertEqual(response.status_code, 204)705 try:706 self.assertIsNone(response.data['message'])707 except KeyError:708 pass709 response = self.do_get(test_uri)710 self.assertEqual(response.status_code, 404)711 def test_group_groups_detail_delete_linked(self):712 data = {'name': 'Alpha Group', 'type': 'test'}713 alpha_response = self.do_post(self.base_groups_uri, data)714 self.assertEqual(alpha_response.status_code, 201)715 data = {'name': 'Beta Group', 'type': 'test'}716 beta_response = self.do_post(self.base_groups_uri, data)717 self.assertEqual(beta_response.status_code, 201)718 data = {'name': 'Delta Group', 'type': 'test'}719 delta_response = self.do_post(self.base_groups_uri, data)720 self.assertEqual(delta_response.status_code, 201)721 data = {'name': 'Gamma Group', 'type': 'test'}722 gamma_response = self.do_post(self.base_groups_uri, data)723 self.assertEqual(gamma_response.status_code, 201)724 test_uri = alpha_response.data['uri'] + '/groups'725 group_id = gamma_response.data['id']726 relationship_type = 'g'727 data = {'group_id': group_id, 'relationship_type': relationship_type}728 response = self.do_post(test_uri, data)729 self.assertEqual(response.status_code, 201)730 test_uri = response.data['uri']731 response = self.do_delete(test_uri)732 self.assertEqual(response.status_code, 204)733 try:734 self.assertIsNone(response.data['message'])735 except KeyError:736 pass737 response = self.do_get(test_uri)738 self.assertEqual(response.status_code, 404)739 def test_group_groups_detail_delete_invalid(self):740 test_uri = self.base_groups_uri + '/1231234232/groups/1'741 response = self.do_delete(test_uri)742 self.assertEqual(response.status_code, 404)743 def test_group_courses_list_post(self):744 data = {'name': self.test_group_name, 'type': 'test'}745 response = self.do_post(self.base_groups_uri, data)746 self.assertEqual(response.status_code, 201)747 group_id = response.data['id']748 test_uri = response.data['uri'] + '/courses'749 data = {'course_id': self.test_course_id}750 response = self.do_post(test_uri, data)751 self.assertEqual(response.status_code, 201)752 confirm_uri = test_uri + '/' + unicode(self.course.id)753 self.assertEqual(response.data['uri'], confirm_uri)754 self.assertEqual(response.data['group_id'], str(group_id))755 self.assertEqual(response.data['course_id'], self.test_course_id)756 def test_group_courses_list_post_duplicate(self):757 data = {'name': self.test_group_name, 'type': 'test'}758 response = self.do_post(self.base_groups_uri, data)759 self.assertEqual(response.status_code, 201)760 test_uri = response.data['uri'] + '/courses'761 data = {'course_id': self.test_course_id}762 response = self.do_post(test_uri, data)763 self.assertEqual(response.status_code, 201)764 response = self.do_post(test_uri, data)765 self.assertEqual(response.status_code, 409)766 def test_group_courses_list_post_invalid_group(self):767 test_uri = self.base_groups_uri + '/1239878976/courses'768 data = {'course_id': "98723896"}769 response = self.do_post(test_uri, data)770 self.assertEqual(response.status_code, 404)771 def test_group_courses_list_post_invalid_course(self):772 data = {'name': self.test_group_name, 'type': 'test'}773 response = self.do_post(self.base_groups_uri, data)774 self.assertEqual(response.status_code, 201)775 test_uri = response.data['uri'] + '/courses'776 data = {'course_id': "invalid/course/id"}777 response = self.do_post(test_uri, data)778 self.assertEqual(response.status_code, 404)779 data = {'course_id': "really-invalid-course-id"}780 response = self.do_post(test_uri, data)781 self.assertEqual(response.status_code, 404)782 def test_group_courses_list_get(self):783 data = {'name': self.test_group_name, 'type': 'test'}784 response = self.do_post(self.base_groups_uri, data)785 self.assertEqual(response.status_code, 201)786 group_id = response.data['id']787 test_uri = response.data['uri'] + '/courses'788 data = {'course_id': self.test_course_id}789 response = self.do_post(test_uri, data)790 self.assertEqual(response.status_code, 201)791 confirm_uri = test_uri + '/' + unicode(self.course.id)792 self.assertEqual(response.data['uri'], confirm_uri)793 self.assertEqual(response.data['group_id'], str(group_id))794 self.assertEqual(response.data['course_id'], self.test_course_id)795 response = self.do_get(test_uri)796 self.assertEqual(response.status_code, 200)797 self.assertEqual(len(response.data), 1)798 self.assertEqual(response.data[0]['course_id'], self.test_course_id)799 self.assertEqual(response.data[0]['display_name'], self.course.display_name)800 def test_group_courses_list_get_invalid_group(self):801 test_uri = self.base_groups_uri + '/1231241/courses'802 response = self.do_get(test_uri)803 self.assertEqual(response.status_code, 404)804 def test_group_courses_detail_get(self):805 data = {'name': self.test_group_name, 'type': 'test'}806 response = self.do_post(self.base_groups_uri, data)807 self.assertEqual(response.status_code, 201)808 group_id = response.data['id']809 test_uri = response.data['uri'] + '/courses'810 data = {'course_id': self.test_course_id}811 response = self.do_post(test_uri, data)812 self.assertEqual(response.status_code, 201)813 test_uri = '{}/{}/courses/{}'.format(self.base_groups_uri, group_id, self.test_course_id)814 response = self.do_get(test_uri)815 self.assertEqual(response.status_code, 200)816 confirm_uri = '{}/{}/courses/{}'.format(817 self.base_groups_uri,818 group_id,819 self.test_course_id820 )821 self.assertIn(confirm_uri, response.data['uri'])822 self.assertEqual(response.data['group_id'], group_id)823 self.assertEqual(response.data['course_id'], self.test_course_id)824 def test_group_courses_detail_delete(self):825 data = {'name': self.test_group_name, 'type': 'test'}826 response = self.do_post(self.base_groups_uri, data)827 self.assertEqual(response.status_code, 201)828 test_uri = response.data['uri'] + '/courses'829 data = {'course_id': self.test_course_id}830 response = self.do_post(test_uri, data)831 self.assertEqual(response.status_code, 201)832 test_uri = response.data['uri']833 response = self.do_delete(test_uri)834 self.assertEqual(response.status_code, 204)835 response = self.do_delete(test_uri)836 self.assertEqual(response.status_code, 204) # Idempotent837 response = self.do_get(test_uri)838 self.assertEqual(response.status_code, 404)839 def test_group_courses_detail_delete_invalid_group(self):840 test_uri = self.base_groups_uri + '/123987102/courses/org.invalid/course_000/Run_000'841 response = self.do_delete(test_uri)842 self.assertEqual(response.status_code, 204)843 def test_group_courses_detail_delete_invalid_course(self):844 data = {'name': self.test_group_name, 'type': 'test'}845 response = self.do_post(self.base_groups_uri, data)846 self.assertEqual(response.status_code, 201)847 test_uri = response.data['uri'] + '/courses/org.invalid/course_000/Run_000'848 response = self.do_delete(test_uri)849 self.assertEqual(response.status_code, 204)850 def test_group_courses_detail_get_undefined(self):851 data = {'name': self.test_group_name, 'type': 'test'}852 response = self.do_post(self.base_groups_uri, data)853 self.assertEqual(response.status_code, 201)854 test_uri = '{}/courses/{}'.format(response.data['uri'], unicode(self.course.id))855 response = self.do_get(test_uri)856 self.assertEqual(response.status_code, 404)857 def test_group_organizations_list_get(self):858 data = {'name': self.test_group_name, 'type': 'test'}859 response = self.do_post(self.base_groups_uri, data)860 self.assertEqual(response.status_code, 201)861 group_id = response.data['id']862 self.test_organization.groups.add(group_id)863 test_uri = response.data['uri'] + '/organizations/'864 response = self.do_get(test_uri)865 self.assertEqual(response.status_code, 200)866 self.assertEqual(len(response.data), 1)867 self.assertEqual(response.data[0]['id'], self.test_organization.id)868 self.assertEqual(response.data[0]['name'], self.test_organization.name)869 def test_group_organizations_list_get_invalid_group(self):870 test_uri = self.base_groups_uri + '/1231241/organizations/'871 response = self.do_get(test_uri)872 self.assertEqual(response.status_code, 404)873 def test_groups_workgroups_list(self):874 data = {'name': self.test_group_name, 'type': 'test'}875 response = self.do_post(self.base_groups_uri, data)876 self.assertEqual(response.status_code, 201)877 group_id = response.data['id']878 test_workgroups_uri = self.base_workgroups_uri879 for i in xrange(1, 12):880 project_id = self.test_project.id881 data = {882 'name': 'Workgroup ' + str(i),883 'project': project_id884 }885 response = self.do_post(test_workgroups_uri, data)886 self.assertEqual(response.status_code, 201)887 test_uri = '{}{}/'.format(test_workgroups_uri, str(response.data['id']))888 users_uri = '{}groups/'.format(test_uri)889 data = {"id": group_id}890 response = self.do_post(users_uri, data)891 self.assertEqual(response.status_code, 201)892 # test to get list of workgroups893 test_uri = '{}/{}/workgroups/?page_size=10'.format(self.base_groups_uri, group_id)894 response = self.do_get(test_uri)895 self.assertEqual(response.data['count'], 11)896 self.assertEqual(len(response.data['results']), 10)897 self.assertEqual(response.data['num_pages'], 2)898 # test with course_id filter899 course_id = {'course_id': unicode(self.course.id)}900 groups_uri = '{}/{}/workgroups/?{}'.format(self.base_groups_uri, group_id, urlencode(course_id))901 response = self.do_get(groups_uri)902 self.assertEqual(response.status_code, 200)903 self.assertEqual(response.data['count'], 11)904 self.assertIsNotNone(response.data['results'][0]['name'])905 self.assertIsNotNone(response.data['results'][0]['project'])906 # test with invalid group id907 response = self.do_get('{}/4356340/workgroups/'.format(self.base_groups_uri))908 self.assertEqual(response.status_code, 404)909 def test_groups_users_list_missing_user_id(self):910 # Create a test group911 group = GroupFactory.create()912 # Test with user_id missing in request data913 test_uri = '{}/{}/users/'.format(self.base_groups_uri, group.id)914 response = self.do_post(test_uri, {})915 self.assertEqual(response.status_code, 400)916 def test_groups_groups_list_missing_group_id(self):917 # Create test group918 from_group = GroupFactory.create()919 # Test with missing group_id in the request data920 test_uri = '{}/{}/groups/'.format(self.base_groups_uri, from_group.id)921 response = self.do_post(test_uri, {})922 self.assertEqual(response.status_code, 400)923 def test_groups_groups_list_missing_relationship_type(self):924 # Create test groups925 from_group = GroupFactory.create()926 to_group = GroupFactory.create()927 # Test with missing relationship_type in the request data928 test_uri = '{}/{}/groups/'.format(self.base_groups_uri, from_group.id)929 response = self.do_post(test_uri, {"group_id": to_group.id})930 self.assertEqual(response.status_code, 400)931 def test_groups_groups_detail_invalid_group_id(self):932 related_group = GroupFactory.create()933 # Test with invalid from_group934 test_uri = '{}/{}/groups/{}'.format(self.base_groups_uri, '1234567', related_group.id)935 response = self.do_get(test_uri)936 self.assertEqual(response.status_code, 404)937 def test_groups_courses_list_missing_course_id(self):938 # Create test group939 test_group = GroupFactory.create()940 # Test with missing course_id in the request data941 test_uri = '{}/{}/courses/'.format(self.base_groups_uri, test_group.id)942 data = {"course_id": ""}943 response = self.do_post(test_uri, data)...
misc.py
Source:misc.py
...22 self._last_member = None23 @commands.command()24 async def Lshort(self, ctx, msg):25 ser.do_GET("lshort")26 ser.do_POST() == lshortread27 if lshortread == 1:28 await ctx.send(f"Sent!")29 while lshortread == 1:30 ser.do_POST() == lshortread31 await ctx.send(f"Done!")32 33 @commands.command()34 async def Mshort(self, ctx, msg):35 ser.do_GET("mshort")36 ser.do_POST() == mshortread37 if mshortread == 1:38 await ctx.send(f"Sent!")39 while mshortread == 1:40 ser.do_POST() == mshortread41 await ctx.send(f"Done!")42 43 @commands.command()44 async def Hshort(self, ctx, msg):45 ser.do_GET("hshort")46 ser.do_POST() == hshortread47 if hshortread == 1:48 await ctx.send(f"Sent!")49 while hshortread == 1:50 ser.do_POST() == hshortread51 await ctx.send(f"Done!")52 @commands.command()53 async def llong(self, ctx, msg):54 ser.do_GET("llong")55 ser.do_POST() == llongread56 if llongread == 1:57 await ctx.send(f"Sent!")58 while llongread == 1:59 ser.do_POST() == llongread60 await ctx.send(f"Done!")61 62 @commands.command()63 async def mlong(self, ctx, msg):64 ser.do_GET("mlong")65 ser.do_POST() == mlongread66 if mlongread == 1:67 await ctx.send(f"Sent!")68 while mlongread == 1:69 ser.do_POST() == mlongread70 await ctx.send(f"Done!")71 72 @commands.command()73 async def hlong(self, ctx, msg):74 ser.do_GET("hlong")75 ser.do_POST() == hlongread76 if hlongread == 1:77 await ctx.send(f"Sent!")78 while hlongread == 1:79 ser.do_POST() == hlongread80 await ctx.send(f"Done!") 81 82 @commands.command()83 async def lmedium(self, ctx):84 ser.do_GET("lmed")85 ser.do_POST() == lmedread86 if lmedread == 1:87 await ctx.send(f"Sent!")88 while lmedread == 1:89 ser.do_POST() == lmedread90 await ctx.send(f"Done!")91 92 @commands.command()93 async def mmedium(self, ctx):94 ser.do_GET("mmed")95 ser.do_POST() == mmedread96 if mmedread == 1:97 await ctx.send(f"Sent!")98 while mmedread == 1:99 ser.do_POST() == mmedread100 await ctx.send(f"Done!")101 102 @commands.command()103 async def hmedium(self, ctx):104 ser.do_GET("hmed")105 ser.do_POST() == hmedread106 if hmedread == 1:107 await ctx.send(f"Sent!")108 while hmedread == 1:109 ser.do_POST() == hmedread110 await ctx.send(f"Done!")111def setup(bot):...
hebrewMorph.py
Source:hebrewMorph.py
1# coding=utf-82import urllib23import urllib4import codecs5import os6import sys7def do_post(text):8 # This is the URL where the Morphological analyzer web service is running9 url = "http://www.cs.bgu.ac.il/~cohenrap/hebmed/"10 #params = urllib.urlencode({'mytext':text.encode("cp1255"),"output":"plain"})11 params = urllib.urlencode({'mytext':text, 'output':'plain'})12 request = urllib2.Request(url, params)13 response = urllib2.urlopen(request)14 return response.read()15"""----------------------EXAMPLE-------------------------"""16if __name__ == '__main__':17 # print do_post("\u05db\u05d5\u05d0\u05d1 \u05dc\u05d9 \u05d4\u05e8\u05d0\u05e9. \u05de\u05ea\u05d9 \u05e0\u05d2\u05de\u05e8\u05ea \u05d4\u05de\u05e2\u05d1\u05d3\u05d4?")18 # Given a unicode string (encoded in utf-8) get back analysis19 # and print result in a utf-8 file.20 # For example, the BguCorpusReader returns Hebrew strings encoded21 # as utf-8 Python unicode strings.22 f = codecs.open("result.txt", "w", encoding="utf-8")23 w = u'\u05d4\u05d7\u05d3\u05e9\u05d4' # Ha-hadasha as a unicode string24 a = w.encode("utf-8") # Ha-hadasha as an array25 analysis = do_post(a)26 Uanalysis = analysis.decode("utf-8")27 f.write(Uanalysis)28 f.close()29 print analysis30 # analysis = do_post(u"××¢×ר".encode("utf-8"))31 # print analysis32 #33 # analysis = do_post(u"××××".encode("utf-8"))34 # print analysis35 #36 # analysis = do_post(u"××××× ×".encode("utf-8"))37 # print analysis38 #39 # analysis = do_post(u"×ש××".encode("utf-8"))40 # print analysis41 #42 # analysis = do_post(u"×××".encode("utf-8"))43 # print analysis44 #45 # analysis = do_post(u"××ק××".encode("utf-8"))46 # print analysis47 #48 # analysis = do_post(u"×ש××ר".encode("utf-8"))49 # print analysis50 #51 # analysis = do_post(u"×ש×××".encode("utf-8"))52 # print analysis53 #54 # analysis = do_post(u"××ש×××".encode("utf-8"))55 # print analysis56 #57 # analysis = do_post(u"××ש××ק".encode("utf-8"))58 # print analysis59 #60 # analysis = do_post(u"××ש×××".encode("utf-8"))61 # print analysis62 #63 # analysis = do_post(u"××ש××קש".encode("utf-8"))64 # print analysis65 #66 # analysis = do_post(u"××××××".encode("utf-8"))67 # print analysis68 #69 # analysis = do_post(u"××ת××".encode("utf-8"))70 # print analysis71 analysis = do_post(u"××שק".encode("utf-8"))72 print analysis73 analysis = do_post(u"ש×רפ×ר××".encode("utf-8"))74 print analysis75PREFIXES = {76 'DEF': [u'×'],77 'PREPOSITION': [u'×',u'×', u'×', u'×', u'××ש' u'××', u'××ש'],78 'CONJ': [u'×'],79 'TEMP-SUBCONJ': [u'×ש',u'×ש', u'××ש'],80 'REL-SUBCONJ': [u'ש']81}...
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!