mirror of
				https://github.com/django/django.git
				synced 2025-10-31 09:41:08 +00:00 
			
		
		
		
	[3.0.x] Fixed #30967 -- Fixed TrigramTest failures on PostgreSQL 12+.
Backport of 6e2f05b2e3 from master
			
			
This commit is contained in:
		
				
					committed by
					
						 Mariusz Felisiak
						Mariusz Felisiak
					
				
			
			
				
	
			
			
			
						parent
						
							2c2afbe104
						
					
				
				
					commit
					8d3f43f7a9
				
			| @@ -26,22 +26,26 @@ class TrigramTest(PostgreSQLTestCase): | ||||
|  | ||||
|     def test_trigram_similarity(self): | ||||
|         search = 'Bat sat on cat.' | ||||
|         # Round result of similarity because PostgreSQL 12+ uses greater | ||||
|         # precision. | ||||
|         self.assertQuerysetEqual( | ||||
|             self.Model.objects.filter( | ||||
|                 field__trigram_similar=search, | ||||
|             ).annotate(similarity=TrigramSimilarity('field', search)).order_by('-similarity'), | ||||
|             [('Cat sat on mat.', 0.625), ('Dog sat on rug.', 0.333333)], | ||||
|             transform=lambda instance: (instance.field, instance.similarity), | ||||
|             transform=lambda instance: (instance.field, round(instance.similarity, 6)), | ||||
|             ordered=True, | ||||
|         ) | ||||
|  | ||||
|     def test_trigram_similarity_alternate(self): | ||||
|         # Round result of distance because PostgreSQL 12+ uses greater | ||||
|         # precision. | ||||
|         self.assertQuerysetEqual( | ||||
|             self.Model.objects.annotate( | ||||
|                 distance=TrigramDistance('field', 'Bat sat on cat.'), | ||||
|             ).filter(distance__lte=0.7).order_by('distance'), | ||||
|             [('Cat sat on mat.', 0.375), ('Dog sat on rug.', 0.666667)], | ||||
|             transform=lambda instance: (instance.field, instance.distance), | ||||
|             transform=lambda instance: (instance.field, round(instance.distance, 6)), | ||||
|             ordered=True, | ||||
|         ) | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user