|
450 | 450 | } |
451 | 451 | } |
452 | 452 | """ |
| 453 | +SH_INDIVIDUALS_ORDER_BY = """{ |
| 454 | + individuals(orderBy: "%s") { |
| 455 | + entities { |
| 456 | + mk |
| 457 | + } |
| 458 | + } |
| 459 | +}""" |
453 | 460 | SH_TRANSACTIONS_QUERY = """{ |
454 | 461 | transactions { |
455 | 462 | entities { |
@@ -2437,6 +2444,53 @@ def test_filter_country(self): |
2437 | 2444 | indv = individuals[0] |
2438 | 2445 | self.assertEqual(indv['profile']['country']['name'], 'United States of America') |
2439 | 2446 |
|
| 2447 | + def test_order_by_last_modified(self): |
| 2448 | + """Check whether it returns the individuals ordered by last modified date""" |
| 2449 | + |
| 2450 | + indv1 = Individual.objects.create(mk='a9b403e150dd4af8953a52a4bb841051e4b705d9') |
| 2451 | + indv2 = Individual.objects.create(mk='185c4b709e5446d250b4fde0e34b78a2b4fde0e3') |
| 2452 | + indv3 = Individual.objects.create(mk='c6d2504fde0e34b78a185c4b709e5442d045451c') |
| 2453 | + |
| 2454 | + # Test default order by mk |
| 2455 | + client = graphene.test.Client(schema) |
| 2456 | + executed = client.execute(SH_INDIVIDUALS_ORDER_BY % 'mk', |
| 2457 | + context_value=self.context_value) |
| 2458 | + |
| 2459 | + individuals = executed['data']['individuals']['entities'] |
| 2460 | + |
| 2461 | + indv = individuals[0] |
| 2462 | + self.assertEqual(indv['mk'], indv2.mk) |
| 2463 | + indv = individuals[1] |
| 2464 | + self.assertEqual(indv['mk'], indv1.mk) |
| 2465 | + indv = individuals[2] |
| 2466 | + self.assertEqual(indv['mk'], indv3.mk) |
| 2467 | + |
| 2468 | + # Test ascending order |
| 2469 | + executed = client.execute(SH_INDIVIDUALS_ORDER_BY % 'lastModified', |
| 2470 | + context_value=self.context_value) |
| 2471 | + |
| 2472 | + individuals = executed['data']['individuals']['entities'] |
| 2473 | + |
| 2474 | + indv = individuals[0] |
| 2475 | + self.assertEqual(indv['mk'], indv1.mk) |
| 2476 | + indv = individuals[1] |
| 2477 | + self.assertEqual(indv['mk'], indv2.mk) |
| 2478 | + indv = individuals[2] |
| 2479 | + self.assertEqual(indv['mk'], indv3.mk) |
| 2480 | + |
| 2481 | + # Test descending order |
| 2482 | + executed = client.execute(SH_INDIVIDUALS_ORDER_BY % '-lastModified', |
| 2483 | + context_value=self.context_value) |
| 2484 | + |
| 2485 | + individuals = executed['data']['individuals']['entities'] |
| 2486 | + |
| 2487 | + indv = individuals[0] |
| 2488 | + self.assertEqual(indv['mk'], indv3.mk) |
| 2489 | + indv = individuals[1] |
| 2490 | + self.assertEqual(indv['mk'], indv2.mk) |
| 2491 | + indv = individuals[2] |
| 2492 | + self.assertEqual(indv['mk'], indv1.mk) |
| 2493 | + |
2440 | 2494 | def test_pagination(self): |
2441 | 2495 | """Check whether it returns the individuals searched when using pagination""" |
2442 | 2496 |
|
|
0 commit comments