示例#1
0
 def test_can_handle_multiple_records(self, mock: MagicMock):
     mock.return_value.fetchall.return_value = [
         create_productline_db_record('record1'),
         create_productline_db_record('record2'),
     ]
     records = productlines.get_all()
     self.assertEqual(['record1', 'record2'], list(map(lambda p: p.productline_id, records)))
示例#2
0
def list_productlines():
    productlines = _productlines.get_all()
    return flask.jsonify({
        'productlines': {
            'type': 'FeatureCollection',
            'features': [p.serialize() for p in productlines],
        },
    })
示例#3
0
 def test_gracefully_handles_db_errors(self, mock: MagicMock):
     mock.side_effect = helpers.create_database_error()
     with self.assertRaises(DatabaseError):
         productlines.get_all()
示例#4
0
 def test_can_handle_empty_recordset(self, mock: MagicMock):
     mock.return_value.fetchall.return_value = []
     self.assertEqual([], productlines.get_all())
示例#5
0
 def test_assigns_correct_stop_date(self, mock):
     mock.return_value.fetchall.return_value = [create_productline_db_record()]
     record = productlines.get_all().pop()
     self.assertEqual(DATE_STOP, record.stop_on)
示例#6
0
 def test_assigns_correct_spatial_filter_id(self, mock):
     mock.return_value.fetchall.return_value = [create_productline_db_record()]
     record = productlines.get_all().pop()
     self.assertEqual('test-spatial-filter-id', record.spatial_filter_id)
示例#7
0
 def test_assigns_correct_owner(self, mock):
     mock.return_value.fetchall.return_value = [create_productline_db_record()]
     record = productlines.get_all().pop()
     self.assertEqual('test-productline-owner', record.owned_by)
示例#8
0
 def test_assigns_correct_name(self, mock):
     mock.return_value.fetchall.return_value = [create_productline_db_record()]
     record = productlines.get_all().pop()
     self.assertEqual('test-name', record.name)
示例#9
0
 def test_assigns_correct_max_cloud_cover(self, mock):
     mock.return_value.fetchall.return_value = [create_productline_db_record()]
     record = productlines.get_all().pop()
     self.assertEqual(42, record.max_cloud_cover)
示例#10
0
 def test_assigns_correct_created_on(self, mock):
     mock.return_value.fetchall.return_value = [create_productline_db_record()]
     record = productlines.get_all().pop()
     self.assertEqual(datetime.utcnow().date(), record.created_on.date())
示例#11
0
 def test_assigns_correct_bbox(self, mock):
     mock.return_value.fetchall.return_value = [create_productline_db_record()]
     record = productlines.get_all().pop()
     self.assertEqual({"type": "Polygon", "coordinates": [[[0, 0], [0, 30], [30, 30], [30, 0], [0, 0]]]},
                      record.bbox)
示例#12
0
 def test_assigns_correct_algorithm_name(self, mock):
     mock.return_value.fetchall.return_value = [create_productline_db_record()]
     records = productlines.get_all()
     self.assertEqual('test-algo-name', records[0].algorithm_name)
示例#13
0
 def test_returns_list_of_productlines(self, mock: MagicMock):
     mock.return_value.fetchall.return_value = [create_productline_db_record()]
     records = productlines.get_all()
     self.assertIsInstance(records, list)
     self.assertIsInstance(records[0], productlines.ProductLine)