|
11 | 11 | _get_content_variants, |
12 | 12 | BadArgumentException, |
13 | 13 | ) |
14 | | -from databusclient.cli import parse_distribution_str |
15 | | - |
16 | | -EXAMPLE_URL = "https://raw.githubusercontent.com/dbpedia/databus/608482875276ef5df00f2360a2f81005e62b58bd/server/app/api/swagger.yml" |
17 | 14 |
|
18 | 15 |
|
19 | | -def test_parse_distribution_str(): |
20 | | - """Test the new pipe-separated distribution string parser""" |
21 | | - |
22 | | - # Test with multiple content variants |
23 | | - result = parse_distribution_str("http://example.com/data|lang=en|type=full|sorted=true|.ttl|.gz") |
24 | | - assert result["url"] == "http://example.com/data" |
25 | | - assert result["variants"] == {"lang": "en", "type": "full", "sorted": "true"} |
26 | | - assert result["formatExtension"] == "ttl" |
27 | | - assert result["compression"] == "gz" |
28 | | - |
29 | | - # Test with single content variant |
30 | | - result = parse_distribution_str("http://mysite.com/data.json|lang=fr|.json") |
31 | | - assert result["url"] == "http://mysite.com/data.json" |
32 | | - assert result["variants"] == {"lang": "fr"} |
33 | | - assert result["formatExtension"] == "json" |
34 | | - assert result["compression"] is None |
35 | | - |
36 | | - # Test URL only |
37 | | - result = parse_distribution_str("http://example.com/file.csv") |
38 | | - assert result["url"] == "http://example.com/file.csv" |
39 | | - assert result["variants"] == {} |
40 | | - assert result["formatExtension"] is None |
41 | | - assert result["compression"] is None |
42 | | - |
43 | | - # Test with compression only (no format extension) |
44 | | - result = parse_distribution_str("http://example.com/data|.gz") |
45 | | - assert result["url"] == "http://example.com/data" |
46 | | - assert result["compression"] == "gz" |
| 16 | +EXAMPLE_URL = "https://raw.githubusercontent.com/dbpedia/databus/608482875276ef5df00f2360a2f81005e62b58bd/server/app/api/swagger.yml" |
47 | 17 |
|
48 | 18 |
|
49 | 19 | def test_get_content_variants(): |
|
0 commit comments