Skip to content

Commit 32ecba7

Browse files
committed
Creating package document in admin
Package test updates
1 parent 5cc5713 commit 32ecba7

File tree

9 files changed

+193
-214
lines changed

9 files changed

+193
-214
lines changed

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
### Added
1717
- ORCID OpenID Connect login support with JWT token verification
1818
- `CORSFilter` response filter for cross-origin resource sharing on static assets
19-
- Cache invalidation (BAN requests) for agent and user account lookup queries
19+
- Cache invalidation (`BAN` requests) for agent and user account lookup queries
2020
- New `Application::normalizeOrigin` method for origin normalization
2121
- `ldh:parent-origin` XPath function for parent origin retrieval
2222
- HTTP tests for CORS functionality, internal IP blocking, and form proxying

http-tests/admin/packages/install-package-ontology.sh renamed to http-tests/admin/packages/install-package-document.sh

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,6 @@ purge_cache "$FRONTEND_VARNISH_SERVICE"
99

1010
# test package URI (SKOS package)
1111
package_uri="https://packages.linkeddatahub.com/skos/#this"
12-
package_ontology_uri="https://raw.githubusercontent.com/AtomGraph/LinkedDataHub-Apps/refs/heads/develop/packages/skos/ns.ttl#"
13-
namespace_ontology_uri="${END_USER_BASE_URL}ns#"
1412

1513
# install package
1614
install-package.sh \
@@ -20,15 +18,23 @@ install-package.sh \
2018
--package "$package_uri" \
2119
| grep -q "$STATUS_SEE_OTHER"
2220

23-
# verify owl:imports triple was added to namespace graph
24-
curl -k -s \
25-
-H "Accept: application/n-triples" \
26-
"${END_USER_BASE_URL}ns" \
27-
| grep -q "<${namespace_ontology_uri}> <http://www.w3.org/2002/07/owl#imports> <${package_ontology_uri}>"
28-
29-
# verify package ontology document was created (hash of package ontology URI)
30-
package_ontology_hash=$(echo -n "$package_ontology_uri" | shasum -a 1 | cut -d' ' -f1)
21+
# verify package document was created (hash of package URI)
22+
package_hash=$(echo -n "$package_uri" | shasum -a 1 | cut -d' ' -f1)
3123
curl -k -w "%{http_code}\n" -o /dev/null -s \
3224
-E "$OWNER_CERT_FILE":"$OWNER_CERT_PWD" \
33-
"${ADMIN_BASE_URL}ontologies/${package_ontology_hash}/" \
25+
"${ADMIN_BASE_URL}packages/${package_hash}/" \
3426
| grep -qE "^($STATUS_OK|$STATUS_NOT_MODIFIED)$"
27+
28+
# uninstall package
29+
uninstall-package.sh \
30+
-b "$END_USER_BASE_URL" \
31+
-f "$OWNER_CERT_FILE" \
32+
-p "$OWNER_CERT_PWD" \
33+
--package "$package_uri" \
34+
| grep -q "$STATUS_SEE_OTHER"
35+
36+
# verify package document was deleted
37+
#curl -k -w "%{http_code}\n" -o /dev/null -s \
38+
# -E "$OWNER_CERT_FILE":"$OWNER_CERT_PWD" \
39+
# "${ADMIN_BASE_URL}packages/${package_hash}/" \
40+
#| grep -q "$STATUS_FORBIDDEN"

http-tests/admin/packages/install-package-stylesheet.sh

Lines changed: 0 additions & 31 deletions
This file was deleted.

http-tests/admin/packages/install-uninstall-package-ontology.sh

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,12 @@ package_uri="https://packages.linkeddatahub.com/skos/#this"
1212
package_ontology_uri="https://raw.githubusercontent.com/AtomGraph/LinkedDataHub-Apps/refs/heads/develop/packages/skos/ns.ttl#"
1313
namespace_ontology_uri="${END_USER_BASE_URL}ns#"
1414

15+
# verify owl:imports triple does NOT exist before install
16+
if curl -k -s -H "Accept: application/n-triples" -E "$OWNER_CERT_FILE":"$OWNER_CERT_PWD" "${ADMIN_BASE_URL}ontologies/namespace/" \
17+
| grep -q "<${namespace_ontology_uri}> <http://www.w3.org/2002/07/owl#imports> <${package_ontology_uri}>"; then
18+
exit 1
19+
fi
20+
1521
# install package
1622
install-package.sh \
1723
-b "$END_USER_BASE_URL" \
@@ -20,10 +26,11 @@ install-package.sh \
2026
--package "$package_uri" \
2127
| grep -q "$STATUS_SEE_OTHER"
2228

23-
# verify owl:imports triple was added
29+
# verify owl:imports triple was added (check graph store directly, not cached endpoint)
2430
curl -k -s \
2531
-H "Accept: application/n-triples" \
26-
"${END_USER_BASE_URL}ns" \
32+
-E "$OWNER_CERT_FILE":"$OWNER_CERT_PWD" \
33+
"${ADMIN_BASE_URL}ontologies/namespace/" \
2734
| grep -q "<${namespace_ontology_uri}> <http://www.w3.org/2002/07/owl#imports> <${package_ontology_uri}>"
2835

2936
# verify package ontology document exists
@@ -41,8 +48,8 @@ uninstall-package.sh \
4148
--package "$package_uri" \
4249
| grep -q "$STATUS_SEE_OTHER"
4350

44-
# verify owl:imports triple was removed
45-
ns_after=$(curl -k -s -H "Accept: application/n-triples" "${END_USER_BASE_URL}ns")
51+
# verify owl:imports triple was removed (check graph store directly, not cached endpoint)
52+
ns_after=$(curl -k -s -H "Accept: application/n-triples" -E "$OWNER_CERT_FILE":"$OWNER_CERT_PWD" "${ADMIN_BASE_URL}ontologies/namespace/")
4653
if echo "$ns_after" | grep -q "<${namespace_ontology_uri}> <http://www.w3.org/2002/07/owl#imports> <${package_ontology_uri}>"; then
4754
exit 1
4855
fi

http-tests/admin/packages/install-uninstall-package-stylesheet.sh

Lines changed: 32 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -7,37 +7,57 @@ purge_cache "$END_USER_VARNISH_SERVICE"
77
purge_cache "$ADMIN_VARNISH_SERVICE"
88
purge_cache "$FRONTEND_VARNISH_SERVICE"
99

10+
# Clean up any leftover package stylesheet files from previous test runs
11+
docker compose exec -T linkeddatahub rm -rf /usr/local/tomcat/webapps/ROOT/static/com/linkeddatahub/packages/skos 2>/dev/null || true
12+
docker compose exec -T linkeddatahub sed -i '/linkeddatahub\/packages\/skos\/layout.xsl/d' /usr/local/tomcat/webapps/ROOT/static/xsl/layout.xsl 2>/dev/null || true
13+
14+
# Tomcat caches static files with default cacheTtl=5000ms (5 seconds)
15+
# See: https://tomcat.apache.org/tomcat-10.1-doc/config/resources.html#Attributes
16+
default_ttl=5
17+
1018
# test package URI (SKOS package)
1119
package_uri="https://packages.linkeddatahub.com/skos/#this"
1220

21+
# verify package stylesheet does NOT exist initially (should return 404)
22+
curl -k -w "%{http_code}\n" -o /dev/null -s \
23+
"${END_USER_BASE_URL}static/com/linkeddatahub/packages/skos/layout.xsl" \
24+
| grep -q "$STATUS_NOT_FOUND"
25+
26+
# verify master stylesheet does NOT include package initially
27+
if curl -k -s "${END_USER_BASE_URL}static/xsl/layout.xsl" | grep -q "com/linkeddatahub/packages/skos/layout.xsl"; then
28+
exit 1
29+
fi
30+
1331
# install package
1432
install-package.sh \
1533
-b "$END_USER_BASE_URL" \
1634
-f "$OWNER_CERT_FILE" \
1735
-p "$OWNER_CERT_PWD" \
18-
--package "$package_uri" \
19-
| grep -q "$STATUS_SEE_OTHER"
36+
--package "$package_uri"
37+
38+
# Wait for Tomcat's static resource cache to expire
39+
sleep $default_ttl
2040

2141
# verify package stylesheet was installed (should return 200)
22-
curl -k -f -s -o /dev/null \
23-
"${END_USER_BASE_URL}static/com/linkeddatahub/packages/skos/layout.xsl"
42+
install_status=$(curl -k -w "%{http_code}\n" -o /dev/null -s \
43+
"${END_USER_BASE_URL}static/com/linkeddatahub/packages/skos/layout.xsl")
44+
if [ "$install_status" != "200" ]; then
45+
exit 1
46+
fi
2447

2548
# verify master stylesheet includes package
26-
curl -k -s "${END_USER_BASE_URL}static/xsl/layout.xsl" \
27-
| grep -q "com/linkeddatahub/packages/skos/layout.xsl"
49+
if ! curl -k -s "${END_USER_BASE_URL}static/xsl/layout.xsl" | grep -q "com/linkeddatahub/packages/skos/layout.xsl"; then
50+
exit 1
51+
fi
2852

2953
# uninstall package
3054
uninstall-package.sh \
3155
-b "$END_USER_BASE_URL" \
3256
-f "$OWNER_CERT_FILE" \
3357
-p "$OWNER_CERT_PWD" \
34-
--package "$package_uri" \
35-
| grep -q "$STATUS_SEE_OTHER"
58+
--package "$package_uri"
3659

3760
# Wait for Tomcat's static resource cache to expire
38-
# Tomcat caches static files with default cacheTtl=5000ms (5 seconds)
39-
# See: https://tomcat.apache.org/tomcat-10.1-doc/config/resources.html#Attributes
40-
default_ttl=5
4161
sleep $default_ttl
4262

4363
# verify package stylesheet was deleted (should return 404)
@@ -46,7 +66,6 @@ curl -k -w "%{http_code}\n" -o /dev/null -s \
4666
| grep -q "$STATUS_NOT_FOUND"
4767

4868
# verify master stylesheet no longer includes package
49-
master_xsl=$(curl -k -s "${END_USER_BASE_URL}static/xsl/layout.xsl")
50-
if echo "$master_xsl" | grep -q "com/linkeddatahub/packages/skos/layout.xsl"; then
69+
if curl -k -s "${END_USER_BASE_URL}static/xsl/layout.xsl" | grep -q "com/linkeddatahub/packages/skos/layout.xsl"; then
5170
exit 1
5271
fi

http-tests/admin/packages/uninstall-package-ontology.sh

Lines changed: 0 additions & 46 deletions
This file was deleted.

http-tests/admin/packages/uninstall-package-stylesheet.sh

Lines changed: 0 additions & 48 deletions
This file was deleted.

0 commit comments

Comments
 (0)