def test_bounding_box_invalid_set(self): query = GranuleQuery() with self.assertRaises(ValueError): query.bounding_box(1, 2, 3, "invalid")
def test_empty_platform(self): query = GranuleQuery() with self.assertRaises(ValueError): query.platform(None)
def test_empty_granule_ur(self): query = GranuleQuery() with self.assertRaises(ValueError): query.granule_ur(None)
def test_invalid_parameters(self): query = GranuleQuery() with self.assertRaises(ValueError): query.parameters(fake=123) query.parameters(point=(-100, "badvalue"))
def test_entry_title_set(self): query = GranuleQuery() query.entry_title("DatasetId 5") self.assertIn(self.entry_id, query.params) self.assertEqual(query.params[self.entry_id], "DatasetId%205")
def test_invalid_spatial_state(self): query = GranuleQuery() query.point(1, 2) self.assertFalse(query._valid_state()) query.polygon([(1, 1), (2, 1), (2, 2), (1, 1)]) self.assertFalse(query._valid_state()) query.bounding_box(1, 1, 2, 2) self.assertFalse(query._valid_state()) query.line([(1, 1), (2, 2)]) self.assertFalse(query._valid_state())
def test_invalid_mode(self): query = GranuleQuery() with self.assertRaises(ValueError): query.mode(None)
def test_day_night_flag_invalid_type_set(self): query = GranuleQuery() with self.assertRaises(TypeError): query.day_night_flag(True) self.assertNotIn(self.day_night_flag, query.params)
def test_cloud_cover_max_only(self): query = GranuleQuery() query.cloud_cover("", 120) self.assertIn(self.cloud_cover, query.params) self.assertEqual(query.params[self.cloud_cover], ",120")
def test_day_night_flag_unspecified_set(self): query = GranuleQuery() query.day_night_flag('unspecified') self.assertIn(self.day_night_flag, query.params) self.assertEqual(query.params[self.day_night_flag], 'unspecified')
def test_day_night_flag_invalid_set(self): query = GranuleQuery() with self.assertRaises(ValueError): query.day_night_flag('invaliddaynight') self.assertNotIn(self.day_night_flag, query.params)
def test_day_night_flag_night_set(self): query = GranuleQuery() query.day_night_flag('night') self.assertIn(self.day_night_flag, query.params) self.assertEqual(query.params[self.day_night_flag], 'night')
def test_orbit_number_encode(self): query = GranuleQuery() query.orbit_number("985", "986") self.assertIn(self.orbit_number, query.params) self.assertEqual(query.params[self.orbit_number], "985%2C986")
def test_orbit_number_set(self): query = GranuleQuery() query.orbit_number(985) self.assertIn(self.orbit_number, query.params) self.assertEqual(query.params[self.orbit_number], 985)
def test_bounding_box_set(self): query = GranuleQuery() query.bounding_box(1, 2, 3, 4) self.assertEqual(query.params["bounding_box"], "1.0,2.0,3.0,4.0")
def test_cloud_cover_all(self): query = GranuleQuery() query.cloud_cover(-70, 120) self.assertIn(self.cloud_cover, query.params) self.assertEqual(query.params[self.cloud_cover], "-70,120")
def test_version(self): query = GranuleQuery() query.version(self.version_val) self.assertIn(self.version, query.params) self.assertEqual(query.params[self.version], self.version_val)
def test_cloud_cover_none(self): query = GranuleQuery() query.cloud_cover() self.assertIn(self.cloud_cover, query.params) self.assertEqual(query.params[self.cloud_cover], "0,100")
def test_valid_spatial_state(self): query = GranuleQuery() query.point(1, 2).short_name("test") self.assertTrue(query._valid_state())
def test_short_name(self): query = GranuleQuery() query.short_name(self.short_name_val) self.assertIn(self.short_name, query.params) self.assertEqual(query.params[self.short_name], self.short_name_val)
def test_invalid_mode_constructor(self): with self.assertRaises(ValueError): query = GranuleQuery(None)
def test_empty_instrument(self): query = GranuleQuery() with self.assertRaises(ValueError): query.instrument(None)
def test_point_invalid_set(self): query = GranuleQuery() with self.assertRaises(ValueError): query.point("invalid", 15.1) query.point(10, None)
def test_downloadable_invalid(self): query = GranuleQuery() with self.assertRaises(TypeError): query.downloadable("Invalid Type") self.assertNotIn(self.downloadable, query.params)