Skip to content

client: support post queries and declared result members#803

Merged
berezovskyi merged 3 commits into
mainfrom
client/oslc-query-post
Jun 14, 2026
Merged

client: support post queries and declared result members#803
berezovskyi merged 3 commits into
mainfrom
client/oslc-query-post

Conversation

@berezovskyi

@berezovskyi berezovskyi commented Jun 14, 2026

Copy link
Copy Markdown
Member
  • Adds support for POST method in OSLC Queries
  • Adds support for LDP-container specified membership predicates for OSLC Queries.
  • Fixes the query total count parsing

@berezovskyi berezovskyi requested a review from Copilot June 14, 2026 14:14
@coderabbitai

coderabbitai Bot commented Jun 14, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Warning

Review limit reached

@berezovskyi, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 58 minutes and 27 seconds. Learn how PR review limits work.

Your organization has used up its prepaid credits, and credit purchases are no longer available. Enable the review add-on in the billing tab to keep reviews running — you're only billed for reviews past your plan's rate limits ($0.25/file).

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 31155cb3-9305-451b-bdc4-3ffed40e877c

📥 Commits

Reviewing files that changed from the base of the PR and between 63fd7f3 and 50e6908.

📒 Files selected for processing (5)
  • CHANGELOG.md
  • OSLC4Net_SDK/OSLC4Net.Client/Oslc/Resources/OslcQuery.cs
  • OSLC4Net_SDK/OSLC4Net.Client/Oslc/Resources/OslcQueryResult.cs
  • OSLC4Net_SDK/Tests/OSLC4Net.Client.Tests/OslcQueryResultTests.cs
  • OSLC4Net_SDK/Tests/OSLC4Net.Client.Tests/OslcQueryTests.cs
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch client/oslc-query-post

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-code-quality

Copy link
Copy Markdown
Contributor

Code Coverage Overview

Languages: C#

C# / dotnet/cobertura

The overall coverage in the branch is 56%. The coverage in the branch is 55%.

Show a code coverage summary of the most impacted files.
File 63fd7f3 50e6908 +/-
/home/runner/wo...c/OslcClient.cs 38% 39% +1%
/home/runner/wo...cQueryResult.cs 73% 77% +4%
/home/runner/wo...es/OslcQuery.cs 49% 79% +30%
/home/runner/wo...ryParameters.cs 0% 48% +48%

Code Coverage is in Public Preview. Learn more and provide us with your feedback.

@codecov

codecov Bot commented Jun 14, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 51.87%. Comparing base (63fd7f3) to head (50e6908).

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #803      +/-   ##
==========================================
+ Coverage   51.26%   51.87%   +0.60%     
==========================================
  Files         174      174              
  Lines       10281    10337      +56     
  Branches     1057     1067      +10     
==========================================
+ Hits         5271     5362      +91     
+ Misses       4750     4720      -30     
+ Partials      260      255       -5     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR extends the OSLC client query support by adding HTTP POST-based query submission and improving how query results detect membership predicates (including LDP containers and explicitly declared member relations), with corresponding tests and changelog entries.

Changes:

  • Add OslcQuery.SubmitPost() to submit OSLC query parameters via application/x-www-form-urlencoded POST.
  • Improve OslcQueryResult membership detection (explicit member relation, LDP hasMemberRelation/membershipResource, and ldp:contains) and totalCount parsing from RDF literals.
  • Add/extend client tests covering POST body encoding and membership predicate resolution behavior.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
OSLC4Net_SDK/Tests/OSLC4Net.Client.Tests/OslcQueryTests.cs New tests covering member relation validation and POST form body encoding (no double-encoding).
OSLC4Net_SDK/Tests/OSLC4Net.Client.Tests/OslcQueryResultTests.cs Expanded tests for explicit membership predicates, LDP container behavior, and literal totalCount parsing.
OSLC4Net_SDK/OSLC4Net.Client/Oslc/Resources/OslcQueryResult.cs Update membership predicate resolution logic and parse totalCount from ILiteralNode.
OSLC4Net_SDK/OSLC4Net.Client/Oslc/Resources/OslcQuery.cs Add explicit member-relation support and implement POST submission path.
CHANGELOG.md Document new POST query support and query result membership/totalCount fixes.

Comment thread OSLC4Net_SDK/OSLC4Net.Client/Oslc/Resources/OslcQuery.cs
Comment thread OSLC4Net_SDK/OSLC4Net.Client/Oslc/Resources/OslcQuery.cs
@berezovskyi berezovskyi added this pull request to the merge queue Jun 14, 2026
Merged via the queue into main with commit a5faf11 Jun 14, 2026
14 checks passed
@berezovskyi berezovskyi deleted the client/oslc-query-post branch June 14, 2026 14:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants