From 1bd10e345f09bef9eb95c7e11a66167d58e06aa3 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 8 Apr 2026 22:40:29 +0000
Subject: [PATCH 01/20] codegen metadata
---
.stats.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.stats.yml b/.stats.yml
index 2b609bf..52b3bad 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 117
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-d40c57a05527faf060d21c0e013729f371d88017b10680cea7c8fd6780ffaef5.yml
openapi_spec_hash: 597ebc460cf86740b9f6f7c95478dece
-config_hash: 8521caa746275ca99eb3ba7bb3d6d90f
+config_hash: 2026e2ae4b125f8b5a3c461bc321fc19
From ccfd9fe6156f7bd755747e77d707c148c7ffc7d6 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 8 Apr 2026 22:41:21 +0000
Subject: [PATCH 02/20] codegen metadata
---
.stats.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.stats.yml b/.stats.yml
index 52b3bad..db87955 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 117
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-d40c57a05527faf060d21c0e013729f371d88017b10680cea7c8fd6780ffaef5.yml
openapi_spec_hash: 597ebc460cf86740b9f6f7c95478dece
-config_hash: 2026e2ae4b125f8b5a3c461bc321fc19
+config_hash: 30ce23c9cfbf8fb8be9e5dd28a2124fa
From a0d91be71965c2b1d5be3a095ec3db721cae5d72 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 8 Apr 2026 22:55:32 +0000
Subject: [PATCH 03/20] codegen metadata
---
.stats.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.stats.yml b/.stats.yml
index db87955..d8c6752 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 117
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-d40c57a05527faf060d21c0e013729f371d88017b10680cea7c8fd6780ffaef5.yml
openapi_spec_hash: 597ebc460cf86740b9f6f7c95478dece
-config_hash: 30ce23c9cfbf8fb8be9e5dd28a2124fa
+config_hash: e48b11ffdd2d30680081d5436848066d
From c30ce6b3cca7dc93cf5c857df01de4f3cfec5819 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 8 Apr 2026 22:55:58 +0000
Subject: [PATCH 04/20] codegen metadata
---
.stats.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.stats.yml b/.stats.yml
index d8c6752..69e18b5 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 117
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-d40c57a05527faf060d21c0e013729f371d88017b10680cea7c8fd6780ffaef5.yml
openapi_spec_hash: 597ebc460cf86740b9f6f7c95478dece
-config_hash: e48b11ffdd2d30680081d5436848066d
+config_hash: 8cbd97884d5d3c1bbff50ac0a9a19595
From f5c7285a1fc689779dfee4c7e2357d7439496af5 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 8 Apr 2026 22:56:24 +0000
Subject: [PATCH 05/20] codegen metadata
---
.stats.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.stats.yml b/.stats.yml
index 69e18b5..d8c6752 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 117
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-d40c57a05527faf060d21c0e013729f371d88017b10680cea7c8fd6780ffaef5.yml
openapi_spec_hash: 597ebc460cf86740b9f6f7c95478dece
-config_hash: 8cbd97884d5d3c1bbff50ac0a9a19595
+config_hash: e48b11ffdd2d30680081d5436848066d
From 99d68c6681a6bbc7603c57bf529f0ce1bcfaee85 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 8 Apr 2026 22:56:43 +0000
Subject: [PATCH 06/20] codegen metadata
---
.stats.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.stats.yml b/.stats.yml
index d8c6752..69e18b5 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 117
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-d40c57a05527faf060d21c0e013729f371d88017b10680cea7c8fd6780ffaef5.yml
openapi_spec_hash: 597ebc460cf86740b9f6f7c95478dece
-config_hash: e48b11ffdd2d30680081d5436848066d
+config_hash: 8cbd97884d5d3c1bbff50ac0a9a19595
From 59fdc1115b7af343d66258f7ca6c8443ea182870 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 8 Apr 2026 23:01:02 +0000
Subject: [PATCH 07/20] codegen metadata
---
.stats.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.stats.yml b/.stats.yml
index 69e18b5..d8c6752 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 117
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-d40c57a05527faf060d21c0e013729f371d88017b10680cea7c8fd6780ffaef5.yml
openapi_spec_hash: 597ebc460cf86740b9f6f7c95478dece
-config_hash: 8cbd97884d5d3c1bbff50ac0a9a19595
+config_hash: e48b11ffdd2d30680081d5436848066d
From 5000bc965aa7184aaabaeec001679bd7b37f5b88 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 8 Apr 2026 23:17:06 +0000
Subject: [PATCH 08/20] feat(api): api update
---
.github/workflows/publish-nuget.yml | 33 --------------
.release-please-manifest.json | 3 --
.stats.yml | 2 +-
README.md | 7 ++-
release-please-config.json | 71 -----------------------------
src/Directory.Build.props | 2 +-
6 files changed, 5 insertions(+), 113 deletions(-)
delete mode 100644 .github/workflows/publish-nuget.yml
delete mode 100644 .release-please-manifest.json
delete mode 100644 release-please-config.json
diff --git a/.github/workflows/publish-nuget.yml b/.github/workflows/publish-nuget.yml
deleted file mode 100644
index 3a66636..0000000
--- a/.github/workflows/publish-nuget.yml
+++ /dev/null
@@ -1,33 +0,0 @@
-# This workflow is triggered when a GitHub release is created.
-# It can also be run manually to re-publish to NuGet in case it failed for some reason.
-# You can run this workflow by navigating to https://www.github.com/Xquik-dev/x-twitter-scraper-csharp/actions/workflows/publish-nuget.yml
-name: Publish to NuGet
-on:
- workflow_dispatch:
- release:
- types: [published]
-jobs:
- publish:
- name: publish
- runs-on: ubuntu-latest
-
- steps:
- - uses: actions/checkout@v6
-
- - name: Set up .NET
- uses: actions/setup-dotnet@v5
- with:
- dotnet-version: '8.0.x'
-
- - name: Build and pack
- run: dotnet pack
- --configuration Release
- --output "${{github.workspace}}/artifacts/packages"
-
- - name: Publish package to nuget.org
- run: dotnet nuget push
- $(find ${{ github.workspace }}/artifacts/packages/*.nupkg ! -name "*.symbols.nupkg")
- --source https://api.nuget.org/v3/index.json
- --api-key $NUGET_API_KEY
- env:
- NUGET_API_KEY: ${{ secrets.X_TWITTER_SCRAPER_NUGET_API_KEY || secrets.NUGET_API_KEY }}
\ No newline at end of file
diff --git a/.release-please-manifest.json b/.release-please-manifest.json
deleted file mode 100644
index 6b7b74c..0000000
--- a/.release-please-manifest.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- ".": "0.3.0"
-}
\ No newline at end of file
diff --git a/.stats.yml b/.stats.yml
index d8c6752..34bb698 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 117
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-d40c57a05527faf060d21c0e013729f371d88017b10680cea7c8fd6780ffaef5.yml
openapi_spec_hash: 597ebc460cf86740b9f6f7c95478dece
-config_hash: e48b11ffdd2d30680081d5436848066d
+config_hash: 911c2f86777f1fa01b0b28ff75adf849
diff --git a/README.md b/README.md
index 7fc38bd..d4cf019 100644
--- a/README.md
+++ b/README.md
@@ -8,10 +8,9 @@ The REST API documentation can be found on [xquik.com](https://xquik.com).
## Installation
-Install the package from [NuGet](https://www.nuget.org/packages/XTwitterScraper):
-
```bash
-dotnet add package XTwitterScraper
+git clone git@github.com:stainless-sdks/x-twitter-scraper-csharp.git
+dotnet add reference x-twitter-scraper-csharp/src/XTwitterScraper
```
## Requirements
@@ -421,4 +420,4 @@ This package generally follows [SemVer](https://semver.org/spec/v2.0.0.html) con
We take backwards-compatibility seriously and work hard to ensure you can rely on a smooth upgrade experience.
-We are keen for your feedback; please open an [issue](https://www.github.com/Xquik-dev/x-twitter-scraper-csharp/issues) with questions, bugs, or suggestions.
+We are keen for your feedback; please open an [issue](https://www.github.com/stainless-sdks/x-twitter-scraper-csharp/issues) with questions, bugs, or suggestions.
diff --git a/release-please-config.json b/release-please-config.json
deleted file mode 100644
index 5975961..0000000
--- a/release-please-config.json
+++ /dev/null
@@ -1,71 +0,0 @@
-{
- "packages": {
- ".": {}
- },
- "$schema": "https://raw.githubusercontent.com/stainless-api/release-please/main/schemas/config.json",
- "include-v-in-tag": true,
- "include-component-in-tag": false,
- "versioning": "prerelease",
- "prerelease": true,
- "bump-minor-pre-major": true,
- "bump-patch-for-minor-pre-major": false,
- "pull-request-header": "Automated Release PR",
- "pull-request-title-pattern": "release: ${version}",
- "changelog-sections": [
- {
- "type": "feat",
- "section": "Features"
- },
- {
- "type": "fix",
- "section": "Bug Fixes"
- },
- {
- "type": "perf",
- "section": "Performance Improvements"
- },
- {
- "type": "revert",
- "section": "Reverts"
- },
- {
- "type": "chore",
- "section": "Chores"
- },
- {
- "type": "docs",
- "section": "Documentation"
- },
- {
- "type": "style",
- "section": "Styles"
- },
- {
- "type": "refactor",
- "section": "Refactors"
- },
- {
- "type": "test",
- "section": "Tests",
- "hidden": true
- },
- {
- "type": "build",
- "section": "Build System"
- },
- {
- "type": "ci",
- "section": "Continuous Integration",
- "hidden": true
- }
- ],
- "release-type": "simple",
- "extra-files": [
- {
- "type": "xml",
- "path": "**/*.csproj",
- "xpath": "//Project/PropertyGroup/VersionPrefix",
- "glob": true
- }
- ]
-}
\ No newline at end of file
diff --git a/src/Directory.Build.props b/src/Directory.Build.props
index 59f53f9..4e43247 100644
--- a/src/Directory.Build.props
+++ b/src/Directory.Build.props
@@ -6,7 +6,7 @@
Apache-2.0
Copyright 2026 X Twitter Scraper
https://xquik.com
- https://www.github.com/Xquik-dev/x-twitter-scraper-csharp
+ https://www.github.com/stainless-sdks/x-twitter-scraper-csharp
git
From fd6e5257dbee0f99d779b1825f9eb210d4aa24bd Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 8 Apr 2026 23:19:47 +0000
Subject: [PATCH 09/20] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 34bb698..98ae7d4 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 117
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-d40c57a05527faf060d21c0e013729f371d88017b10680cea7c8fd6780ffaef5.yml
-openapi_spec_hash: 597ebc460cf86740b9f6f7c95478dece
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-edf9cb05ab01ab106416d0c9cf8e32d93c7edd4fe189c3b1691f1020eede9cb7.yml
+openapi_spec_hash: 4a82ca40c21a87280b7308fa8b45fcb5
config_hash: 911c2f86777f1fa01b0b28ff75adf849
From 3a5a9e7d951ad61707709a91bffee20594eb58e9 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 9 Apr 2026 09:10:04 +0000
Subject: [PATCH 10/20] feat(api): api update
---
.stats.yml | 2 +-
src/XTwitterScraper.Tests/Models/PaginatedTweetsTest.cs | 1 -
src/XTwitterScraper.Tests/Models/PaginatedUsersTest.cs | 1 -
.../Models/{X/Tweets => }/SearchTweetTest.cs | 4 ++--
.../Models/{X/Users => }/UserProfileTest.cs | 4 ++--
src/XTwitterScraper/Models/PaginatedTweets.cs | 1 -
src/XTwitterScraper/Models/PaginatedUsers.cs | 1 -
src/XTwitterScraper/Models/{X/Tweets => }/SearchTweet.cs | 2 +-
src/XTwitterScraper/Models/{X/Users => }/UserProfile.cs | 2 +-
9 files changed, 7 insertions(+), 11 deletions(-)
rename src/XTwitterScraper.Tests/Models/{X/Tweets => }/SearchTweetTest.cs (96%)
rename src/XTwitterScraper.Tests/Models/{X/Users => }/UserProfileTest.cs (96%)
rename src/XTwitterScraper/Models/{X/Tweets => }/SearchTweet.cs (95%)
rename src/XTwitterScraper/Models/{X/Users => }/UserProfile.cs (94%)
diff --git a/.stats.yml b/.stats.yml
index 98ae7d4..df7e6af 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 117
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-edf9cb05ab01ab106416d0c9cf8e32d93c7edd4fe189c3b1691f1020eede9cb7.yml
openapi_spec_hash: 4a82ca40c21a87280b7308fa8b45fcb5
-config_hash: 911c2f86777f1fa01b0b28ff75adf849
+config_hash: 858d125643c0fca8bbbce07d3a2ce4b5
diff --git a/src/XTwitterScraper.Tests/Models/PaginatedTweetsTest.cs b/src/XTwitterScraper.Tests/Models/PaginatedTweetsTest.cs
index 894f60a..6a2dce8 100644
--- a/src/XTwitterScraper.Tests/Models/PaginatedTweetsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/PaginatedTweetsTest.cs
@@ -2,7 +2,6 @@
using System.Text.Json;
using XTwitterScraper.Core;
using XTwitterScraper.Models;
-using XTwitterScraper.Models.X.Tweets;
namespace XTwitterScraper.Tests.Models;
diff --git a/src/XTwitterScraper.Tests/Models/PaginatedUsersTest.cs b/src/XTwitterScraper.Tests/Models/PaginatedUsersTest.cs
index dc67e0c..fee4f3f 100644
--- a/src/XTwitterScraper.Tests/Models/PaginatedUsersTest.cs
+++ b/src/XTwitterScraper.Tests/Models/PaginatedUsersTest.cs
@@ -2,7 +2,6 @@
using System.Text.Json;
using XTwitterScraper.Core;
using XTwitterScraper.Models;
-using XTwitterScraper.Models.X.Users;
namespace XTwitterScraper.Tests.Models;
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/SearchTweetTest.cs b/src/XTwitterScraper.Tests/Models/SearchTweetTest.cs
similarity index 96%
rename from src/XTwitterScraper.Tests/Models/X/Tweets/SearchTweetTest.cs
rename to src/XTwitterScraper.Tests/Models/SearchTweetTest.cs
index 8564d62..fdbf535 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/SearchTweetTest.cs
+++ b/src/XTwitterScraper.Tests/Models/SearchTweetTest.cs
@@ -1,8 +1,8 @@
using System.Text.Json;
using XTwitterScraper.Core;
-using XTwitterScraper.Models.X.Tweets;
+using XTwitterScraper.Models;
-namespace XTwitterScraper.Tests.Models.X.Tweets;
+namespace XTwitterScraper.Tests.Models;
public class SearchTweetTest : TestBase
{
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserProfileTest.cs b/src/XTwitterScraper.Tests/Models/UserProfileTest.cs
similarity index 96%
rename from src/XTwitterScraper.Tests/Models/X/Users/UserProfileTest.cs
rename to src/XTwitterScraper.Tests/Models/UserProfileTest.cs
index 4997e8c..dfae9e5 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserProfileTest.cs
+++ b/src/XTwitterScraper.Tests/Models/UserProfileTest.cs
@@ -1,8 +1,8 @@
using System.Text.Json;
using XTwitterScraper.Core;
-using XTwitterScraper.Models.X.Users;
+using XTwitterScraper.Models;
-namespace XTwitterScraper.Tests.Models.X.Users;
+namespace XTwitterScraper.Tests.Models;
public class UserProfileTest : TestBase
{
diff --git a/src/XTwitterScraper/Models/PaginatedTweets.cs b/src/XTwitterScraper/Models/PaginatedTweets.cs
index 6430f8e..e80e879 100644
--- a/src/XTwitterScraper/Models/PaginatedTweets.cs
+++ b/src/XTwitterScraper/Models/PaginatedTweets.cs
@@ -5,7 +5,6 @@
using System.Text.Json;
using System.Text.Json.Serialization;
using XTwitterScraper.Core;
-using XTwitterScraper.Models.X.Tweets;
namespace XTwitterScraper.Models;
diff --git a/src/XTwitterScraper/Models/PaginatedUsers.cs b/src/XTwitterScraper/Models/PaginatedUsers.cs
index cc48a07..ae840e8 100644
--- a/src/XTwitterScraper/Models/PaginatedUsers.cs
+++ b/src/XTwitterScraper/Models/PaginatedUsers.cs
@@ -5,7 +5,6 @@
using System.Text.Json;
using System.Text.Json.Serialization;
using XTwitterScraper.Core;
-using XTwitterScraper.Models.X.Users;
namespace XTwitterScraper.Models;
diff --git a/src/XTwitterScraper/Models/X/Tweets/SearchTweet.cs b/src/XTwitterScraper/Models/SearchTweet.cs
similarity index 95%
rename from src/XTwitterScraper/Models/X/Tweets/SearchTweet.cs
rename to src/XTwitterScraper/Models/SearchTweet.cs
index ff98ace..94ad547 100644
--- a/src/XTwitterScraper/Models/X/Tweets/SearchTweet.cs
+++ b/src/XTwitterScraper/Models/SearchTweet.cs
@@ -5,7 +5,7 @@
using System.Text.Json.Serialization;
using XTwitterScraper.Core;
-namespace XTwitterScraper.Models.X.Tweets;
+namespace XTwitterScraper.Models;
///
/// Tweet returned from search results with inline author info.
diff --git a/src/XTwitterScraper/Models/X/Users/UserProfile.cs b/src/XTwitterScraper/Models/UserProfile.cs
similarity index 94%
rename from src/XTwitterScraper/Models/X/Users/UserProfile.cs
rename to src/XTwitterScraper/Models/UserProfile.cs
index 9b387eb..6d531c9 100644
--- a/src/XTwitterScraper/Models/X/Users/UserProfile.cs
+++ b/src/XTwitterScraper/Models/UserProfile.cs
@@ -5,7 +5,7 @@
using System.Text.Json.Serialization;
using XTwitterScraper.Core;
-namespace XTwitterScraper.Models.X.Users;
+namespace XTwitterScraper.Models;
///
/// X user profile with bio, follower counts, and verification status.
From 8d823689cec9b413e618c9bfdc5a7d4b837b21b4 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 9 Apr 2026 20:49:44 +0000
Subject: [PATCH 11/20] feat(api): api update
---
.stats.yml | 4 +-
README.md | 6 +-
.../Account/AccountSetXUsernameParamsTest.cs | 2 +-
.../Account/AccountUpdateLocaleParamsTest.cs | 2 +-
.../Models/ApiKeys/ApiKeyCreateParamsTest.cs | 2 +-
.../Models/ApiKeys/ApiKeyRevokeParamsTest.cs | 2 +-
.../Models/Compose/ComposeCreateParamsTest.cs | 2 +-
.../Credits/CreditTopupBalanceParamsTest.cs | 2 +-
.../Models/Drafts/DraftCreateParamsTest.cs | 2 +-
.../Models/Drafts/DraftDeleteParamsTest.cs | 2 +-
.../Models/Drafts/DraftListParamsTest.cs | 2 +-
.../Models/Drafts/DraftRetrieveParamsTest.cs | 2 +-
.../Models/Draws/DrawExportParamsTest.cs | 2 +-
.../Models/Draws/DrawListParamsTest.cs | 2 +-
.../Models/Draws/DrawRetrieveParamsTest.cs | 2 +-
.../Models/Draws/DrawRunParamsTest.cs | 2 +-
.../Models/Events/EventListParamsTest.cs | 2 +-
.../Models/Events/EventRetrieveParamsTest.cs | 2 +-
.../ExtractionEstimateCostParamsTest.cs | 2 +-
.../ExtractionExportResultsParamsTest.cs | 2 +-
.../Extractions/ExtractionListParamsTest.cs | 2 +-
.../ExtractionRetrieveParamsTest.cs | 2 +-
.../Extractions/ExtractionRunParamsTest.cs | 2 +-
.../IntegrationCreateParamsTest.cs | 2 +-
.../IntegrationDeleteParamsTest.cs | 2 +-
.../IntegrationListDeliveriesParamsTest.cs | 2 +-
.../IntegrationRetrieveParamsTest.cs | 2 +-
.../IntegrationSendTestParamsTest.cs | 2 +-
.../IntegrationUpdateParamsTest.cs | 2 +-
.../Monitors/MonitorCreateParamsTest.cs | 2 +-
.../Monitors/MonitorDeactivateParamsTest.cs | 2 +-
.../Monitors/MonitorRetrieveParamsTest.cs | 2 +-
.../Monitors/MonitorUpdateParamsTest.cs | 2 +-
.../RadarRetrieveTrendingTopicsParamsTest.cs | 2 +-
.../Models/Styles/StyleAnalyzeParamsTest.cs | 2 +-
.../Models/Styles/StyleCompareParamsTest.cs | 2 +-
.../Models/Styles/StyleDeleteParamsTest.cs | 2 +-
.../Styles/StyleGetPerformanceParamsTest.cs | 2 +-
.../Models/Styles/StyleRetrieveParamsTest.cs | 2 +-
.../Models/Styles/StyleUpdateParamsTest.cs | 2 +-
.../Support/Tickets/TicketCreateParamsTest.cs | 2 +-
.../Support/Tickets/TicketReplyParamsTest.cs | 2 +-
.../Tickets/TicketRetrieveParamsTest.cs | 2 +-
.../Support/Tickets/TicketUpdateParamsTest.cs | 2 +-
.../Models/Trends/TrendListParamsTest.cs | 2 +-
.../Webhooks/WebhookCreateParamsTest.cs | 2 +-
.../Webhooks/WebhookDeactivateParamsTest.cs | 2 +-
.../WebhookListDeliveriesParamsTest.cs | 2 +-
.../Models/Webhooks/WebhookTestParamsTest.cs | 2 +-
.../Webhooks/WebhookUpdateParamsTest.cs | 2 +-
.../X/Accounts/AccountCreateParamsTest.cs | 2 +-
.../X/Accounts/AccountDeleteParamsTest.cs | 2 +-
.../X/Accounts/AccountReauthParamsTest.cs | 2 +-
.../X/Accounts/AccountRetrieveParamsTest.cs | 2 +-
.../X/Bookmarks/BookmarkListParamsTest.cs | 2 +-
.../Communities/CommunityCreateParamsTest.cs | 2 +-
.../Communities/CommunityDeleteParamsTest.cs | 2 +-
.../CommunityRetrieveInfoParamsTest.cs | 2 +-
.../CommunityRetrieveMembersParamsTest.cs | 2 +-
.../CommunityRetrieveModeratorsParamsTest.cs | 2 +-
.../CommunityRetrieveSearchParamsTest.cs | 2 +-
.../Communities/Join/JoinCreateParamsTest.cs | 2 +-
.../Join/JoinDeleteAllParamsTest.cs | 2 +-
.../Tweets/TweetListByCommunityParamsTest.cs | 2 +-
.../Communities/Tweets/TweetListParamsTest.cs | 2 +-
.../X/Dm/DmRetrieveHistoryParamsTest.cs | 2 +-
.../Models/X/Dm/DmSendParamsTest.cs | 2 +-
.../X/Followers/FollowerCheckParamsTest.cs | 2 +-
.../Lists/ListRetrieveFollowersParamsTest.cs | 2 +-
.../X/Lists/ListRetrieveMembersParamsTest.cs | 2 +-
.../X/Lists/ListRetrieveTweetsParamsTest.cs | 2 +-
.../Models/X/Media/MediaDownloadParamsTest.cs | 2 +-
.../Models/X/Media/MediaUploadParamsTest.cs | 2 +-
.../Profile/ProfileUpdateAvatarParamsTest.cs | 2 +-
.../Profile/ProfileUpdateBannerParamsTest.cs | 2 +-
.../X/Profile/ProfileUpdateParamsTest.cs | 2 +-
.../X/Tweets/Like/LikeCreateParamsTest.cs | 2 +-
.../X/Tweets/Like/LikeDeleteParamsTest.cs | 2 +-
.../Tweets/Retweet/RetweetCreateParamsTest.cs | 2 +-
.../Tweets/Retweet/RetweetDeleteParamsTest.cs | 2 +-
.../Models/X/Tweets/TweetCreateParamsTest.cs | 2 +-
.../Models/X/Tweets/TweetDeleteParamsTest.cs | 2 +-
.../X/Tweets/TweetGetFavoritersParamsTest.cs | 2 +-
.../X/Tweets/TweetGetQuotesParamsTest.cs | 2 +-
.../X/Tweets/TweetGetRepliesParamsTest.cs | 2 +-
.../X/Tweets/TweetGetRetweetersParamsTest.cs | 2 +-
.../X/Tweets/TweetGetThreadParamsTest.cs | 2 +-
.../Models/X/Tweets/TweetListParamsTest.cs | 2 +-
.../X/Tweets/TweetRetrieveParamsTest.cs | 2 +-
.../Models/X/Tweets/TweetSearchParamsTest.cs | 2 +-
.../X/Users/Follow/FollowCreateParamsTest.cs | 2 +-
.../Users/Follow/FollowDeleteAllParamsTest.cs | 2 +-
.../X/Users/UserRetrieveBatchParamsTest.cs | 2 +-
.../Users/UserRetrieveFollowersParamsTest.cs | 2 +-
.../UserRetrieveFollowersYouKnowParamsTest.cs | 2 +-
.../Users/UserRetrieveFollowingParamsTest.cs | 2 +-
.../X/Users/UserRetrieveLikesParamsTest.cs | 2 +-
.../X/Users/UserRetrieveMediaParamsTest.cs | 2 +-
.../X/Users/UserRetrieveMentionsParamsTest.cs | 2 +-
.../Models/X/Users/UserRetrieveParamsTest.cs | 2 +-
.../X/Users/UserRetrieveSearchParamsTest.cs | 2 +-
.../X/Users/UserRetrieveTweetsParamsTest.cs | 2 +-
...UserRetrieveVerifiedFollowersParamsTest.cs | 2 +-
.../Models/X/XGetArticleParamsTest.cs | 2 +-
.../Models/X/XGetHomeTimelineParamsTest.cs | 2 +-
.../Models/X/XGetNotificationsParamsTest.cs | 2 +-
.../Models/X/XGetTrendsParamsTest.cs | 65 +++++++++++++++++++
src/XTwitterScraper.Tests/TestBase.cs | 1 -
src/XTwitterScraper/Core/ParamsBase.cs | 12 ++--
src/XTwitterScraper/Core/SecurityOptions.cs | 14 ----
.../Models/Account/AccountRetrieveParams.cs | 4 +-
.../Account/AccountSetXUsernameParams.cs | 4 +-
.../Account/AccountUpdateLocaleParams.cs | 4 +-
.../Models/ApiKeys/ApiKeyCreateParams.cs | 4 +-
.../Models/ApiKeys/ApiKeyListParams.cs | 4 +-
.../Models/ApiKeys/ApiKeyRevokeParams.cs | 4 +-
.../Models/Compose/ComposeCreateParams.cs | 4 +-
.../Credits/CreditRetrieveBalanceParams.cs | 4 +-
.../Credits/CreditTopupBalanceParams.cs | 4 +-
.../Models/Drafts/DraftCreateParams.cs | 4 +-
.../Models/Drafts/DraftDeleteParams.cs | 4 +-
.../Models/Drafts/DraftListParams.cs | 4 +-
.../Models/Drafts/DraftRetrieveParams.cs | 4 +-
.../Models/Draws/DrawExportParams.cs | 4 +-
.../Models/Draws/DrawListParams.cs | 4 +-
.../Models/Draws/DrawRetrieveParams.cs | 4 +-
.../Models/Draws/DrawRunParams.cs | 4 +-
.../Models/Events/EventListParams.cs | 4 +-
.../Models/Events/EventRetrieveParams.cs | 4 +-
.../ExtractionEstimateCostParams.cs | 4 +-
.../ExtractionExportResultsParams.cs | 4 +-
.../Extractions/ExtractionListParams.cs | 4 +-
.../Extractions/ExtractionRetrieveParams.cs | 4 +-
.../Models/Extractions/ExtractionRunParams.cs | 4 +-
.../Integrations/IntegrationCreateParams.cs | 4 +-
.../Integrations/IntegrationDeleteParams.cs | 4 +-
.../IntegrationListDeliveriesParams.cs | 4 +-
.../Integrations/IntegrationListParams.cs | 4 +-
.../Integrations/IntegrationRetrieveParams.cs | 4 +-
.../Integrations/IntegrationSendTestParams.cs | 4 +-
.../Integrations/IntegrationUpdateParams.cs | 4 +-
.../Models/Monitors/MonitorCreateParams.cs | 4 +-
.../Monitors/MonitorDeactivateParams.cs | 4 +-
.../Models/Monitors/MonitorListParams.cs | 4 +-
.../Models/Monitors/MonitorRetrieveParams.cs | 4 +-
.../Models/Monitors/MonitorUpdateParams.cs | 4 +-
.../RadarRetrieveTrendingTopicsParams.cs | 4 +-
.../Models/Styles/StyleAnalyzeParams.cs | 4 +-
.../Models/Styles/StyleCompareParams.cs | 4 +-
.../Models/Styles/StyleDeleteParams.cs | 4 +-
.../Styles/StyleGetPerformanceParams.cs | 4 +-
.../Models/Styles/StyleListParams.cs | 4 +-
.../Models/Styles/StyleRetrieveParams.cs | 4 +-
.../Models/Styles/StyleUpdateParams.cs | 4 +-
.../Models/Subscribe/SubscribeCreateParams.cs | 4 +-
.../Support/Tickets/TicketCreateParams.cs | 4 +-
.../Support/Tickets/TicketListParams.cs | 4 +-
.../Support/Tickets/TicketReplyParams.cs | 4 +-
.../Support/Tickets/TicketRetrieveParams.cs | 4 +-
.../Support/Tickets/TicketUpdateParams.cs | 4 +-
.../Models/Trends/TrendListParams.cs | 4 +-
.../Models/Webhooks/WebhookCreateParams.cs | 4 +-
.../Webhooks/WebhookDeactivateParams.cs | 4 +-
.../Webhooks/WebhookListDeliveriesParams.cs | 4 +-
.../Models/Webhooks/WebhookListParams.cs | 4 +-
.../Models/Webhooks/WebhookTestParams.cs | 4 +-
.../Models/Webhooks/WebhookUpdateParams.cs | 4 +-
.../X/Accounts/AccountBulkRetryParams.cs | 4 +-
.../Models/X/Accounts/AccountCreateParams.cs | 4 +-
.../Models/X/Accounts/AccountDeleteParams.cs | 4 +-
.../Models/X/Accounts/AccountListParams.cs | 4 +-
.../Models/X/Accounts/AccountReauthParams.cs | 4 +-
.../X/Accounts/AccountRetrieveParams.cs | 4 +-
.../Models/X/Bookmarks/BookmarkListParams.cs | 4 +-
.../BookmarkRetrieveFoldersParams.cs | 4 +-
.../X/Communities/CommunityCreateParams.cs | 4 +-
.../X/Communities/CommunityDeleteParams.cs | 4 +-
.../CommunityRetrieveInfoParams.cs | 4 +-
.../CommunityRetrieveMembersParams.cs | 4 +-
.../CommunityRetrieveModeratorsParams.cs | 4 +-
.../CommunityRetrieveSearchParams.cs | 4 +-
.../X/Communities/Join/JoinCreateParams.cs | 4 +-
.../X/Communities/Join/JoinDeleteAllParams.cs | 4 +-
.../Tweets/TweetListByCommunityParams.cs | 4 +-
.../X/Communities/Tweets/TweetListParams.cs | 4 +-
.../Models/X/Dm/DmRetrieveHistoryParams.cs | 4 +-
.../Models/X/Dm/DmSendParams.cs | 4 +-
.../Models/X/Followers/FollowerCheckParams.cs | 4 +-
.../X/Lists/ListRetrieveFollowersParams.cs | 4 +-
.../X/Lists/ListRetrieveMembersParams.cs | 4 +-
.../X/Lists/ListRetrieveTweetsParams.cs | 4 +-
.../Models/X/Media/MediaDownloadParams.cs | 4 +-
.../Models/X/Media/MediaUploadParams.cs | 4 +-
.../X/Profile/ProfileUpdateAvatarParams.cs | 4 +-
.../X/Profile/ProfileUpdateBannerParams.cs | 4 +-
.../Models/X/Profile/ProfileUpdateParams.cs | 4 +-
.../Models/X/Tweets/Like/LikeCreateParams.cs | 4 +-
.../Models/X/Tweets/Like/LikeDeleteParams.cs | 4 +-
.../X/Tweets/Retweet/RetweetCreateParams.cs | 4 +-
.../X/Tweets/Retweet/RetweetDeleteParams.cs | 4 +-
.../Models/X/Tweets/TweetCreateParams.cs | 4 +-
.../Models/X/Tweets/TweetDeleteParams.cs | 4 +-
.../X/Tweets/TweetGetFavoritersParams.cs | 4 +-
.../Models/X/Tweets/TweetGetQuotesParams.cs | 4 +-
.../Models/X/Tweets/TweetGetRepliesParams.cs | 4 +-
.../X/Tweets/TweetGetRetweetersParams.cs | 4 +-
.../Models/X/Tweets/TweetGetThreadParams.cs | 4 +-
.../Models/X/Tweets/TweetListParams.cs | 4 +-
.../Models/X/Tweets/TweetRetrieveParams.cs | 4 +-
.../Models/X/Tweets/TweetSearchParams.cs | 4 +-
.../X/Users/Follow/FollowCreateParams.cs | 4 +-
.../X/Users/Follow/FollowDeleteAllParams.cs | 4 +-
.../Models/X/Users/UserRetrieveBatchParams.cs | 4 +-
.../X/Users/UserRetrieveFollowersParams.cs | 4 +-
.../UserRetrieveFollowersYouKnowParams.cs | 4 +-
.../X/Users/UserRetrieveFollowingParams.cs | 4 +-
.../Models/X/Users/UserRetrieveLikesParams.cs | 4 +-
.../Models/X/Users/UserRetrieveMediaParams.cs | 4 +-
.../X/Users/UserRetrieveMentionsParams.cs | 4 +-
.../Models/X/Users/UserRetrieveParams.cs | 4 +-
.../X/Users/UserRetrieveSearchParams.cs | 4 +-
.../X/Users/UserRetrieveTweetsParams.cs | 4 +-
.../UserRetrieveVerifiedFollowersParams.cs | 4 +-
.../Models/X/XGetArticleParams.cs | 4 +-
.../Models/X/XGetHomeTimelineParams.cs | 4 +-
.../Models/X/XGetNotificationsParams.cs | 4 +-
.../Models/X/XGetTrendsParams.cs | 46 ++++++++++++-
227 files changed, 452 insertions(+), 368 deletions(-)
delete mode 100644 src/XTwitterScraper/Core/SecurityOptions.cs
diff --git a/.stats.yml b/.stats.yml
index df7e6af..6990cbd 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 117
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-edf9cb05ab01ab106416d0c9cf8e32d93c7edd4fe189c3b1691f1020eede9cb7.yml
-openapi_spec_hash: 4a82ca40c21a87280b7308fa8b45fcb5
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-2858bb9108d72cf365d38f4c26ea2a4e623e2966d289aa4780e001444947e715.yml
+openapi_spec_hash: e12a914dd897caf78790dfe9de61215f
config_hash: 858d125643c0fca8bbbce07d3a2ce4b5
diff --git a/README.md b/README.md
index d4cf019..c603506 100644
--- a/README.md
+++ b/README.md
@@ -55,11 +55,7 @@ Or manually:
```csharp
using XTwitterScraper;
-XTwitterScraperClient client = new()
-{
- ApiKey = "My API Key",
- BearerToken = "My Bearer Token",
-};
+XTwitterScraperClient client = new() { ApiKey = "My API Key" };
```
Or using a combination of the two approaches.
diff --git a/src/XTwitterScraper.Tests/Models/Account/AccountSetXUsernameParamsTest.cs b/src/XTwitterScraper.Tests/Models/Account/AccountSetXUsernameParamsTest.cs
index 7fc063e..82c0cb0 100644
--- a/src/XTwitterScraper.Tests/Models/Account/AccountSetXUsernameParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Account/AccountSetXUsernameParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
AccountSetXUsernameParams parameters = new() { Username = "elonmusk" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/account/x-identity"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Account/AccountUpdateLocaleParamsTest.cs b/src/XTwitterScraper.Tests/Models/Account/AccountUpdateLocaleParamsTest.cs
index 663d533..4ea0d7d 100644
--- a/src/XTwitterScraper.Tests/Models/Account/AccountUpdateLocaleParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Account/AccountUpdateLocaleParamsTest.cs
@@ -23,7 +23,7 @@ public void Url_Works()
{
AccountUpdateLocaleParams parameters = new() { Locale = Locale.En };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/account"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/ApiKeys/ApiKeyCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/ApiKeys/ApiKeyCreateParamsTest.cs
index 5709428..9601c48 100644
--- a/src/XTwitterScraper.Tests/Models/ApiKeys/ApiKeyCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/ApiKeys/ApiKeyCreateParamsTest.cs
@@ -42,7 +42,7 @@ public void Url_Works()
{
ApiKeyCreateParams parameters = new();
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/api-keys"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/ApiKeys/ApiKeyRevokeParamsTest.cs b/src/XTwitterScraper.Tests/Models/ApiKeys/ApiKeyRevokeParamsTest.cs
index 998c809..84917c3 100644
--- a/src/XTwitterScraper.Tests/Models/ApiKeys/ApiKeyRevokeParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/ApiKeys/ApiKeyRevokeParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
ApiKeyRevokeParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/api-keys/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Compose/ComposeCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Compose/ComposeCreateParamsTest.cs
index 1206caa..e3abded 100644
--- a/src/XTwitterScraper.Tests/Models/Compose/ComposeCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Compose/ComposeCreateParamsTest.cs
@@ -125,7 +125,7 @@ public void Url_Works()
{
ComposeCreateParams parameters = new() { Step = Step.Compose };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/compose"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Credits/CreditTopupBalanceParamsTest.cs b/src/XTwitterScraper.Tests/Models/Credits/CreditTopupBalanceParamsTest.cs
index d005298..9dcd9b5 100644
--- a/src/XTwitterScraper.Tests/Models/Credits/CreditTopupBalanceParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Credits/CreditTopupBalanceParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
CreditTopupBalanceParams parameters = new() { Amount = 10000 };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/credits/topup"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Drafts/DraftCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Drafts/DraftCreateParamsTest.cs
index 24d887b..c7d0055 100644
--- a/src/XTwitterScraper.Tests/Models/Drafts/DraftCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Drafts/DraftCreateParamsTest.cs
@@ -61,7 +61,7 @@ public void Url_Works()
{
DraftCreateParams parameters = new() { Text = "AI is the future of productivity" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/drafts"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Drafts/DraftDeleteParamsTest.cs b/src/XTwitterScraper.Tests/Models/Drafts/DraftDeleteParamsTest.cs
index ab28490..cdd2233 100644
--- a/src/XTwitterScraper.Tests/Models/Drafts/DraftDeleteParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Drafts/DraftDeleteParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
DraftDeleteParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/drafts/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Drafts/DraftListParamsTest.cs b/src/XTwitterScraper.Tests/Models/Drafts/DraftListParamsTest.cs
index 64b4203..a23d65b 100644
--- a/src/XTwitterScraper.Tests/Models/Drafts/DraftListParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Drafts/DraftListParamsTest.cs
@@ -49,7 +49,7 @@ public void Url_Works()
{
DraftListParams parameters = new() { AfterCursor = "afterCursor", Limit = 1 };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri("https://xquik.com/api/v1/drafts?afterCursor=afterCursor&limit=1"),
diff --git a/src/XTwitterScraper.Tests/Models/Drafts/DraftRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/Drafts/DraftRetrieveParamsTest.cs
index 8748778..22a054c 100644
--- a/src/XTwitterScraper.Tests/Models/Drafts/DraftRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Drafts/DraftRetrieveParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
DraftRetrieveParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/drafts/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Draws/DrawExportParamsTest.cs b/src/XTwitterScraper.Tests/Models/Draws/DrawExportParamsTest.cs
index 14ec725..2fd76d9 100644
--- a/src/XTwitterScraper.Tests/Models/Draws/DrawExportParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Draws/DrawExportParamsTest.cs
@@ -66,7 +66,7 @@ public void Url_Works()
Type = Draws::Type.Winners,
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri("https://xquik.com/api/v1/draws/id/export?format=csv&type=winners"),
diff --git a/src/XTwitterScraper.Tests/Models/Draws/DrawListParamsTest.cs b/src/XTwitterScraper.Tests/Models/Draws/DrawListParamsTest.cs
index 7abc3e7..137cae5 100644
--- a/src/XTwitterScraper.Tests/Models/Draws/DrawListParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Draws/DrawListParamsTest.cs
@@ -49,7 +49,7 @@ public void Url_Works()
{
DrawListParams parameters = new() { After = "after", Limit = 1 };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/draws?after=after&limit=1"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Draws/DrawRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/Draws/DrawRetrieveParamsTest.cs
index 26e5726..6291af2 100644
--- a/src/XTwitterScraper.Tests/Models/Draws/DrawRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Draws/DrawRetrieveParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
DrawRetrieveParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/draws/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Draws/DrawRunParamsTest.cs b/src/XTwitterScraper.Tests/Models/Draws/DrawRunParamsTest.cs
index 62ab929..dfd435c 100644
--- a/src/XTwitterScraper.Tests/Models/Draws/DrawRunParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Draws/DrawRunParamsTest.cs
@@ -149,7 +149,7 @@ public void Url_Works()
{
DrawRunParams parameters = new() { TweetUrl = "https://x.com/elonmusk/status/1234567890" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/draws"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Events/EventListParamsTest.cs b/src/XTwitterScraper.Tests/Models/Events/EventListParamsTest.cs
index 5ee8da8..cdc3bda 100644
--- a/src/XTwitterScraper.Tests/Models/Events/EventListParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Events/EventListParamsTest.cs
@@ -77,7 +77,7 @@ public void Url_Works()
MonitorID = "monitorId",
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri(
diff --git a/src/XTwitterScraper.Tests/Models/Events/EventRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/Events/EventRetrieveParamsTest.cs
index 1326fc4..4452d22 100644
--- a/src/XTwitterScraper.Tests/Models/Events/EventRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Events/EventRetrieveParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
EventRetrieveParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/events/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionEstimateCostParamsTest.cs b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionEstimateCostParamsTest.cs
index 8bbe929..5bd66f2 100644
--- a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionEstimateCostParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionEstimateCostParamsTest.cs
@@ -124,7 +124,7 @@ public void Url_Works()
ToolType = ExtractionEstimateCostParamsToolType.FollowerExplorer,
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/extractions/estimate"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionExportResultsParamsTest.cs b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionExportResultsParamsTest.cs
index fe791ff..af02b2f 100644
--- a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionExportResultsParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionExportResultsParamsTest.cs
@@ -49,7 +49,7 @@ public void Url_Works()
{
ExtractionExportResultsParams parameters = new() { ID = "id", Format = Format.Csv };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/extractions/id/export?format=csv"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionListParamsTest.cs b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionListParamsTest.cs
index 08e5625..e61148a 100644
--- a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionListParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionListParamsTest.cs
@@ -78,7 +78,7 @@ public void Url_Works()
ToolType = ToolType.FollowerExplorer,
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri(
diff --git a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionRetrieveParamsTest.cs
index 4a4ac46..7a178b7 100644
--- a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionRetrieveParamsTest.cs
@@ -63,7 +63,7 @@ public void Url_Works()
Limit = 1,
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/extractions/id?after=after&limit=1"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionRunParamsTest.cs b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionRunParamsTest.cs
index cdb7c55..8247883 100644
--- a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionRunParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionRunParamsTest.cs
@@ -124,7 +124,7 @@ public void Url_Works()
ToolType = ExtractionRunParamsToolType.FollowerExplorer,
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/extractions"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationCreateParamsTest.cs
index 00a4214..af0dc62 100644
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationCreateParamsTest.cs
@@ -49,7 +49,7 @@ public void Url_Works()
Type = JsonSerializer.SerializeToElement("telegram"),
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/integrations"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeleteParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeleteParamsTest.cs
index b9806db..e4eb8d0 100644
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeleteParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeleteParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
IntegrationDeleteParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/integrations/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListDeliveriesParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListDeliveriesParamsTest.cs
index 46d1dbc..83cb968 100644
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListDeliveriesParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListDeliveriesParamsTest.cs
@@ -46,7 +46,7 @@ public void Url_Works()
{
IntegrationListDeliveriesParams parameters = new() { ID = "id", Limit = 1 };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/integrations/id/deliveries?limit=1"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationRetrieveParamsTest.cs
index e787121..6efe6a2 100644
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationRetrieveParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
IntegrationRetrieveParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/integrations/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationSendTestParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationSendTestParamsTest.cs
index fb74f30..3649bc6 100644
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationSendTestParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationSendTestParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
IntegrationSendTestParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/integrations/id/test"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationUpdateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationUpdateParamsTest.cs
index e36b86d..36853e4 100644
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationUpdateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationUpdateParamsTest.cs
@@ -121,7 +121,7 @@ public void Url_Works()
{
IntegrationUpdateParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/integrations/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Monitors/MonitorCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Monitors/MonitorCreateParamsTest.cs
index be279b7..d204b28 100644
--- a/src/XTwitterScraper.Tests/Models/Monitors/MonitorCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Monitors/MonitorCreateParamsTest.cs
@@ -41,7 +41,7 @@ public void Url_Works()
Username = "elonmusk",
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/monitors"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Monitors/MonitorDeactivateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Monitors/MonitorDeactivateParamsTest.cs
index fe73faf..b6f9763 100644
--- a/src/XTwitterScraper.Tests/Models/Monitors/MonitorDeactivateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Monitors/MonitorDeactivateParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
MonitorDeactivateParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/monitors/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Monitors/MonitorRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/Monitors/MonitorRetrieveParamsTest.cs
index e7427ad..3b67b0a 100644
--- a/src/XTwitterScraper.Tests/Models/Monitors/MonitorRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Monitors/MonitorRetrieveParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
MonitorRetrieveParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/monitors/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Monitors/MonitorUpdateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Monitors/MonitorUpdateParamsTest.cs
index 1c5899a..16edc7d 100644
--- a/src/XTwitterScraper.Tests/Models/Monitors/MonitorUpdateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Monitors/MonitorUpdateParamsTest.cs
@@ -66,7 +66,7 @@ public void Url_Works()
{
MonitorUpdateParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/monitors/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Radar/RadarRetrieveTrendingTopicsParamsTest.cs b/src/XTwitterScraper.Tests/Models/Radar/RadarRetrieveTrendingTopicsParamsTest.cs
index a95c62a..faed6b9 100644
--- a/src/XTwitterScraper.Tests/Models/Radar/RadarRetrieveTrendingTopicsParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Radar/RadarRetrieveTrendingTopicsParamsTest.cs
@@ -87,7 +87,7 @@ public void Url_Works()
Source = Source.GitHub,
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri(
diff --git a/src/XTwitterScraper.Tests/Models/Styles/StyleAnalyzeParamsTest.cs b/src/XTwitterScraper.Tests/Models/Styles/StyleAnalyzeParamsTest.cs
index e747ae6..9f2f9c5 100644
--- a/src/XTwitterScraper.Tests/Models/Styles/StyleAnalyzeParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Styles/StyleAnalyzeParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
StyleAnalyzeParams parameters = new() { Username = "elonmusk" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/styles"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Styles/StyleCompareParamsTest.cs b/src/XTwitterScraper.Tests/Models/Styles/StyleCompareParamsTest.cs
index 43fd3f6..6ad9b77 100644
--- a/src/XTwitterScraper.Tests/Models/Styles/StyleCompareParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Styles/StyleCompareParamsTest.cs
@@ -26,7 +26,7 @@ public void Url_Works()
{
StyleCompareParams parameters = new() { Username1 = "username1", Username2 = "username2" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri(
diff --git a/src/XTwitterScraper.Tests/Models/Styles/StyleDeleteParamsTest.cs b/src/XTwitterScraper.Tests/Models/Styles/StyleDeleteParamsTest.cs
index 59371a8..a8f9068 100644
--- a/src/XTwitterScraper.Tests/Models/Styles/StyleDeleteParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Styles/StyleDeleteParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
StyleDeleteParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/styles/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Styles/StyleGetPerformanceParamsTest.cs b/src/XTwitterScraper.Tests/Models/Styles/StyleGetPerformanceParamsTest.cs
index f3dd7ef..cc79e2e 100644
--- a/src/XTwitterScraper.Tests/Models/Styles/StyleGetPerformanceParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Styles/StyleGetPerformanceParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
StyleGetPerformanceParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/styles/id/performance"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Styles/StyleRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/Styles/StyleRetrieveParamsTest.cs
index 94f4a1e..a833894 100644
--- a/src/XTwitterScraper.Tests/Models/Styles/StyleRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Styles/StyleRetrieveParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
StyleRetrieveParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/styles/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Styles/StyleUpdateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Styles/StyleUpdateParamsTest.cs
index c5abd9b..a3b1b40 100644
--- a/src/XTwitterScraper.Tests/Models/Styles/StyleUpdateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Styles/StyleUpdateParamsTest.cs
@@ -41,7 +41,7 @@ public void Url_Works()
Tweets = [new("Excited to share our latest research findings.")],
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/styles/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketCreateParamsTest.cs
index 79e4979..4e436ea 100644
--- a/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketCreateParamsTest.cs
@@ -30,7 +30,7 @@ public void Url_Works()
Subject = "Cannot connect X account",
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/support/tickets"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketReplyParamsTest.cs b/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketReplyParamsTest.cs
index 0573b69..b72d63d 100644
--- a/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketReplyParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketReplyParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
{
TicketReplyParams parameters = new() { ID = "id", Body = "Thank you for the update." };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/support/tickets/id/messages"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketRetrieveParamsTest.cs
index ce8f3ec..1e9797f 100644
--- a/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketRetrieveParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
TicketRetrieveParams parameters = new() { ID = "messages_value" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/support/tickets/messages_value"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketUpdateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketUpdateParamsTest.cs
index 08007c8..1e13cc5 100644
--- a/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketUpdateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketUpdateParamsTest.cs
@@ -25,7 +25,7 @@ public void Url_Works()
{
TicketUpdateParams parameters = new() { ID = "id", Status = Status.Resolved };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/support/tickets/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Trends/TrendListParamsTest.cs b/src/XTwitterScraper.Tests/Models/Trends/TrendListParamsTest.cs
index 9bfa9c0..346994f 100644
--- a/src/XTwitterScraper.Tests/Models/Trends/TrendListParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Trends/TrendListParamsTest.cs
@@ -49,7 +49,7 @@ public void Url_Works()
{
TrendListParams parameters = new() { Count = 1, Woeid = 0 };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/trends?count=1&woeid=0"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookCreateParamsTest.cs
index 119130a..1e02190 100644
--- a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookCreateParamsTest.cs
@@ -41,7 +41,7 @@ public void Url_Works()
UrlValue = "https://example.com/webhook",
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/webhooks"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookDeactivateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookDeactivateParamsTest.cs
index ceb6a81..7136053 100644
--- a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookDeactivateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookDeactivateParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
WebhookDeactivateParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/webhooks/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookListDeliveriesParamsTest.cs b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookListDeliveriesParamsTest.cs
index f0d0ecd..ca62eff 100644
--- a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookListDeliveriesParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookListDeliveriesParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
WebhookListDeliveriesParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/webhooks/id/deliveries"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookTestParamsTest.cs b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookTestParamsTest.cs
index 242ec6f..080ba5b 100644
--- a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookTestParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookTestParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
WebhookTestParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/webhooks/id/test"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookUpdateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookUpdateParamsTest.cs
index 6d60546..62b9f74 100644
--- a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookUpdateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookUpdateParamsTest.cs
@@ -74,7 +74,7 @@ public void Url_Works()
{
WebhookUpdateParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/webhooks/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Accounts/AccountCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Accounts/AccountCreateParamsTest.cs
index 0b9e48d..b6dd670 100644
--- a/src/XTwitterScraper.Tests/Models/X/Accounts/AccountCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Accounts/AccountCreateParamsTest.cs
@@ -76,7 +76,7 @@ public void Url_Works()
Username = "elonmusk",
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/accounts"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Accounts/AccountDeleteParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Accounts/AccountDeleteParamsTest.cs
index 1df3f2d..9209ea2 100644
--- a/src/XTwitterScraper.Tests/Models/X/Accounts/AccountDeleteParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Accounts/AccountDeleteParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
AccountDeleteParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/accounts/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Accounts/AccountReauthParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Accounts/AccountReauthParamsTest.cs
index f03a8ce..39fdda4 100644
--- a/src/XTwitterScraper.Tests/Models/X/Accounts/AccountReauthParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Accounts/AccountReauthParamsTest.cs
@@ -54,7 +54,7 @@ public void Url_Works()
{
AccountReauthParams parameters = new() { ID = "id", Password = "password_value" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/accounts/id/reauth"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Accounts/AccountRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Accounts/AccountRetrieveParamsTest.cs
index 81a3379..a97c028 100644
--- a/src/XTwitterScraper.Tests/Models/X/Accounts/AccountRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Accounts/AccountRetrieveParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
AccountRetrieveParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/accounts/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Bookmarks/BookmarkListParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Bookmarks/BookmarkListParamsTest.cs
index 2e4cbbe..16df7df 100644
--- a/src/XTwitterScraper.Tests/Models/X/Bookmarks/BookmarkListParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Bookmarks/BookmarkListParamsTest.cs
@@ -49,7 +49,7 @@ public void Url_Works()
{
BookmarkListParams parameters = new() { Cursor = "folders_value", FolderID = "folderId" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri("https://xquik.com/api/v1/x/bookmarks?cursor=folders_value&folderId=folderId"),
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityCreateParamsTest.cs
index fc66a84..bfdbb5b 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityCreateParamsTest.cs
@@ -54,7 +54,7 @@ public void Url_Works()
{
CommunityCreateParams parameters = new() { Account = "@elonmusk", Name = "Example Name" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/communities"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityDeleteParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityDeleteParamsTest.cs
index 1e2b861..7045b19 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityDeleteParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityDeleteParamsTest.cs
@@ -34,7 +34,7 @@ public void Url_Works()
CommunityName = "Tesla Fans",
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/communities/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveInfoParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveInfoParamsTest.cs
index 7137578..7e227e0 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveInfoParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveInfoParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
CommunityRetrieveInfoParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/communities/id/info"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveMembersParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveMembersParamsTest.cs
index 898d777..9009f71 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveMembersParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveMembersParamsTest.cs
@@ -46,7 +46,7 @@ public void Url_Works()
{
CommunityRetrieveMembersParams parameters = new() { ID = "id", Cursor = "cursor" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri("https://xquik.com/api/v1/x/communities/id/members?cursor=cursor"),
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveModeratorsParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveModeratorsParamsTest.cs
index 09b6fdb..ab4036c 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveModeratorsParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveModeratorsParamsTest.cs
@@ -46,7 +46,7 @@ public void Url_Works()
{
CommunityRetrieveModeratorsParams parameters = new() { ID = "id", Cursor = "cursor" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri("https://xquik.com/api/v1/x/communities/id/moderators?cursor=cursor"),
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveSearchParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveSearchParamsTest.cs
index f93afd7..8da0ea4 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveSearchParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveSearchParamsTest.cs
@@ -63,7 +63,7 @@ public void Url_Works()
QueryType = "queryType",
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri(
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/Join/JoinCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/Join/JoinCreateParamsTest.cs
index ac9981e..f4f7150 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/Join/JoinCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/Join/JoinCreateParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
{
JoinCreateParams parameters = new() { ID = "id", Account = "@elonmusk" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/communities/id/join"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/Join/JoinDeleteAllParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/Join/JoinDeleteAllParamsTest.cs
index a4eb82e..09839ad 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/Join/JoinDeleteAllParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/Join/JoinDeleteAllParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
{
JoinDeleteAllParams parameters = new() { ID = "id", Account = "@elonmusk" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/communities/id/join"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/Tweets/TweetListByCommunityParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/Tweets/TweetListByCommunityParamsTest.cs
index 4a7c4c6..67eafc1 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/Tweets/TweetListByCommunityParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/Tweets/TweetListByCommunityParamsTest.cs
@@ -46,7 +46,7 @@ public void Url_Works()
{
TweetListByCommunityParams parameters = new() { ID = "id", Cursor = "cursor" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri("https://xquik.com/api/v1/x/communities/id/tweets?cursor=cursor"),
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/Tweets/TweetListParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/Tweets/TweetListParamsTest.cs
index b220145..db678fe 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/Tweets/TweetListParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/Tweets/TweetListParamsTest.cs
@@ -63,7 +63,7 @@ public void Url_Works()
QueryType = "queryType",
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri(
diff --git a/src/XTwitterScraper.Tests/Models/X/Dm/DmRetrieveHistoryParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Dm/DmRetrieveHistoryParamsTest.cs
index 7972665..df528e3 100644
--- a/src/XTwitterScraper.Tests/Models/X/Dm/DmRetrieveHistoryParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Dm/DmRetrieveHistoryParamsTest.cs
@@ -63,7 +63,7 @@ public void Url_Works()
MaxID = "maxId",
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri("https://xquik.com/api/v1/x/dm/userId/history?cursor=cursor&maxId=maxId"),
diff --git a/src/XTwitterScraper.Tests/Models/X/Dm/DmSendParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Dm/DmSendParamsTest.cs
index 37910f2..2e24d1e 100644
--- a/src/XTwitterScraper.Tests/Models/X/Dm/DmSendParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Dm/DmSendParamsTest.cs
@@ -82,7 +82,7 @@ public void Url_Works()
Text = "Example text content",
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/dm/userId"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Followers/FollowerCheckParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Followers/FollowerCheckParamsTest.cs
index 569526b..5f4bb72 100644
--- a/src/XTwitterScraper.Tests/Models/X/Followers/FollowerCheckParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Followers/FollowerCheckParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
{
FollowerCheckParams parameters = new() { Source = "source", Target = "target" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri("https://xquik.com/api/v1/x/followers/check?source=source&target=target"),
diff --git a/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveFollowersParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveFollowersParamsTest.cs
index 65b1ba6..8bbf47e 100644
--- a/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveFollowersParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveFollowersParamsTest.cs
@@ -46,7 +46,7 @@ public void Url_Works()
{
ListRetrieveFollowersParams parameters = new() { ID = "id", Cursor = "cursor" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/lists/id/followers?cursor=cursor"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveMembersParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveMembersParamsTest.cs
index 1b6b802..4de2a36 100644
--- a/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveMembersParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveMembersParamsTest.cs
@@ -46,7 +46,7 @@ public void Url_Works()
{
ListRetrieveMembersParams parameters = new() { ID = "id", Cursor = "cursor" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/lists/id/members?cursor=cursor"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveTweetsParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveTweetsParamsTest.cs
index bd8aa19..483eba4 100644
--- a/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveTweetsParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveTweetsParamsTest.cs
@@ -81,7 +81,7 @@ public void Url_Works()
UntilTime = "untilTime",
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri(
diff --git a/src/XTwitterScraper.Tests/Models/X/Media/MediaDownloadParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Media/MediaDownloadParamsTest.cs
index 6c2e097..3412f8f 100644
--- a/src/XTwitterScraper.Tests/Models/X/Media/MediaDownloadParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Media/MediaDownloadParamsTest.cs
@@ -59,7 +59,7 @@ public void Url_Works()
{
MediaDownloadParams parameters = new();
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/media/download"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Media/MediaUploadParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Media/MediaUploadParamsTest.cs
index 6315dc4..3949998 100644
--- a/src/XTwitterScraper.Tests/Models/X/Media/MediaUploadParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Media/MediaUploadParamsTest.cs
@@ -66,7 +66,7 @@ public void Url_Works()
File = Encoding.UTF8.GetBytes("Example data"),
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/media"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateAvatarParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateAvatarParamsTest.cs
index 524b9b8..3b4fbd2 100644
--- a/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateAvatarParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateAvatarParamsTest.cs
@@ -30,7 +30,7 @@ public void Url_Works()
File = Encoding.UTF8.GetBytes("Example data"),
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/profile/avatar"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateBannerParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateBannerParamsTest.cs
index d17d042..ad80cd0 100644
--- a/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateBannerParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateBannerParamsTest.cs
@@ -30,7 +30,7 @@ public void Url_Works()
File = Encoding.UTF8.GetBytes("Example data"),
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/profile/banner"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateParamsTest.cs
index eddb54d..f26537c 100644
--- a/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateParamsTest.cs
@@ -74,7 +74,7 @@ public void Url_Works()
{
ProfileUpdateParams parameters = new() { Account = "@elonmusk" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/profile"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/Like/LikeCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/Like/LikeCreateParamsTest.cs
index 3c77082..f1a8668 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/Like/LikeCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/Like/LikeCreateParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
{
LikeCreateParams parameters = new() { ID = "id", Account = "@elonmusk" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id/like"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/Like/LikeDeleteParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/Like/LikeDeleteParamsTest.cs
index cac5e24..6c26f92 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/Like/LikeDeleteParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/Like/LikeDeleteParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
{
LikeDeleteParams parameters = new() { ID = "id", Account = "@elonmusk" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id/like"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/Retweet/RetweetCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/Retweet/RetweetCreateParamsTest.cs
index 729a8bd..904dcba 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/Retweet/RetweetCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/Retweet/RetweetCreateParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
{
RetweetCreateParams parameters = new() { ID = "id", Account = "@elonmusk" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id/retweet"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/Retweet/RetweetDeleteParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/Retweet/RetweetDeleteParamsTest.cs
index 5c5af49..2bd6286 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/Retweet/RetweetDeleteParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/Retweet/RetweetDeleteParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
{
RetweetDeleteParams parameters = new() { ID = "id", Account = "@elonmusk" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id/retweet"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetCreateParamsTest.cs
index 1fd5971..a3a0d0d 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetCreateParamsTest.cs
@@ -100,7 +100,7 @@ public void Url_Works()
Text = "Just launched our new feature!",
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetDeleteParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetDeleteParamsTest.cs
index 81ba863..0b56a75 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetDeleteParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetDeleteParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
{
TweetDeleteParams parameters = new() { ID = "id", Account = "@elonmusk" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetFavoritersParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetFavoritersParamsTest.cs
index 1823365..4dfe527 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetFavoritersParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetFavoritersParamsTest.cs
@@ -46,7 +46,7 @@ public void Url_Works()
{
TweetGetFavoritersParams parameters = new() { ID = "id", Cursor = "cursor" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id/favoriters?cursor=cursor"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetQuotesParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetQuotesParamsTest.cs
index 25c6ed2..c968c84 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetQuotesParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetQuotesParamsTest.cs
@@ -81,7 +81,7 @@ public void Url_Works()
UntilTime = "untilTime",
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri(
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetRepliesParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetRepliesParamsTest.cs
index a662c0c..479e19a 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetRepliesParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetRepliesParamsTest.cs
@@ -72,7 +72,7 @@ public void Url_Works()
UntilTime = "untilTime",
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri(
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetRetweetersParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetRetweetersParamsTest.cs
index 757486d..510436e 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetRetweetersParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetRetweetersParamsTest.cs
@@ -46,7 +46,7 @@ public void Url_Works()
{
TweetGetRetweetersParams parameters = new() { ID = "id", Cursor = "cursor" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id/retweeters?cursor=cursor"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetThreadParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetThreadParamsTest.cs
index e8451ee..f74b5e0 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetThreadParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetThreadParamsTest.cs
@@ -46,7 +46,7 @@ public void Url_Works()
{
TweetGetThreadParams parameters = new() { ID = "id", Cursor = "cursor" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id/thread?cursor=cursor"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetListParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetListParamsTest.cs
index f82e710..007add9 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetListParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetListParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
TweetListParams parameters = new() { Ids = "ids" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets?ids=ids"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetRetrieveParamsTest.cs
index 5e69886..5364b53 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetRetrieveParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
TweetRetrieveParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetSearchParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetSearchParamsTest.cs
index 3c8ee00..7c9aed6 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetSearchParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetSearchParamsTest.cs
@@ -93,7 +93,7 @@ public void Url_Works()
UntilTime = "untilTime",
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri(
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/Follow/FollowCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/Follow/FollowCreateParamsTest.cs
index aa250f8..e7eb6f7 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/Follow/FollowCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/Follow/FollowCreateParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
{
FollowCreateParams parameters = new() { ID = "id", Account = "@elonmusk" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/users/id/follow"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/Follow/FollowDeleteAllParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/Follow/FollowDeleteAllParamsTest.cs
index 1e9ef23..4968be7 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/Follow/FollowDeleteAllParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/Follow/FollowDeleteAllParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
{
FollowDeleteAllParams parameters = new() { ID = "id", Account = "@elonmusk" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/users/id/follow"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveBatchParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveBatchParamsTest.cs
index e815b8a..e6a4f6f 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveBatchParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveBatchParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
UserRetrieveBatchParams parameters = new() { Ids = "ids" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/users/batch?ids=ids"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowersParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowersParamsTest.cs
index fe0ee59..443946c 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowersParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowersParamsTest.cs
@@ -63,7 +63,7 @@ public void Url_Works()
PageSize = 0,
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri("https://xquik.com/api/v1/x/users/id/followers?cursor=cursor&pageSize=0"),
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowersYouKnowParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowersYouKnowParamsTest.cs
index 91d896c..4bff302 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowersYouKnowParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowersYouKnowParamsTest.cs
@@ -46,7 +46,7 @@ public void Url_Works()
{
UserRetrieveFollowersYouKnowParams parameters = new() { ID = "id", Cursor = "cursor" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri("https://xquik.com/api/v1/x/users/id/followers-you-know?cursor=cursor"),
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowingParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowingParamsTest.cs
index 0ee776e..a95d3a6 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowingParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowingParamsTest.cs
@@ -63,7 +63,7 @@ public void Url_Works()
PageSize = 0,
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri("https://xquik.com/api/v1/x/users/id/following?cursor=cursor&pageSize=0"),
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveLikesParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveLikesParamsTest.cs
index 94144bd..4c1894e 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveLikesParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveLikesParamsTest.cs
@@ -46,7 +46,7 @@ public void Url_Works()
{
UserRetrieveLikesParams parameters = new() { ID = "id", Cursor = "cursor" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/users/id/likes?cursor=cursor"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveMediaParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveMediaParamsTest.cs
index 98e6829..d0e4b22 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveMediaParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveMediaParamsTest.cs
@@ -46,7 +46,7 @@ public void Url_Works()
{
UserRetrieveMediaParams parameters = new() { ID = "id", Cursor = "cursor" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/users/id/media?cursor=cursor"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveMentionsParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveMentionsParamsTest.cs
index 85d4e39..7c1dc2c 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveMentionsParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveMentionsParamsTest.cs
@@ -72,7 +72,7 @@ public void Url_Works()
UntilTime = "untilTime",
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri(
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveParamsTest.cs
index d42c4c0..e056ad6 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
UserRetrieveParams parameters = new() { ID = "id" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/users/id"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveSearchParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveSearchParamsTest.cs
index 8e6cd48..327de8b 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveSearchParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveSearchParamsTest.cs
@@ -46,7 +46,7 @@ public void Url_Works()
{
UserRetrieveSearchParams parameters = new() { Q = "q", Cursor = "cursor" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/users/search?q=q&cursor=cursor"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveTweetsParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveTweetsParamsTest.cs
index fdf1550..91159b2 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveTweetsParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveTweetsParamsTest.cs
@@ -72,7 +72,7 @@ public void Url_Works()
IncludeReplies = true,
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri(
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveVerifiedFollowersParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveVerifiedFollowersParamsTest.cs
index 37dad8b..3621e66 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveVerifiedFollowersParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveVerifiedFollowersParamsTest.cs
@@ -46,7 +46,7 @@ public void Url_Works()
{
UserRetrieveVerifiedFollowersParams parameters = new() { ID = "id", Cursor = "cursor" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri("https://xquik.com/api/v1/x/users/id/verified-followers?cursor=cursor"),
diff --git a/src/XTwitterScraper.Tests/Models/X/XGetArticleParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/XGetArticleParamsTest.cs
index d0584af..9b8d834 100644
--- a/src/XTwitterScraper.Tests/Models/X/XGetArticleParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/XGetArticleParamsTest.cs
@@ -20,7 +20,7 @@ public void Url_Works()
{
XGetArticleParams parameters = new() { TweetID = "tweetId" };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(new Uri("https://xquik.com/api/v1/x/articles/tweetId"), url);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/XGetHomeTimelineParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/XGetHomeTimelineParamsTest.cs
index 71a55ab..130bb03 100644
--- a/src/XTwitterScraper.Tests/Models/X/XGetHomeTimelineParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/XGetHomeTimelineParamsTest.cs
@@ -57,7 +57,7 @@ public void Url_Works()
SeenTweetIds = "seenTweetIds",
};
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri("https://xquik.com/api/v1/x/timeline?cursor=cursor&seenTweetIds=seenTweetIds"),
diff --git a/src/XTwitterScraper.Tests/Models/X/XGetNotificationsParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/XGetNotificationsParamsTest.cs
index b81987f..5b23117 100644
--- a/src/XTwitterScraper.Tests/Models/X/XGetNotificationsParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/XGetNotificationsParamsTest.cs
@@ -52,7 +52,7 @@ public void Url_Works()
{
X::XGetNotificationsParams parameters = new() { Cursor = "cursor", Type = X::Type.All };
- var url = parameters.Url(new() { ApiKey = "My API Key", BearerToken = "My Bearer Token" });
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
Assert.Equal(
new Uri("https://xquik.com/api/v1/x/notifications?cursor=cursor&type=All"),
diff --git a/src/XTwitterScraper.Tests/Models/X/XGetTrendsParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/XGetTrendsParamsTest.cs
index 2f89428..c82d470 100644
--- a/src/XTwitterScraper.Tests/Models/X/XGetTrendsParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/XGetTrendsParamsTest.cs
@@ -1 +1,66 @@
+using System;
+using XTwitterScraper.Models.X;
+
namespace XTwitterScraper.Tests.Models.X;
+
+public class XGetTrendsParamsTest : TestBase
+{
+ [Fact]
+ public void FieldRoundtrip_Works()
+ {
+ var parameters = new XGetTrendsParams { Count = 1, Woeid = 0 };
+
+ long expectedCount = 1;
+ long expectedWoeid = 0;
+
+ Assert.Equal(expectedCount, parameters.Count);
+ Assert.Equal(expectedWoeid, parameters.Woeid);
+ }
+
+ [Fact]
+ public void OptionalNonNullableParamsUnsetAreNotSet_Works()
+ {
+ var parameters = new XGetTrendsParams { };
+
+ Assert.Null(parameters.Count);
+ Assert.False(parameters.RawQueryData.ContainsKey("count"));
+ Assert.Null(parameters.Woeid);
+ Assert.False(parameters.RawQueryData.ContainsKey("woeid"));
+ }
+
+ [Fact]
+ public void OptionalNonNullableParamsSetToNullAreNotSet_Works()
+ {
+ var parameters = new XGetTrendsParams
+ {
+ // Null should be interpreted as omitted for these properties
+ Count = null,
+ Woeid = null,
+ };
+
+ Assert.Null(parameters.Count);
+ Assert.False(parameters.RawQueryData.ContainsKey("count"));
+ Assert.Null(parameters.Woeid);
+ Assert.False(parameters.RawQueryData.ContainsKey("woeid"));
+ }
+
+ [Fact]
+ public void Url_Works()
+ {
+ XGetTrendsParams parameters = new() { Count = 1, Woeid = 0 };
+
+ var url = parameters.Url(new() { ApiKey = "My API Key" });
+
+ Assert.Equal(new Uri("https://xquik.com/api/v1/x/trends?count=1&woeid=0"), url);
+ }
+
+ [Fact]
+ public void CopyConstructor_Works()
+ {
+ var parameters = new XGetTrendsParams { Count = 1, Woeid = 0 };
+
+ XGetTrendsParams copied = new(parameters);
+
+ Assert.Equal(parameters, copied);
+ }
+}
diff --git a/src/XTwitterScraper.Tests/TestBase.cs b/src/XTwitterScraper.Tests/TestBase.cs
index e709b24..afc2dd3 100644
--- a/src/XTwitterScraper.Tests/TestBase.cs
+++ b/src/XTwitterScraper.Tests/TestBase.cs
@@ -14,7 +14,6 @@ public TestBase()
BaseUrl =
Environment.GetEnvironmentVariable("TEST_API_BASE_URL") ?? "http://localhost:4010",
ApiKey = "My API Key",
- BearerToken = "My Bearer Token",
};
}
}
diff --git a/src/XTwitterScraper/Core/ParamsBase.cs b/src/XTwitterScraper/Core/ParamsBase.cs
index b36c76d..6e400ca 100644
--- a/src/XTwitterScraper/Core/ParamsBase.cs
+++ b/src/XTwitterScraper/Core/ParamsBase.cs
@@ -156,7 +156,7 @@ JsonElement element
}
}
- internal string QueryString(ClientOptions options, SecurityOptions security)
+ internal string QueryString(ClientOptions options)
{
NameValueCollection collection = new();
foreach (var item in this.RawQueryData)
@@ -189,22 +189,18 @@ internal string QueryString(ClientOptions options, SecurityOptions security)
return null;
}
- internal static void AddDefaultHeaders(
- HttpRequestMessage request,
- ClientOptions options,
- SecurityOptions security
- )
+ internal static void AddDefaultHeaders(HttpRequestMessage request, ClientOptions options)
{
foreach (var header in defaultHeaders)
{
request.Headers.Add(header.Key, header.Value);
}
- if (security.ApiKey && options.ApiKey != null)
+ if (options.ApiKey != null)
{
request.Headers.Add("X-Api-Key", options.ApiKey);
}
- if (security.OAuthBearer && options.BearerToken != null)
+ if (options.BearerToken != null)
{
request.Headers.Add("Authorization", string.Format("Bearer {0}", options.BearerToken));
}
diff --git a/src/XTwitterScraper/Core/SecurityOptions.cs b/src/XTwitterScraper/Core/SecurityOptions.cs
deleted file mode 100644
index e2e1ef2..0000000
--- a/src/XTwitterScraper/Core/SecurityOptions.cs
+++ /dev/null
@@ -1,14 +0,0 @@
-using System;
-
-namespace XTwitterScraper.Core;
-
-readonly record struct SecurityOptions
-{
- public SecurityOptions() { }
-
- public Boolean ApiKey { get; init; } = false;
-
- public Boolean OAuthBearer { get; init; } = false;
-
- public static SecurityOptions All() => new() { ApiKey = true, OAuthBearer = true };
-}
diff --git a/src/XTwitterScraper/Models/Account/AccountRetrieveParams.cs b/src/XTwitterScraper/Models/Account/AccountRetrieveParams.cs
index efa9533..5a3c130 100644
--- a/src/XTwitterScraper/Models/Account/AccountRetrieveParams.cs
+++ b/src/XTwitterScraper/Models/Account/AccountRetrieveParams.cs
@@ -88,13 +88,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/account")
{
- Query = this.QueryString(options, new() { ApiKey = true }),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, new() { ApiKey = true });
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Account/AccountSetXUsernameParams.cs b/src/XTwitterScraper/Models/Account/AccountSetXUsernameParams.cs
index e3c2322..7f32c6f 100644
--- a/src/XTwitterScraper/Models/Account/AccountSetXUsernameParams.cs
+++ b/src/XTwitterScraper/Models/Account/AccountSetXUsernameParams.cs
@@ -119,7 +119,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/account/x-identity")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -134,7 +134,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Account/AccountUpdateLocaleParams.cs b/src/XTwitterScraper/Models/Account/AccountUpdateLocaleParams.cs
index e392875..87d54d7 100644
--- a/src/XTwitterScraper/Models/Account/AccountUpdateLocaleParams.cs
+++ b/src/XTwitterScraper/Models/Account/AccountUpdateLocaleParams.cs
@@ -118,7 +118,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/account")
{
- Query = this.QueryString(options, new() { ApiKey = true }),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -133,7 +133,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, new() { ApiKey = true });
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/ApiKeys/ApiKeyCreateParams.cs b/src/XTwitterScraper/Models/ApiKeys/ApiKeyCreateParams.cs
index feeeab2..2c9611b 100644
--- a/src/XTwitterScraper/Models/ApiKeys/ApiKeyCreateParams.cs
+++ b/src/XTwitterScraper/Models/ApiKeys/ApiKeyCreateParams.cs
@@ -124,7 +124,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/api-keys")
{
- Query = this.QueryString(options, new() { ApiKey = true }),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -139,7 +139,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, new() { ApiKey = true });
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/ApiKeys/ApiKeyListParams.cs b/src/XTwitterScraper/Models/ApiKeys/ApiKeyListParams.cs
index 94f7b5d..986cf50 100644
--- a/src/XTwitterScraper/Models/ApiKeys/ApiKeyListParams.cs
+++ b/src/XTwitterScraper/Models/ApiKeys/ApiKeyListParams.cs
@@ -88,13 +88,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/api-keys")
{
- Query = this.QueryString(options, new() { ApiKey = true }),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, new() { ApiKey = true });
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/ApiKeys/ApiKeyRevokeParams.cs b/src/XTwitterScraper/Models/ApiKeys/ApiKeyRevokeParams.cs
index 28351a2..a087f39 100644
--- a/src/XTwitterScraper/Models/ApiKeys/ApiKeyRevokeParams.cs
+++ b/src/XTwitterScraper/Models/ApiKeys/ApiKeyRevokeParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/api-keys/{0}", this.ID)
)
{
- Query = this.QueryString(options, new() { ApiKey = true }),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, new() { ApiKey = true });
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Compose/ComposeCreateParams.cs b/src/XTwitterScraper/Models/Compose/ComposeCreateParams.cs
index 93ef9ce..d645fe4 100644
--- a/src/XTwitterScraper/Models/Compose/ComposeCreateParams.cs
+++ b/src/XTwitterScraper/Models/Compose/ComposeCreateParams.cs
@@ -331,7 +331,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/compose")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -346,7 +346,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Credits/CreditRetrieveBalanceParams.cs b/src/XTwitterScraper/Models/Credits/CreditRetrieveBalanceParams.cs
index 550bc03..344e8fb 100644
--- a/src/XTwitterScraper/Models/Credits/CreditRetrieveBalanceParams.cs
+++ b/src/XTwitterScraper/Models/Credits/CreditRetrieveBalanceParams.cs
@@ -88,13 +88,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/credits")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Credits/CreditTopupBalanceParams.cs b/src/XTwitterScraper/Models/Credits/CreditTopupBalanceParams.cs
index 0dfc5c7..03ac360 100644
--- a/src/XTwitterScraper/Models/Credits/CreditTopupBalanceParams.cs
+++ b/src/XTwitterScraper/Models/Credits/CreditTopupBalanceParams.cs
@@ -119,7 +119,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/credits/topup")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -134,7 +134,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Drafts/DraftCreateParams.cs b/src/XTwitterScraper/Models/Drafts/DraftCreateParams.cs
index 9c93447..00a2b66 100644
--- a/src/XTwitterScraper/Models/Drafts/DraftCreateParams.cs
+++ b/src/XTwitterScraper/Models/Drafts/DraftCreateParams.cs
@@ -154,7 +154,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/drafts")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -169,7 +169,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Drafts/DraftDeleteParams.cs b/src/XTwitterScraper/Models/Drafts/DraftDeleteParams.cs
index 8a9463a..f649bc4 100644
--- a/src/XTwitterScraper/Models/Drafts/DraftDeleteParams.cs
+++ b/src/XTwitterScraper/Models/Drafts/DraftDeleteParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/drafts/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Drafts/DraftListParams.cs b/src/XTwitterScraper/Models/Drafts/DraftListParams.cs
index bea8198..478cece 100644
--- a/src/XTwitterScraper/Models/Drafts/DraftListParams.cs
+++ b/src/XTwitterScraper/Models/Drafts/DraftListParams.cs
@@ -130,13 +130,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/drafts")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Drafts/DraftRetrieveParams.cs b/src/XTwitterScraper/Models/Drafts/DraftRetrieveParams.cs
index b4fc3bb..fa6ccdd 100644
--- a/src/XTwitterScraper/Models/Drafts/DraftRetrieveParams.cs
+++ b/src/XTwitterScraper/Models/Drafts/DraftRetrieveParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/drafts/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Draws/DrawExportParams.cs b/src/XTwitterScraper/Models/Draws/DrawExportParams.cs
index 1fd4174..2a96fad 100644
--- a/src/XTwitterScraper/Models/Draws/DrawExportParams.cs
+++ b/src/XTwitterScraper/Models/Draws/DrawExportParams.cs
@@ -147,13 +147,13 @@ public virtual bool Equals(DrawExportParams? other)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/draws/{0}/export", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
request.Headers.Add("Accept", "application/octet-stream");
foreach (var item in this.RawHeaderData)
{
diff --git a/src/XTwitterScraper/Models/Draws/DrawListParams.cs b/src/XTwitterScraper/Models/Draws/DrawListParams.cs
index d33d5ee..cbecd4f 100644
--- a/src/XTwitterScraper/Models/Draws/DrawListParams.cs
+++ b/src/XTwitterScraper/Models/Draws/DrawListParams.cs
@@ -130,13 +130,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/draws")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Draws/DrawRetrieveParams.cs b/src/XTwitterScraper/Models/Draws/DrawRetrieveParams.cs
index 4709f92..8cb2ada 100644
--- a/src/XTwitterScraper/Models/Draws/DrawRetrieveParams.cs
+++ b/src/XTwitterScraper/Models/Draws/DrawRetrieveParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/draws/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Draws/DrawRunParams.cs b/src/XTwitterScraper/Models/Draws/DrawRunParams.cs
index db21031..249bf73 100644
--- a/src/XTwitterScraper/Models/Draws/DrawRunParams.cs
+++ b/src/XTwitterScraper/Models/Draws/DrawRunParams.cs
@@ -324,7 +324,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/draws")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -339,7 +339,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Events/EventListParams.cs b/src/XTwitterScraper/Models/Events/EventListParams.cs
index ef5ac95..6fb729b 100644
--- a/src/XTwitterScraper/Models/Events/EventListParams.cs
+++ b/src/XTwitterScraper/Models/Events/EventListParams.cs
@@ -172,13 +172,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/events")
{
- Query = this.QueryString(options, new() { ApiKey = true }),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, new() { ApiKey = true });
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Events/EventRetrieveParams.cs b/src/XTwitterScraper/Models/Events/EventRetrieveParams.cs
index 1cc2ebb..af696fa 100644
--- a/src/XTwitterScraper/Models/Events/EventRetrieveParams.cs
+++ b/src/XTwitterScraper/Models/Events/EventRetrieveParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/events/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Extractions/ExtractionEstimateCostParams.cs b/src/XTwitterScraper/Models/Extractions/ExtractionEstimateCostParams.cs
index 640225d..f8848ae 100644
--- a/src/XTwitterScraper/Models/Extractions/ExtractionEstimateCostParams.cs
+++ b/src/XTwitterScraper/Models/Extractions/ExtractionEstimateCostParams.cs
@@ -294,7 +294,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/extractions/estimate")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -309,7 +309,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Extractions/ExtractionExportResultsParams.cs b/src/XTwitterScraper/Models/Extractions/ExtractionExportResultsParams.cs
index db1903e..b2956a6 100644
--- a/src/XTwitterScraper/Models/Extractions/ExtractionExportResultsParams.cs
+++ b/src/XTwitterScraper/Models/Extractions/ExtractionExportResultsParams.cs
@@ -127,13 +127,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/extractions/{0}/export", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
request.Headers.Add("Accept", "application/octet-stream");
foreach (var item in this.RawHeaderData)
{
diff --git a/src/XTwitterScraper/Models/Extractions/ExtractionListParams.cs b/src/XTwitterScraper/Models/Extractions/ExtractionListParams.cs
index a269736..e2f051a 100644
--- a/src/XTwitterScraper/Models/Extractions/ExtractionListParams.cs
+++ b/src/XTwitterScraper/Models/Extractions/ExtractionListParams.cs
@@ -174,13 +174,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/extractions")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Extractions/ExtractionRetrieveParams.cs b/src/XTwitterScraper/Models/Extractions/ExtractionRetrieveParams.cs
index f3f3c82..28b263a 100644
--- a/src/XTwitterScraper/Models/Extractions/ExtractionRetrieveParams.cs
+++ b/src/XTwitterScraper/Models/Extractions/ExtractionRetrieveParams.cs
@@ -143,13 +143,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/extractions/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Extractions/ExtractionRunParams.cs b/src/XTwitterScraper/Models/Extractions/ExtractionRunParams.cs
index ea221fd..71642af 100644
--- a/src/XTwitterScraper/Models/Extractions/ExtractionRunParams.cs
+++ b/src/XTwitterScraper/Models/Extractions/ExtractionRunParams.cs
@@ -294,7 +294,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/extractions")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -309,7 +309,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Integrations/IntegrationCreateParams.cs b/src/XTwitterScraper/Models/Integrations/IntegrationCreateParams.cs
index c0f58ce..b1f0ffb 100644
--- a/src/XTwitterScraper/Models/Integrations/IntegrationCreateParams.cs
+++ b/src/XTwitterScraper/Models/Integrations/IntegrationCreateParams.cs
@@ -165,7 +165,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/integrations")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -180,7 +180,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Integrations/IntegrationDeleteParams.cs b/src/XTwitterScraper/Models/Integrations/IntegrationDeleteParams.cs
index 147529a..aba5c37 100644
--- a/src/XTwitterScraper/Models/Integrations/IntegrationDeleteParams.cs
+++ b/src/XTwitterScraper/Models/Integrations/IntegrationDeleteParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/integrations/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Integrations/IntegrationListDeliveriesParams.cs b/src/XTwitterScraper/Models/Integrations/IntegrationListDeliveriesParams.cs
index 68a4c99..df04aa2 100644
--- a/src/XTwitterScraper/Models/Integrations/IntegrationListDeliveriesParams.cs
+++ b/src/XTwitterScraper/Models/Integrations/IntegrationListDeliveriesParams.cs
@@ -125,13 +125,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/integrations/{0}/deliveries", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Integrations/IntegrationListParams.cs b/src/XTwitterScraper/Models/Integrations/IntegrationListParams.cs
index 99186a6..72886a3 100644
--- a/src/XTwitterScraper/Models/Integrations/IntegrationListParams.cs
+++ b/src/XTwitterScraper/Models/Integrations/IntegrationListParams.cs
@@ -88,13 +88,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/integrations")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Integrations/IntegrationRetrieveParams.cs b/src/XTwitterScraper/Models/Integrations/IntegrationRetrieveParams.cs
index b59363c..0c6f499 100644
--- a/src/XTwitterScraper/Models/Integrations/IntegrationRetrieveParams.cs
+++ b/src/XTwitterScraper/Models/Integrations/IntegrationRetrieveParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/integrations/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Integrations/IntegrationSendTestParams.cs b/src/XTwitterScraper/Models/Integrations/IntegrationSendTestParams.cs
index bc80e52..e4be67d 100644
--- a/src/XTwitterScraper/Models/Integrations/IntegrationSendTestParams.cs
+++ b/src/XTwitterScraper/Models/Integrations/IntegrationSendTestParams.cs
@@ -102,13 +102,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/integrations/{0}/test", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Integrations/IntegrationUpdateParams.cs b/src/XTwitterScraper/Models/Integrations/IntegrationUpdateParams.cs
index 45593af..767b715 100644
--- a/src/XTwitterScraper/Models/Integrations/IntegrationUpdateParams.cs
+++ b/src/XTwitterScraper/Models/Integrations/IntegrationUpdateParams.cs
@@ -269,7 +269,7 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/integrations/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -284,7 +284,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Monitors/MonitorCreateParams.cs b/src/XTwitterScraper/Models/Monitors/MonitorCreateParams.cs
index c8a08b9..3d5aaee 100644
--- a/src/XTwitterScraper/Models/Monitors/MonitorCreateParams.cs
+++ b/src/XTwitterScraper/Models/Monitors/MonitorCreateParams.cs
@@ -141,7 +141,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/monitors")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -156,7 +156,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Monitors/MonitorDeactivateParams.cs b/src/XTwitterScraper/Models/Monitors/MonitorDeactivateParams.cs
index 28e1487..df2c73f 100644
--- a/src/XTwitterScraper/Models/Monitors/MonitorDeactivateParams.cs
+++ b/src/XTwitterScraper/Models/Monitors/MonitorDeactivateParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/monitors/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Monitors/MonitorListParams.cs b/src/XTwitterScraper/Models/Monitors/MonitorListParams.cs
index b95815b..3f20809 100644
--- a/src/XTwitterScraper/Models/Monitors/MonitorListParams.cs
+++ b/src/XTwitterScraper/Models/Monitors/MonitorListParams.cs
@@ -88,13 +88,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/monitors")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Monitors/MonitorRetrieveParams.cs b/src/XTwitterScraper/Models/Monitors/MonitorRetrieveParams.cs
index c3ab890..cff2d21 100644
--- a/src/XTwitterScraper/Models/Monitors/MonitorRetrieveParams.cs
+++ b/src/XTwitterScraper/Models/Monitors/MonitorRetrieveParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/monitors/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Monitors/MonitorUpdateParams.cs b/src/XTwitterScraper/Models/Monitors/MonitorUpdateParams.cs
index c663e04..590303c 100644
--- a/src/XTwitterScraper/Models/Monitors/MonitorUpdateParams.cs
+++ b/src/XTwitterScraper/Models/Monitors/MonitorUpdateParams.cs
@@ -163,7 +163,7 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/monitors/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -178,7 +178,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Radar/RadarRetrieveTrendingTopicsParams.cs b/src/XTwitterScraper/Models/Radar/RadarRetrieveTrendingTopicsParams.cs
index 49256bf..7e41282 100644
--- a/src/XTwitterScraper/Models/Radar/RadarRetrieveTrendingTopicsParams.cs
+++ b/src/XTwitterScraper/Models/Radar/RadarRetrieveTrendingTopicsParams.cs
@@ -198,13 +198,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/radar")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Styles/StyleAnalyzeParams.cs b/src/XTwitterScraper/Models/Styles/StyleAnalyzeParams.cs
index 6eb38b2..2a6d7fe 100644
--- a/src/XTwitterScraper/Models/Styles/StyleAnalyzeParams.cs
+++ b/src/XTwitterScraper/Models/Styles/StyleAnalyzeParams.cs
@@ -119,7 +119,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/styles")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -134,7 +134,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Styles/StyleCompareParams.cs b/src/XTwitterScraper/Models/Styles/StyleCompareParams.cs
index 20ea10e..c74281f 100644
--- a/src/XTwitterScraper/Models/Styles/StyleCompareParams.cs
+++ b/src/XTwitterScraper/Models/Styles/StyleCompareParams.cs
@@ -114,13 +114,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/styles/compare")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Styles/StyleDeleteParams.cs b/src/XTwitterScraper/Models/Styles/StyleDeleteParams.cs
index 3c1b0c3..19cb7fc 100644
--- a/src/XTwitterScraper/Models/Styles/StyleDeleteParams.cs
+++ b/src/XTwitterScraper/Models/Styles/StyleDeleteParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/styles/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Styles/StyleGetPerformanceParams.cs b/src/XTwitterScraper/Models/Styles/StyleGetPerformanceParams.cs
index 54c5c7a..42deb85 100644
--- a/src/XTwitterScraper/Models/Styles/StyleGetPerformanceParams.cs
+++ b/src/XTwitterScraper/Models/Styles/StyleGetPerformanceParams.cs
@@ -102,13 +102,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/styles/{0}/performance", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Styles/StyleListParams.cs b/src/XTwitterScraper/Models/Styles/StyleListParams.cs
index ce0176a..4bba7e9 100644
--- a/src/XTwitterScraper/Models/Styles/StyleListParams.cs
+++ b/src/XTwitterScraper/Models/Styles/StyleListParams.cs
@@ -88,13 +88,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/styles")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Styles/StyleRetrieveParams.cs b/src/XTwitterScraper/Models/Styles/StyleRetrieveParams.cs
index 0464804..728334b 100644
--- a/src/XTwitterScraper/Models/Styles/StyleRetrieveParams.cs
+++ b/src/XTwitterScraper/Models/Styles/StyleRetrieveParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/styles/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Styles/StyleUpdateParams.cs b/src/XTwitterScraper/Models/Styles/StyleUpdateParams.cs
index 3a7868b..103d6d0 100644
--- a/src/XTwitterScraper/Models/Styles/StyleUpdateParams.cs
+++ b/src/XTwitterScraper/Models/Styles/StyleUpdateParams.cs
@@ -152,7 +152,7 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/styles/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -167,7 +167,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Subscribe/SubscribeCreateParams.cs b/src/XTwitterScraper/Models/Subscribe/SubscribeCreateParams.cs
index 8ed2f52..6f153c2 100644
--- a/src/XTwitterScraper/Models/Subscribe/SubscribeCreateParams.cs
+++ b/src/XTwitterScraper/Models/Subscribe/SubscribeCreateParams.cs
@@ -88,13 +88,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/subscribe")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Support/Tickets/TicketCreateParams.cs b/src/XTwitterScraper/Models/Support/Tickets/TicketCreateParams.cs
index fdba99e..573f01b 100644
--- a/src/XTwitterScraper/Models/Support/Tickets/TicketCreateParams.cs
+++ b/src/XTwitterScraper/Models/Support/Tickets/TicketCreateParams.cs
@@ -126,7 +126,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/support/tickets")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -141,7 +141,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Support/Tickets/TicketListParams.cs b/src/XTwitterScraper/Models/Support/Tickets/TicketListParams.cs
index da239df..8f8d39d 100644
--- a/src/XTwitterScraper/Models/Support/Tickets/TicketListParams.cs
+++ b/src/XTwitterScraper/Models/Support/Tickets/TicketListParams.cs
@@ -88,13 +88,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/support/tickets")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Support/Tickets/TicketReplyParams.cs b/src/XTwitterScraper/Models/Support/Tickets/TicketReplyParams.cs
index 9c504b9..f36f56c 100644
--- a/src/XTwitterScraper/Models/Support/Tickets/TicketReplyParams.cs
+++ b/src/XTwitterScraper/Models/Support/Tickets/TicketReplyParams.cs
@@ -129,7 +129,7 @@ public override Uri Url(ClientOptions options)
+ string.Format("/support/tickets/{0}/messages", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -144,7 +144,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Support/Tickets/TicketRetrieveParams.cs b/src/XTwitterScraper/Models/Support/Tickets/TicketRetrieveParams.cs
index d1edb35..9304e8c 100644
--- a/src/XTwitterScraper/Models/Support/Tickets/TicketRetrieveParams.cs
+++ b/src/XTwitterScraper/Models/Support/Tickets/TicketRetrieveParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/support/tickets/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Support/Tickets/TicketUpdateParams.cs b/src/XTwitterScraper/Models/Support/Tickets/TicketUpdateParams.cs
index 2dc03f8..b062c9e 100644
--- a/src/XTwitterScraper/Models/Support/Tickets/TicketUpdateParams.cs
+++ b/src/XTwitterScraper/Models/Support/Tickets/TicketUpdateParams.cs
@@ -130,7 +130,7 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/support/tickets/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -145,7 +145,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Trends/TrendListParams.cs b/src/XTwitterScraper/Models/Trends/TrendListParams.cs
index 34974b5..dc9039c 100644
--- a/src/XTwitterScraper/Models/Trends/TrendListParams.cs
+++ b/src/XTwitterScraper/Models/Trends/TrendListParams.cs
@@ -130,13 +130,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/trends")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Webhooks/WebhookCreateParams.cs b/src/XTwitterScraper/Models/Webhooks/WebhookCreateParams.cs
index c0f5434..ad603f7 100644
--- a/src/XTwitterScraper/Models/Webhooks/WebhookCreateParams.cs
+++ b/src/XTwitterScraper/Models/Webhooks/WebhookCreateParams.cs
@@ -141,7 +141,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/webhooks")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -156,7 +156,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Webhooks/WebhookDeactivateParams.cs b/src/XTwitterScraper/Models/Webhooks/WebhookDeactivateParams.cs
index e31bc5d..b1eac0f 100644
--- a/src/XTwitterScraper/Models/Webhooks/WebhookDeactivateParams.cs
+++ b/src/XTwitterScraper/Models/Webhooks/WebhookDeactivateParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/webhooks/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Webhooks/WebhookListDeliveriesParams.cs b/src/XTwitterScraper/Models/Webhooks/WebhookListDeliveriesParams.cs
index 9c42b31..e5ec9b7 100644
--- a/src/XTwitterScraper/Models/Webhooks/WebhookListDeliveriesParams.cs
+++ b/src/XTwitterScraper/Models/Webhooks/WebhookListDeliveriesParams.cs
@@ -102,13 +102,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/webhooks/{0}/deliveries", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Webhooks/WebhookListParams.cs b/src/XTwitterScraper/Models/Webhooks/WebhookListParams.cs
index a5267e2..bd7a348 100644
--- a/src/XTwitterScraper/Models/Webhooks/WebhookListParams.cs
+++ b/src/XTwitterScraper/Models/Webhooks/WebhookListParams.cs
@@ -88,13 +88,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/webhooks")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Webhooks/WebhookTestParams.cs b/src/XTwitterScraper/Models/Webhooks/WebhookTestParams.cs
index ad2a869..defac58 100644
--- a/src/XTwitterScraper/Models/Webhooks/WebhookTestParams.cs
+++ b/src/XTwitterScraper/Models/Webhooks/WebhookTestParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/webhooks/{0}/test", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/Webhooks/WebhookUpdateParams.cs b/src/XTwitterScraper/Models/Webhooks/WebhookUpdateParams.cs
index 3e9e870..37f190b 100644
--- a/src/XTwitterScraper/Models/Webhooks/WebhookUpdateParams.cs
+++ b/src/XTwitterScraper/Models/Webhooks/WebhookUpdateParams.cs
@@ -181,7 +181,7 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/webhooks/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -196,7 +196,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Accounts/AccountBulkRetryParams.cs b/src/XTwitterScraper/Models/X/Accounts/AccountBulkRetryParams.cs
index 3f66283..0c9b28d 100644
--- a/src/XTwitterScraper/Models/X/Accounts/AccountBulkRetryParams.cs
+++ b/src/XTwitterScraper/Models/X/Accounts/AccountBulkRetryParams.cs
@@ -89,13 +89,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/accounts/bulk-retry")
{
- Query = this.QueryString(options, new() { ApiKey = true }),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, new() { ApiKey = true });
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Accounts/AccountCreateParams.cs b/src/XTwitterScraper/Models/X/Accounts/AccountCreateParams.cs
index 154d0cf..aa09556 100644
--- a/src/XTwitterScraper/Models/X/Accounts/AccountCreateParams.cs
+++ b/src/XTwitterScraper/Models/X/Accounts/AccountCreateParams.cs
@@ -187,7 +187,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/accounts")
{
- Query = this.QueryString(options, new() { ApiKey = true }),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -202,7 +202,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, new() { ApiKey = true });
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Accounts/AccountDeleteParams.cs b/src/XTwitterScraper/Models/X/Accounts/AccountDeleteParams.cs
index 2511b16..609a581 100644
--- a/src/XTwitterScraper/Models/X/Accounts/AccountDeleteParams.cs
+++ b/src/XTwitterScraper/Models/X/Accounts/AccountDeleteParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/accounts/{0}", this.ID)
)
{
- Query = this.QueryString(options, new() { ApiKey = true }),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, new() { ApiKey = true });
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Accounts/AccountListParams.cs b/src/XTwitterScraper/Models/X/Accounts/AccountListParams.cs
index 168d148..5740935 100644
--- a/src/XTwitterScraper/Models/X/Accounts/AccountListParams.cs
+++ b/src/XTwitterScraper/Models/X/Accounts/AccountListParams.cs
@@ -88,13 +88,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/accounts")
{
- Query = this.QueryString(options, new() { ApiKey = true }),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, new() { ApiKey = true });
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Accounts/AccountReauthParams.cs b/src/XTwitterScraper/Models/X/Accounts/AccountReauthParams.cs
index a6d5300..3710a0c 100644
--- a/src/XTwitterScraper/Models/X/Accounts/AccountReauthParams.cs
+++ b/src/XTwitterScraper/Models/X/Accounts/AccountReauthParams.cs
@@ -153,7 +153,7 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/accounts/{0}/reauth", this.ID)
)
{
- Query = this.QueryString(options, new() { ApiKey = true }),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -168,7 +168,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, new() { ApiKey = true });
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Accounts/AccountRetrieveParams.cs b/src/XTwitterScraper/Models/X/Accounts/AccountRetrieveParams.cs
index f4f4239..5872499 100644
--- a/src/XTwitterScraper/Models/X/Accounts/AccountRetrieveParams.cs
+++ b/src/XTwitterScraper/Models/X/Accounts/AccountRetrieveParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/accounts/{0}", this.ID)
)
{
- Query = this.QueryString(options, new() { ApiKey = true }),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, new() { ApiKey = true });
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Bookmarks/BookmarkListParams.cs b/src/XTwitterScraper/Models/X/Bookmarks/BookmarkListParams.cs
index f8b8dd6..31dffe8 100644
--- a/src/XTwitterScraper/Models/X/Bookmarks/BookmarkListParams.cs
+++ b/src/XTwitterScraper/Models/X/Bookmarks/BookmarkListParams.cs
@@ -130,13 +130,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/bookmarks")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Bookmarks/BookmarkRetrieveFoldersParams.cs b/src/XTwitterScraper/Models/X/Bookmarks/BookmarkRetrieveFoldersParams.cs
index 6b97673..a375363 100644
--- a/src/XTwitterScraper/Models/X/Bookmarks/BookmarkRetrieveFoldersParams.cs
+++ b/src/XTwitterScraper/Models/X/Bookmarks/BookmarkRetrieveFoldersParams.cs
@@ -90,13 +90,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/bookmarks/folders")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Communities/CommunityCreateParams.cs b/src/XTwitterScraper/Models/X/Communities/CommunityCreateParams.cs
index 4bc9905..ea6357b 100644
--- a/src/XTwitterScraper/Models/X/Communities/CommunityCreateParams.cs
+++ b/src/XTwitterScraper/Models/X/Communities/CommunityCreateParams.cs
@@ -153,7 +153,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/communities")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -168,7 +168,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Communities/CommunityDeleteParams.cs b/src/XTwitterScraper/Models/X/Communities/CommunityDeleteParams.cs
index 0021b7f..922515a 100644
--- a/src/XTwitterScraper/Models/X/Communities/CommunityDeleteParams.cs
+++ b/src/XTwitterScraper/Models/X/Communities/CommunityDeleteParams.cs
@@ -144,7 +144,7 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/communities/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -159,7 +159,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveInfoParams.cs b/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveInfoParams.cs
index a12be46..b93dea9 100644
--- a/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveInfoParams.cs
+++ b/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveInfoParams.cs
@@ -102,13 +102,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/communities/{0}/info", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveMembersParams.cs b/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveMembersParams.cs
index 9634d07..342bd8c 100644
--- a/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveMembersParams.cs
+++ b/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveMembersParams.cs
@@ -125,13 +125,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/communities/{0}/members", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveModeratorsParams.cs b/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveModeratorsParams.cs
index a19b852..f4f2fd4 100644
--- a/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveModeratorsParams.cs
+++ b/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveModeratorsParams.cs
@@ -125,13 +125,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/communities/{0}/moderators", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveSearchParams.cs b/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveSearchParams.cs
index e39738c..eaf5f59 100644
--- a/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveSearchParams.cs
+++ b/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveSearchParams.cs
@@ -145,13 +145,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/communities/search")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Communities/Join/JoinCreateParams.cs b/src/XTwitterScraper/Models/X/Communities/Join/JoinCreateParams.cs
index 2c4f3a7..5d0b58b 100644
--- a/src/XTwitterScraper/Models/X/Communities/Join/JoinCreateParams.cs
+++ b/src/XTwitterScraper/Models/X/Communities/Join/JoinCreateParams.cs
@@ -132,7 +132,7 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/communities/{0}/join", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -147,7 +147,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Communities/Join/JoinDeleteAllParams.cs b/src/XTwitterScraper/Models/X/Communities/Join/JoinDeleteAllParams.cs
index ff2d3ca..f2f688c 100644
--- a/src/XTwitterScraper/Models/X/Communities/Join/JoinDeleteAllParams.cs
+++ b/src/XTwitterScraper/Models/X/Communities/Join/JoinDeleteAllParams.cs
@@ -132,7 +132,7 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/communities/{0}/join", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -147,7 +147,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Communities/Tweets/TweetListByCommunityParams.cs b/src/XTwitterScraper/Models/X/Communities/Tweets/TweetListByCommunityParams.cs
index 8412a35..51919a5 100644
--- a/src/XTwitterScraper/Models/X/Communities/Tweets/TweetListByCommunityParams.cs
+++ b/src/XTwitterScraper/Models/X/Communities/Tweets/TweetListByCommunityParams.cs
@@ -123,13 +123,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/communities/{0}/tweets", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Communities/Tweets/TweetListParams.cs b/src/XTwitterScraper/Models/X/Communities/Tweets/TweetListParams.cs
index e2f6695..2d14586 100644
--- a/src/XTwitterScraper/Models/X/Communities/Tweets/TweetListParams.cs
+++ b/src/XTwitterScraper/Models/X/Communities/Tweets/TweetListParams.cs
@@ -143,13 +143,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/communities/tweets")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Dm/DmRetrieveHistoryParams.cs b/src/XTwitterScraper/Models/X/Dm/DmRetrieveHistoryParams.cs
index 3ff7c6a..a17fdce 100644
--- a/src/XTwitterScraper/Models/X/Dm/DmRetrieveHistoryParams.cs
+++ b/src/XTwitterScraper/Models/X/Dm/DmRetrieveHistoryParams.cs
@@ -144,13 +144,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/dm/{0}/history", this.UserID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Dm/DmSendParams.cs b/src/XTwitterScraper/Models/X/Dm/DmSendParams.cs
index 9776e89..93dd813 100644
--- a/src/XTwitterScraper/Models/X/Dm/DmSendParams.cs
+++ b/src/XTwitterScraper/Models/X/Dm/DmSendParams.cs
@@ -181,7 +181,7 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/dm/{0}", this.UserID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -196,7 +196,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Followers/FollowerCheckParams.cs b/src/XTwitterScraper/Models/X/Followers/FollowerCheckParams.cs
index 0b7bae3..3fade70 100644
--- a/src/XTwitterScraper/Models/X/Followers/FollowerCheckParams.cs
+++ b/src/XTwitterScraper/Models/X/Followers/FollowerCheckParams.cs
@@ -114,13 +114,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/followers/check")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Lists/ListRetrieveFollowersParams.cs b/src/XTwitterScraper/Models/X/Lists/ListRetrieveFollowersParams.cs
index a7945b7..6e01004 100644
--- a/src/XTwitterScraper/Models/X/Lists/ListRetrieveFollowersParams.cs
+++ b/src/XTwitterScraper/Models/X/Lists/ListRetrieveFollowersParams.cs
@@ -123,13 +123,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/lists/{0}/followers", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Lists/ListRetrieveMembersParams.cs b/src/XTwitterScraper/Models/X/Lists/ListRetrieveMembersParams.cs
index 9833d90..2ed587b 100644
--- a/src/XTwitterScraper/Models/X/Lists/ListRetrieveMembersParams.cs
+++ b/src/XTwitterScraper/Models/X/Lists/ListRetrieveMembersParams.cs
@@ -122,13 +122,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/lists/{0}/members", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Lists/ListRetrieveTweetsParams.cs b/src/XTwitterScraper/Models/X/Lists/ListRetrieveTweetsParams.cs
index 3dd01c8..0e3c0d6 100644
--- a/src/XTwitterScraper/Models/X/Lists/ListRetrieveTweetsParams.cs
+++ b/src/XTwitterScraper/Models/X/Lists/ListRetrieveTweetsParams.cs
@@ -185,13 +185,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/lists/{0}/tweets", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Media/MediaDownloadParams.cs b/src/XTwitterScraper/Models/X/Media/MediaDownloadParams.cs
index 09ae206..f491aeb 100644
--- a/src/XTwitterScraper/Models/X/Media/MediaDownloadParams.cs
+++ b/src/XTwitterScraper/Models/X/Media/MediaDownloadParams.cs
@@ -152,7 +152,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/media/download")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -167,7 +167,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Media/MediaUploadParams.cs b/src/XTwitterScraper/Models/X/Media/MediaUploadParams.cs
index 82060da..46dda1e 100644
--- a/src/XTwitterScraper/Models/X/Media/MediaUploadParams.cs
+++ b/src/XTwitterScraper/Models/X/Media/MediaUploadParams.cs
@@ -149,7 +149,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/media")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -160,7 +160,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Profile/ProfileUpdateAvatarParams.cs b/src/XTwitterScraper/Models/X/Profile/ProfileUpdateAvatarParams.cs
index bfc8d4f..bb5f7b1 100644
--- a/src/XTwitterScraper/Models/X/Profile/ProfileUpdateAvatarParams.cs
+++ b/src/XTwitterScraper/Models/X/Profile/ProfileUpdateAvatarParams.cs
@@ -131,7 +131,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/profile/avatar")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -142,7 +142,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Profile/ProfileUpdateBannerParams.cs b/src/XTwitterScraper/Models/X/Profile/ProfileUpdateBannerParams.cs
index 412a2af..07ac14d 100644
--- a/src/XTwitterScraper/Models/X/Profile/ProfileUpdateBannerParams.cs
+++ b/src/XTwitterScraper/Models/X/Profile/ProfileUpdateBannerParams.cs
@@ -131,7 +131,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/profile/banner")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -142,7 +142,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Profile/ProfileUpdateParams.cs b/src/XTwitterScraper/Models/X/Profile/ProfileUpdateParams.cs
index e3bf959..9a0796d 100644
--- a/src/XTwitterScraper/Models/X/Profile/ProfileUpdateParams.cs
+++ b/src/XTwitterScraper/Models/X/Profile/ProfileUpdateParams.cs
@@ -200,7 +200,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/profile")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -215,7 +215,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Tweets/Like/LikeCreateParams.cs b/src/XTwitterScraper/Models/X/Tweets/Like/LikeCreateParams.cs
index 76ca63a..b260f8a 100644
--- a/src/XTwitterScraper/Models/X/Tweets/Like/LikeCreateParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/Like/LikeCreateParams.cs
@@ -131,7 +131,7 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/tweets/{0}/like", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -146,7 +146,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Tweets/Like/LikeDeleteParams.cs b/src/XTwitterScraper/Models/X/Tweets/Like/LikeDeleteParams.cs
index 76ce7f8..22fe83b 100644
--- a/src/XTwitterScraper/Models/X/Tweets/Like/LikeDeleteParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/Like/LikeDeleteParams.cs
@@ -131,7 +131,7 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/tweets/{0}/like", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -146,7 +146,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Tweets/Retweet/RetweetCreateParams.cs b/src/XTwitterScraper/Models/X/Tweets/Retweet/RetweetCreateParams.cs
index 190de3d..2771df2 100644
--- a/src/XTwitterScraper/Models/X/Tweets/Retweet/RetweetCreateParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/Retweet/RetweetCreateParams.cs
@@ -132,7 +132,7 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/tweets/{0}/retweet", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -147,7 +147,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Tweets/Retweet/RetweetDeleteParams.cs b/src/XTwitterScraper/Models/X/Tweets/Retweet/RetweetDeleteParams.cs
index dd3eea4..3699786 100644
--- a/src/XTwitterScraper/Models/X/Tweets/Retweet/RetweetDeleteParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/Retweet/RetweetDeleteParams.cs
@@ -132,7 +132,7 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/tweets/{0}/retweet", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -147,7 +147,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Tweets/TweetCreateParams.cs b/src/XTwitterScraper/Models/X/Tweets/TweetCreateParams.cs
index 75326df..8d190a3 100644
--- a/src/XTwitterScraper/Models/X/Tweets/TweetCreateParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/TweetCreateParams.cs
@@ -223,7 +223,7 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/tweets")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -238,7 +238,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Tweets/TweetDeleteParams.cs b/src/XTwitterScraper/Models/X/Tweets/TweetDeleteParams.cs
index c053f1e..341ff6b 100644
--- a/src/XTwitterScraper/Models/X/Tweets/TweetDeleteParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/TweetDeleteParams.cs
@@ -131,7 +131,7 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/tweets/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -146,7 +146,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Tweets/TweetGetFavoritersParams.cs b/src/XTwitterScraper/Models/X/Tweets/TweetGetFavoritersParams.cs
index 39ee7f0..197c5e6 100644
--- a/src/XTwitterScraper/Models/X/Tweets/TweetGetFavoritersParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/TweetGetFavoritersParams.cs
@@ -123,13 +123,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/tweets/{0}/favoriters", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Tweets/TweetGetQuotesParams.cs b/src/XTwitterScraper/Models/X/Tweets/TweetGetQuotesParams.cs
index 80937bd..986dd16 100644
--- a/src/XTwitterScraper/Models/X/Tweets/TweetGetQuotesParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/TweetGetQuotesParams.cs
@@ -185,13 +185,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/tweets/{0}/quotes", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Tweets/TweetGetRepliesParams.cs b/src/XTwitterScraper/Models/X/Tweets/TweetGetRepliesParams.cs
index e1253a6..8b93517 100644
--- a/src/XTwitterScraper/Models/X/Tweets/TweetGetRepliesParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/TweetGetRepliesParams.cs
@@ -165,13 +165,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/tweets/{0}/replies", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Tweets/TweetGetRetweetersParams.cs b/src/XTwitterScraper/Models/X/Tweets/TweetGetRetweetersParams.cs
index ae2d508..4c7515a 100644
--- a/src/XTwitterScraper/Models/X/Tweets/TweetGetRetweetersParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/TweetGetRetweetersParams.cs
@@ -123,13 +123,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/tweets/{0}/retweeters", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Tweets/TweetGetThreadParams.cs b/src/XTwitterScraper/Models/X/Tweets/TweetGetThreadParams.cs
index b023943..a6878e9 100644
--- a/src/XTwitterScraper/Models/X/Tweets/TweetGetThreadParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/TweetGetThreadParams.cs
@@ -122,13 +122,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/tweets/{0}/thread", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Tweets/TweetListParams.cs b/src/XTwitterScraper/Models/X/Tweets/TweetListParams.cs
index 9cabf0e..6d8964b 100644
--- a/src/XTwitterScraper/Models/X/Tweets/TweetListParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/TweetListParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/tweets")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Tweets/TweetRetrieveParams.cs b/src/XTwitterScraper/Models/X/Tweets/TweetRetrieveParams.cs
index 219217a..000aa8a 100644
--- a/src/XTwitterScraper/Models/X/Tweets/TweetRetrieveParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/TweetRetrieveParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/tweets/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Tweets/TweetSearchParams.cs b/src/XTwitterScraper/Models/X/Tweets/TweetSearchParams.cs
index bca5f6d..a9c3526 100644
--- a/src/XTwitterScraper/Models/X/Tweets/TweetSearchParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/TweetSearchParams.cs
@@ -208,13 +208,13 @@ public virtual bool Equals(TweetSearchParams? other)
{
return new System::UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/tweets/search")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Users/Follow/FollowCreateParams.cs b/src/XTwitterScraper/Models/X/Users/Follow/FollowCreateParams.cs
index 9bb564c..ee31d76 100644
--- a/src/XTwitterScraper/Models/X/Users/Follow/FollowCreateParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/Follow/FollowCreateParams.cs
@@ -131,7 +131,7 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/users/{0}/follow", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -146,7 +146,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Users/Follow/FollowDeleteAllParams.cs b/src/XTwitterScraper/Models/X/Users/Follow/FollowDeleteAllParams.cs
index df6abe6..6b23895 100644
--- a/src/XTwitterScraper/Models/X/Users/Follow/FollowDeleteAllParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/Follow/FollowDeleteAllParams.cs
@@ -131,7 +131,7 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/users/{0}/follow", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
@@ -146,7 +146,7 @@ public override Uri Url(ClientOptions options)
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveBatchParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveBatchParams.cs
index ded717d..7d6c3db 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveBatchParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveBatchParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/users/batch")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowersParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowersParams.cs
index 099370d..8273b1e 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowersParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowersParams.cs
@@ -144,13 +144,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/users/{0}/followers", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowersYouKnowParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowersYouKnowParams.cs
index c5478ca..48161c0 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowersYouKnowParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowersYouKnowParams.cs
@@ -125,13 +125,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/users/{0}/followers-you-know", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowingParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowingParams.cs
index 5d59e01..4ee28c8 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowingParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowingParams.cs
@@ -144,13 +144,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/users/{0}/following", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveLikesParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveLikesParams.cs
index ef28442..f5def2d 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveLikesParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveLikesParams.cs
@@ -122,13 +122,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/users/{0}/likes", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveMediaParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveMediaParams.cs
index 72b5868..4e4d488 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveMediaParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveMediaParams.cs
@@ -122,13 +122,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/users/{0}/media", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveMentionsParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveMentionsParams.cs
index b69de09..f7a8c92 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveMentionsParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveMentionsParams.cs
@@ -165,13 +165,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/users/{0}/mentions", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveParams.cs
index a2eab67..961ed30 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/users/{0}", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveSearchParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveSearchParams.cs
index 9723382..67a7c6a 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveSearchParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveSearchParams.cs
@@ -122,13 +122,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/users/search")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveTweetsParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveTweetsParams.cs
index b4e501f..e5ab658 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveTweetsParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveTweetsParams.cs
@@ -164,13 +164,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/users/{0}/tweets", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveVerifiedFollowersParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveVerifiedFollowersParams.cs
index 7505df9..d6697d1 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveVerifiedFollowersParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveVerifiedFollowersParams.cs
@@ -125,13 +125,13 @@ public override Uri Url(ClientOptions options)
+ string.Format("/x/users/{0}/verified-followers", this.ID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/XGetArticleParams.cs b/src/XTwitterScraper/Models/X/XGetArticleParams.cs
index 236bf25..ca20cc4 100644
--- a/src/XTwitterScraper/Models/X/XGetArticleParams.cs
+++ b/src/XTwitterScraper/Models/X/XGetArticleParams.cs
@@ -101,13 +101,13 @@ public override Uri Url(ClientOptions options)
options.BaseUrl.ToString().TrimEnd('/') + string.Format("/x/articles/{0}", this.TweetID)
)
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/XGetHomeTimelineParams.cs b/src/XTwitterScraper/Models/X/XGetHomeTimelineParams.cs
index ea81b1a..3d94a8c 100644
--- a/src/XTwitterScraper/Models/X/XGetHomeTimelineParams.cs
+++ b/src/XTwitterScraper/Models/X/XGetHomeTimelineParams.cs
@@ -130,13 +130,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/timeline")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/XGetNotificationsParams.cs b/src/XTwitterScraper/Models/X/XGetNotificationsParams.cs
index dbb4e1e..d8d2d97 100644
--- a/src/XTwitterScraper/Models/X/XGetNotificationsParams.cs
+++ b/src/XTwitterScraper/Models/X/XGetNotificationsParams.cs
@@ -134,13 +134,13 @@ public virtual bool Equals(XGetNotificationsParams? other)
{
return new System::UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/notifications")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
diff --git a/src/XTwitterScraper/Models/X/XGetTrendsParams.cs b/src/XTwitterScraper/Models/X/XGetTrendsParams.cs
index f5097ef..9c9203c 100644
--- a/src/XTwitterScraper/Models/X/XGetTrendsParams.cs
+++ b/src/XTwitterScraper/Models/X/XGetTrendsParams.cs
@@ -17,6 +17,48 @@ namespace XTwitterScraper.Models.X;
///
public record class XGetTrendsParams : ParamsBase
{
+ ///
+ /// Number of trending topics to return (1-50, default 30)
+ ///
+ public long? Count
+ {
+ get
+ {
+ this._rawQueryData.Freeze();
+ return this._rawQueryData.GetNullableStruct("count");
+ }
+ init
+ {
+ if (value == null)
+ {
+ return;
+ }
+
+ this._rawQueryData.Set("count", value);
+ }
+ }
+
+ ///
+ /// Region WOEID (1=Worldwide, 23424977=US, 23424975=UK, 23424969=Turkey)
+ ///
+ public long? Woeid
+ {
+ get
+ {
+ this._rawQueryData.Freeze();
+ return this._rawQueryData.GetNullableStruct("woeid");
+ }
+ init
+ {
+ if (value == null)
+ {
+ return;
+ }
+
+ this._rawQueryData.Set("woeid", value);
+ }
+ }
+
public XGetTrendsParams() { }
#pragma warning disable CS8618
@@ -88,13 +130,13 @@ public override Uri Url(ClientOptions options)
{
return new UriBuilder(options.BaseUrl.ToString().TrimEnd('/') + "/x/trends")
{
- Query = this.QueryString(options, SecurityOptions.All()),
+ Query = this.QueryString(options),
}.Uri;
}
internal override void AddHeadersToRequest(HttpRequestMessage request, ClientOptions options)
{
- ParamsBase.AddDefaultHeaders(request, options, SecurityOptions.All());
+ ParamsBase.AddDefaultHeaders(request, options);
foreach (var item in this.RawHeaderData)
{
ParamsBase.AddHeaderElementToRequest(request, item.Key, item.Value);
From 7f889123bd4ab6c1493141e4d5542d7aab9f6cdb Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 10 Apr 2026 00:58:44 +0000
Subject: [PATCH 12/20] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 6990cbd..09cf175 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 117
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-2858bb9108d72cf365d38f4c26ea2a4e623e2966d289aa4780e001444947e715.yml
-openapi_spec_hash: e12a914dd897caf78790dfe9de61215f
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-4db406196a46990fa10aec79fa43057730892455c8f98c1a8ba1fdf073c63a4a.yml
+openapi_spec_hash: d576fec2de09fbd259489ead289f6139
config_hash: 858d125643c0fca8bbbce07d3a2ce4b5
From 739e7ff053b9f231bd7f4a76803a2631439d3947 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 10 Apr 2026 01:10:54 +0000
Subject: [PATCH 13/20] feat(api): api update
---
.stats.yml | 4 ++--
.../Models/Trends/TrendListParams.cs | 2 +-
.../CommunityRetrieveInfoParams.cs | 2 +-
.../CommunityRetrieveMembersParams.cs | 2 +-
.../CommunityRetrieveModeratorsParams.cs | 2 +-
.../CommunityRetrieveSearchParams.cs | 2 +-
.../Tweets/TweetListByCommunityParams.cs | 2 +-
.../X/Communities/Tweets/TweetListParams.cs | 2 +-
.../Models/X/Followers/FollowerCheckParams.cs | 2 +-
.../X/Lists/ListRetrieveFollowersParams.cs | 2 +-
.../X/Lists/ListRetrieveMembersParams.cs | 2 +-
.../X/Lists/ListRetrieveTweetsParams.cs | 2 +-
.../Models/X/Media/MediaDownloadParams.cs | 2 +-
.../X/Tweets/TweetGetFavoritersParams.cs | 2 +-
.../Models/X/Tweets/TweetGetQuotesParams.cs | 2 +-
.../Models/X/Tweets/TweetGetRepliesParams.cs | 2 +-
.../X/Tweets/TweetGetRetweetersParams.cs | 2 +-
.../Models/X/Tweets/TweetGetThreadParams.cs | 2 +-
.../Models/X/Tweets/TweetRetrieveParams.cs | 2 +-
.../Models/X/Tweets/TweetSearchParams.cs | 2 +-
.../Models/X/Users/UserRetrieveBatchParams.cs | 2 +-
.../X/Users/UserRetrieveFollowersParams.cs | 2 +-
.../UserRetrieveFollowersYouKnowParams.cs | 2 +-
.../X/Users/UserRetrieveFollowingParams.cs | 2 +-
.../Models/X/Users/UserRetrieveLikesParams.cs | 2 +-
.../Models/X/Users/UserRetrieveMediaParams.cs | 2 +-
.../X/Users/UserRetrieveMentionsParams.cs | 2 +-
.../Models/X/Users/UserRetrieveParams.cs | 2 +-
.../X/Users/UserRetrieveTweetsParams.cs | 2 +-
.../UserRetrieveVerifiedFollowersParams.cs | 2 +-
.../Models/X/XGetTrendsParams.cs | 2 +-
.../Services/IAccountService.cs | 2 +-
.../Services/IComposeService.cs | 2 +-
.../Services/ICreditService.cs | 2 +-
src/XTwitterScraper/Services/IDraftService.cs | 2 +-
src/XTwitterScraper/Services/IRadarService.cs | 2 +-
src/XTwitterScraper/Services/IStyleService.cs | 2 +-
.../Services/ISubscribeService.cs | 2 +-
src/XTwitterScraper/Services/ITrendService.cs | 4 ++--
.../Services/IWebhookService.cs | 2 +-
src/XTwitterScraper/Services/IXService.cs | 10 ++++-----
.../Services/X/Communities/ITweetService.cs | 6 ++---
.../Services/X/IBookmarkService.cs | 2 +-
.../Services/X/ICommunityService.cs | 8 +++----
.../Services/X/IFollowerService.cs | 4 ++--
.../Services/X/IListService.cs | 8 +++----
.../Services/X/IMediaService.cs | 4 ++--
.../Services/X/ITweetService.cs | 14 ++++++------
.../Services/X/IUserService.cs | 22 +++++++++----------
49 files changed, 80 insertions(+), 82 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 09cf175..9619707 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 117
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-4db406196a46990fa10aec79fa43057730892455c8f98c1a8ba1fdf073c63a4a.yml
-openapi_spec_hash: d576fec2de09fbd259489ead289f6139
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-6b4bcecd87f7f923858fa3afb23878738328f0d77665d69a4908be1d785a6f72.yml
+openapi_spec_hash: 4390e0241c0a3beb7c758c862a0d17a6
config_hash: 858d125643c0fca8bbbce07d3a2ce4b5
diff --git a/src/XTwitterScraper/Models/Trends/TrendListParams.cs b/src/XTwitterScraper/Models/Trends/TrendListParams.cs
index dc9039c..3a32374 100644
--- a/src/XTwitterScraper/Models/Trends/TrendListParams.cs
+++ b/src/XTwitterScraper/Models/Trends/TrendListParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.Trends;
///
-/// Get regional trending topics
+/// Get trending hashtags & topics by region (alias)
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveInfoParams.cs b/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveInfoParams.cs
index b93dea9..5cb1786 100644
--- a/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveInfoParams.cs
+++ b/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveInfoParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Communities;
///
-/// Get community details
+/// Get community name, description & member count
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveMembersParams.cs b/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveMembersParams.cs
index 342bd8c..acebfb6 100644
--- a/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveMembersParams.cs
+++ b/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveMembersParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Communities;
///
-/// Get community members
+/// List members of a community
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveModeratorsParams.cs b/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveModeratorsParams.cs
index f4f2fd4..43b622c 100644
--- a/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveModeratorsParams.cs
+++ b/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveModeratorsParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Communities;
///
-/// Get community moderators
+/// List moderators of a community
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveSearchParams.cs b/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveSearchParams.cs
index eaf5f59..013e0f8 100644
--- a/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveSearchParams.cs
+++ b/src/XTwitterScraper/Models/X/Communities/CommunityRetrieveSearchParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Communities;
///
-/// Search tweets across communities
+/// Search for communities by keyword
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Communities/Tweets/TweetListByCommunityParams.cs b/src/XTwitterScraper/Models/X/Communities/Tweets/TweetListByCommunityParams.cs
index 51919a5..64f6afb 100644
--- a/src/XTwitterScraper/Models/X/Communities/Tweets/TweetListByCommunityParams.cs
+++ b/src/XTwitterScraper/Models/X/Communities/Tweets/TweetListByCommunityParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Communities.Tweets;
///
-/// Get community tweets
+/// List tweets posted in a community
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Communities/Tweets/TweetListParams.cs b/src/XTwitterScraper/Models/X/Communities/Tweets/TweetListParams.cs
index 2d14586..3dc3c2e 100644
--- a/src/XTwitterScraper/Models/X/Communities/Tweets/TweetListParams.cs
+++ b/src/XTwitterScraper/Models/X/Communities/Tweets/TweetListParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Communities.Tweets;
///
-/// Search tweets across all communities
+/// List tweets across all communities
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Followers/FollowerCheckParams.cs b/src/XTwitterScraper/Models/X/Followers/FollowerCheckParams.cs
index 3fade70..339f4be 100644
--- a/src/XTwitterScraper/Models/X/Followers/FollowerCheckParams.cs
+++ b/src/XTwitterScraper/Models/X/Followers/FollowerCheckParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Followers;
///
-/// Check follow relationship
+/// Check if one user follows another
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Lists/ListRetrieveFollowersParams.cs b/src/XTwitterScraper/Models/X/Lists/ListRetrieveFollowersParams.cs
index 6e01004..9e619f3 100644
--- a/src/XTwitterScraper/Models/X/Lists/ListRetrieveFollowersParams.cs
+++ b/src/XTwitterScraper/Models/X/Lists/ListRetrieveFollowersParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Lists;
///
-/// Get list followers
+/// List followers of an X List
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Lists/ListRetrieveMembersParams.cs b/src/XTwitterScraper/Models/X/Lists/ListRetrieveMembersParams.cs
index 2ed587b..21c5b73 100644
--- a/src/XTwitterScraper/Models/X/Lists/ListRetrieveMembersParams.cs
+++ b/src/XTwitterScraper/Models/X/Lists/ListRetrieveMembersParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Lists;
///
-/// Get list members
+/// List members of an X List
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Lists/ListRetrieveTweetsParams.cs b/src/XTwitterScraper/Models/X/Lists/ListRetrieveTweetsParams.cs
index 0e3c0d6..0495f38 100644
--- a/src/XTwitterScraper/Models/X/Lists/ListRetrieveTweetsParams.cs
+++ b/src/XTwitterScraper/Models/X/Lists/ListRetrieveTweetsParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Lists;
///
-/// Get list tweets
+/// List tweets from an X List
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Media/MediaDownloadParams.cs b/src/XTwitterScraper/Models/X/Media/MediaDownloadParams.cs
index f491aeb..ee272da 100644
--- a/src/XTwitterScraper/Models/X/Media/MediaDownloadParams.cs
+++ b/src/XTwitterScraper/Models/X/Media/MediaDownloadParams.cs
@@ -11,7 +11,7 @@
namespace XTwitterScraper.Models.X.Media;
///
-/// Download tweet media
+/// Download images & videos from tweets
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Tweets/TweetGetFavoritersParams.cs b/src/XTwitterScraper/Models/X/Tweets/TweetGetFavoritersParams.cs
index 197c5e6..c88296c 100644
--- a/src/XTwitterScraper/Models/X/Tweets/TweetGetFavoritersParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/TweetGetFavoritersParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Tweets;
///
-/// Get users who liked a tweet
+/// List users who liked a tweet
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Tweets/TweetGetQuotesParams.cs b/src/XTwitterScraper/Models/X/Tweets/TweetGetQuotesParams.cs
index 986dd16..c910c25 100644
--- a/src/XTwitterScraper/Models/X/Tweets/TweetGetQuotesParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/TweetGetQuotesParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Tweets;
///
-/// Get quote tweets of a tweet
+/// List quote tweets of a tweet
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Tweets/TweetGetRepliesParams.cs b/src/XTwitterScraper/Models/X/Tweets/TweetGetRepliesParams.cs
index 8b93517..2b01be8 100644
--- a/src/XTwitterScraper/Models/X/Tweets/TweetGetRepliesParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/TweetGetRepliesParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Tweets;
///
-/// Get replies to a tweet
+/// List replies to a tweet
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Tweets/TweetGetRetweetersParams.cs b/src/XTwitterScraper/Models/X/Tweets/TweetGetRetweetersParams.cs
index 4c7515a..3958ccd 100644
--- a/src/XTwitterScraper/Models/X/Tweets/TweetGetRetweetersParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/TweetGetRetweetersParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Tweets;
///
-/// Get users who retweeted a tweet
+/// List users who retweeted a tweet
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Tweets/TweetGetThreadParams.cs b/src/XTwitterScraper/Models/X/Tweets/TweetGetThreadParams.cs
index a6878e9..f783399 100644
--- a/src/XTwitterScraper/Models/X/Tweets/TweetGetThreadParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/TweetGetThreadParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Tweets;
///
-/// Get thread context for a tweet
+/// Get full conversation thread for a tweet
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Tweets/TweetRetrieveParams.cs b/src/XTwitterScraper/Models/X/Tweets/TweetRetrieveParams.cs
index 000aa8a..05d15de 100644
--- a/src/XTwitterScraper/Models/X/Tweets/TweetRetrieveParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/TweetRetrieveParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Tweets;
///
-/// Look up tweet
+/// Get tweet with full text, author, metrics & media
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Tweets/TweetSearchParams.cs b/src/XTwitterScraper/Models/X/Tweets/TweetSearchParams.cs
index a9c3526..41baabe 100644
--- a/src/XTwitterScraper/Models/X/Tweets/TweetSearchParams.cs
+++ b/src/XTwitterScraper/Models/X/Tweets/TweetSearchParams.cs
@@ -11,7 +11,7 @@
namespace XTwitterScraper.Models.X.Tweets;
///
-/// Search tweets
+/// Search tweets with X query operators & pagination
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveBatchParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveBatchParams.cs
index 7d6c3db..76ca644 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveBatchParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveBatchParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Users;
///
-/// Get multiple users by IDs
+/// Look up multiple users by IDs in one call
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowersParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowersParams.cs
index 8273b1e..c0af58b 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowersParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowersParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Users;
///
-/// Get user followers
+/// List followers of a user
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowersYouKnowParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowersYouKnowParams.cs
index 48161c0..02c2d27 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowersYouKnowParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowersYouKnowParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Users;
///
-/// Get followers you know for a user
+/// List mutual followers between you and a user
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowingParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowingParams.cs
index 4ee28c8..0fcc3b6 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowingParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveFollowingParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Users;
///
-/// Get users this user follows
+/// List accounts a user follows
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveLikesParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveLikesParams.cs
index f5def2d..21bb571 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveLikesParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveLikesParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Users;
///
-/// Get tweets liked by a user
+/// List tweets liked by a user
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveMediaParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveMediaParams.cs
index 4e4d488..5016dc2 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveMediaParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveMediaParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Users;
///
-/// Get media tweets by a user
+/// List media tweets posted by a user
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveMentionsParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveMentionsParams.cs
index f7a8c92..c31a23d 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveMentionsParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveMentionsParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Users;
///
-/// Get tweets mentioning a user
+/// List tweets mentioning a user
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveParams.cs
index 961ed30..e141ba9 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Users;
///
-/// Look up X user
+/// Get user profile with follower counts & verification
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveTweetsParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveTweetsParams.cs
index e5ab658..10b56ef 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveTweetsParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveTweetsParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Users;
///
-/// Get recent tweets by a user
+/// List recent tweets posted by a user
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/Users/UserRetrieveVerifiedFollowersParams.cs b/src/XTwitterScraper/Models/X/Users/UserRetrieveVerifiedFollowersParams.cs
index d6697d1..39b9ce6 100644
--- a/src/XTwitterScraper/Models/X/Users/UserRetrieveVerifiedFollowersParams.cs
+++ b/src/XTwitterScraper/Models/X/Users/UserRetrieveVerifiedFollowersParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X.Users;
///
-/// Get verified followers
+/// List verified followers of a user
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Models/X/XGetTrendsParams.cs b/src/XTwitterScraper/Models/X/XGetTrendsParams.cs
index 9c9203c..251395c 100644
--- a/src/XTwitterScraper/Models/X/XGetTrendsParams.cs
+++ b/src/XTwitterScraper/Models/X/XGetTrendsParams.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Models.X;
///
-/// Get trending topics
+/// Get trending hashtags & topics from X by region
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Services/IAccountService.cs b/src/XTwitterScraper/Services/IAccountService.cs
index b243a48..e463254 100644
--- a/src/XTwitterScraper/Services/IAccountService.cs
+++ b/src/XTwitterScraper/Services/IAccountService.cs
@@ -7,7 +7,7 @@
namespace XTwitterScraper.Services;
///
-/// Account info & settings
+/// Account info and settings
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Services/IComposeService.cs b/src/XTwitterScraper/Services/IComposeService.cs
index 4cb0ad4..7542552 100644
--- a/src/XTwitterScraper/Services/IComposeService.cs
+++ b/src/XTwitterScraper/Services/IComposeService.cs
@@ -7,7 +7,7 @@
namespace XTwitterScraper.Services;
///
-/// Tweet composition, drafts, writing styles & radar
+/// AI tweet composition, drafts, writing styles, and radar
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Services/ICreditService.cs b/src/XTwitterScraper/Services/ICreditService.cs
index dd40d79..b89b941 100644
--- a/src/XTwitterScraper/Services/ICreditService.cs
+++ b/src/XTwitterScraper/Services/ICreditService.cs
@@ -7,7 +7,7 @@
namespace XTwitterScraper.Services;
///
-/// Subscription & billing
+/// Subscription, billing, and credits
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Services/IDraftService.cs b/src/XTwitterScraper/Services/IDraftService.cs
index e02b059..5be294a 100644
--- a/src/XTwitterScraper/Services/IDraftService.cs
+++ b/src/XTwitterScraper/Services/IDraftService.cs
@@ -7,7 +7,7 @@
namespace XTwitterScraper.Services;
///
-/// Tweet composition, drafts, writing styles & radar
+/// AI tweet composition, drafts, writing styles, and radar
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Services/IRadarService.cs b/src/XTwitterScraper/Services/IRadarService.cs
index 755bbf5..aab4dc6 100644
--- a/src/XTwitterScraper/Services/IRadarService.cs
+++ b/src/XTwitterScraper/Services/IRadarService.cs
@@ -7,7 +7,7 @@
namespace XTwitterScraper.Services;
///
-/// Tweet composition, drafts, writing styles & radar
+/// AI tweet composition, drafts, writing styles, and radar
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Services/IStyleService.cs b/src/XTwitterScraper/Services/IStyleService.cs
index f82ee12..f3495a9 100644
--- a/src/XTwitterScraper/Services/IStyleService.cs
+++ b/src/XTwitterScraper/Services/IStyleService.cs
@@ -7,7 +7,7 @@
namespace XTwitterScraper.Services;
///
-/// Tweet composition, drafts, writing styles & radar
+/// AI tweet composition, drafts, writing styles, and radar
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Services/ISubscribeService.cs b/src/XTwitterScraper/Services/ISubscribeService.cs
index 7f9a3ad..97e320d 100644
--- a/src/XTwitterScraper/Services/ISubscribeService.cs
+++ b/src/XTwitterScraper/Services/ISubscribeService.cs
@@ -7,7 +7,7 @@
namespace XTwitterScraper.Services;
///
-/// Subscription & billing
+/// Subscription, billing, and credits
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Services/ITrendService.cs b/src/XTwitterScraper/Services/ITrendService.cs
index 96b15e3..b4436c8 100644
--- a/src/XTwitterScraper/Services/ITrendService.cs
+++ b/src/XTwitterScraper/Services/ITrendService.cs
@@ -7,7 +7,7 @@
namespace XTwitterScraper.Services;
///
-/// Trending topics by region
+/// Trending topics and hashtags by region
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
@@ -29,7 +29,7 @@ public interface ITrendService
ITrendService WithOptions(Func modifier);
///
- /// Get regional trending topics
+ /// Get trending hashtags & topics by region (alias)
///
Task List(
TrendListParams? parameters = null,
diff --git a/src/XTwitterScraper/Services/IWebhookService.cs b/src/XTwitterScraper/Services/IWebhookService.cs
index 8fcb495..33b2149 100644
--- a/src/XTwitterScraper/Services/IWebhookService.cs
+++ b/src/XTwitterScraper/Services/IWebhookService.cs
@@ -7,7 +7,7 @@
namespace XTwitterScraper.Services;
///
-/// Webhook endpoint management & delivery
+/// Webhook endpoint management and delivery
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Services/IXService.cs b/src/XTwitterScraper/Services/IXService.cs
index df622b0..f6ffc5d 100644
--- a/src/XTwitterScraper/Services/IXService.cs
+++ b/src/XTwitterScraper/Services/IXService.cs
@@ -9,11 +9,9 @@
namespace XTwitterScraper.Services;
///
-/// X data lookups (subscription required)
-///
-/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
-/// breaking changes in non-major versions. We may add new methods in the future that
-/// cause existing derived classes to break.
+/// NOTE: Do not inherit from this type outside the SDK unless you're okay with breaking
+/// changes in non-major versions. We may add new methods in the future that cause
+/// existing derived classes to break.
///
public interface IXService
{
@@ -82,7 +80,7 @@ Task GetNotifications(
);
///
- /// Get trending topics
+ /// Get trending hashtags & topics from X by region
///
Task GetTrends(
XGetTrendsParams? parameters = null,
diff --git a/src/XTwitterScraper/Services/X/Communities/ITweetService.cs b/src/XTwitterScraper/Services/X/Communities/ITweetService.cs
index ef6bd2f..4547b91 100644
--- a/src/XTwitterScraper/Services/X/Communities/ITweetService.cs
+++ b/src/XTwitterScraper/Services/X/Communities/ITweetService.cs
@@ -8,7 +8,7 @@
namespace XTwitterScraper.Services.X.Communities;
///
-/// X data lookups (subscription required)
+/// X Community info, members, and tweets
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
@@ -30,7 +30,7 @@ public interface ITweetService
ITweetService WithOptions(Func modifier);
///
- /// Search tweets across all communities
+ /// List tweets across all communities
///
Task List(
TweetListParams parameters,
@@ -38,7 +38,7 @@ Task List(
);
///
- /// Get community tweets
+ /// List tweets posted in a community
///
Task ListByCommunity(
TweetListByCommunityParams parameters,
diff --git a/src/XTwitterScraper/Services/X/IBookmarkService.cs b/src/XTwitterScraper/Services/X/IBookmarkService.cs
index 09e7932..273040a 100644
--- a/src/XTwitterScraper/Services/X/IBookmarkService.cs
+++ b/src/XTwitterScraper/Services/X/IBookmarkService.cs
@@ -8,7 +8,7 @@
namespace XTwitterScraper.Services.X;
///
-/// X data lookups (subscription required)
+/// Look up, search, and analyze individual tweets
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
diff --git a/src/XTwitterScraper/Services/X/ICommunityService.cs b/src/XTwitterScraper/Services/X/ICommunityService.cs
index c29eb60..2448633 100644
--- a/src/XTwitterScraper/Services/X/ICommunityService.cs
+++ b/src/XTwitterScraper/Services/X/ICommunityService.cs
@@ -56,7 +56,7 @@ Task Delete(
);
///
- /// Get community details
+ /// Get community name, description & member count
///
Task RetrieveInfo(
CommunityRetrieveInfoParams parameters,
@@ -71,7 +71,7 @@ Task RetrieveInfo(
);
///
- /// Get community members
+ /// List members of a community
///
Task RetrieveMembers(
CommunityRetrieveMembersParams parameters,
@@ -86,7 +86,7 @@ Task RetrieveMembers(
);
///
- /// Get community moderators
+ /// List moderators of a community
///
Task RetrieveModerators(
CommunityRetrieveModeratorsParams parameters,
@@ -101,7 +101,7 @@ Task RetrieveModerators(
);
///
- /// Search tweets across communities
+ /// Search for communities by keyword
///
Task RetrieveSearch(
CommunityRetrieveSearchParams parameters,
diff --git a/src/XTwitterScraper/Services/X/IFollowerService.cs b/src/XTwitterScraper/Services/X/IFollowerService.cs
index 049d816..34f648a 100644
--- a/src/XTwitterScraper/Services/X/IFollowerService.cs
+++ b/src/XTwitterScraper/Services/X/IFollowerService.cs
@@ -7,7 +7,7 @@
namespace XTwitterScraper.Services.X;
///
-/// X data lookups (subscription required)
+/// Look up, search, and explore user profiles and relationships
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
@@ -29,7 +29,7 @@ public interface IFollowerService
IFollowerService WithOptions(Func modifier);
///
- /// Check follow relationship
+ /// Check if one user follows another
///
Task Check(
FollowerCheckParams parameters,
diff --git a/src/XTwitterScraper/Services/X/IListService.cs b/src/XTwitterScraper/Services/X/IListService.cs
index f1533ab..4406ed6 100644
--- a/src/XTwitterScraper/Services/X/IListService.cs
+++ b/src/XTwitterScraper/Services/X/IListService.cs
@@ -8,7 +8,7 @@
namespace XTwitterScraper.Services.X;
///
-/// X data lookups (subscription required)
+/// X List followers, members, and tweets
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
@@ -30,7 +30,7 @@ public interface IListService
IListService WithOptions(Func modifier);
///
- /// Get list followers
+ /// List followers of an X List
///
Task RetrieveFollowers(
ListRetrieveFollowersParams parameters,
@@ -45,7 +45,7 @@ Task RetrieveFollowers(
);
///
- /// Get list members
+ /// List members of an X List
///
Task RetrieveMembers(
ListRetrieveMembersParams parameters,
@@ -60,7 +60,7 @@ Task RetrieveMembers(
);
///
- /// Get list tweets
+ /// List tweets from an X List
///
Task RetrieveTweets(
ListRetrieveTweetsParams parameters,
diff --git a/src/XTwitterScraper/Services/X/IMediaService.cs b/src/XTwitterScraper/Services/X/IMediaService.cs
index 55b734b..15a1281 100644
--- a/src/XTwitterScraper/Services/X/IMediaService.cs
+++ b/src/XTwitterScraper/Services/X/IMediaService.cs
@@ -7,7 +7,7 @@
namespace XTwitterScraper.Services.X;
///
-/// Media upload & download
+/// Media upload and download
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
@@ -29,7 +29,7 @@ public interface IMediaService
IMediaService WithOptions(Func modifier);
///
- /// Download tweet media
+ /// Download images & videos from tweets
///
Task Download(
MediaDownloadParams? parameters = null,
diff --git a/src/XTwitterScraper/Services/X/ITweetService.cs b/src/XTwitterScraper/Services/X/ITweetService.cs
index 4a7e639..642253a 100644
--- a/src/XTwitterScraper/Services/X/ITweetService.cs
+++ b/src/XTwitterScraper/Services/X/ITweetService.cs
@@ -41,7 +41,7 @@ Task Create(
);
///
- /// Look up tweet
+ /// Get tweet with full text, author, metrics & media
///
Task Retrieve(
TweetRetrieveParams parameters,
@@ -79,7 +79,7 @@ Task Delete(
);
///
- /// Get users who liked a tweet
+ /// List users who liked a tweet
///
Task GetFavoriters(
TweetGetFavoritersParams parameters,
@@ -94,7 +94,7 @@ Task GetFavoriters(
);
///
- /// Get quote tweets of a tweet
+ /// List quote tweets of a tweet
///
Task GetQuotes(
TweetGetQuotesParams parameters,
@@ -109,7 +109,7 @@ Task GetQuotes(
);
///
- /// Get replies to a tweet
+ /// List replies to a tweet
///
Task GetReplies(
TweetGetRepliesParams parameters,
@@ -124,7 +124,7 @@ Task GetReplies(
);
///
- /// Get users who retweeted a tweet
+ /// List users who retweeted a tweet
///
Task GetRetweeters(
TweetGetRetweetersParams parameters,
@@ -139,7 +139,7 @@ Task GetRetweeters(
);
///
- /// Get thread context for a tweet
+ /// Get full conversation thread for a tweet
///
Task GetThread(
TweetGetThreadParams parameters,
@@ -154,7 +154,7 @@ Task GetThread(
);
///
- /// Search tweets
+ /// Search tweets with X query operators & pagination
///
Task Search(
TweetSearchParams parameters,
diff --git a/src/XTwitterScraper/Services/X/IUserService.cs b/src/XTwitterScraper/Services/X/IUserService.cs
index 0c0ece9..310a2a6 100644
--- a/src/XTwitterScraper/Services/X/IUserService.cs
+++ b/src/XTwitterScraper/Services/X/IUserService.cs
@@ -9,7 +9,7 @@
namespace XTwitterScraper.Services.X;
///
-/// X data lookups (subscription required)
+/// Look up, search, and explore user profiles and relationships
///
/// NOTE: Do not inherit from this type outside the SDK unless you're okay with
/// breaking changes in non-major versions. We may add new methods in the future that
@@ -33,7 +33,7 @@ public interface IUserService
IFollowService Follow { get; }
///
- /// Look up X user
+ /// Get user profile with follower counts & verification
///
Task Retrieve(
UserRetrieveParams parameters,
@@ -48,7 +48,7 @@ Task Retrieve(
);
///
- /// Get multiple users by IDs
+ /// Look up multiple users by IDs in one call
///
Task RetrieveBatch(
UserRetrieveBatchParams parameters,
@@ -56,7 +56,7 @@ Task RetrieveBatch(
);
///
- /// Get user followers
+ /// List followers of a user
///
Task RetrieveFollowers(
UserRetrieveFollowersParams parameters,
@@ -71,7 +71,7 @@ Task RetrieveFollowers(
);
///
- /// Get followers you know for a user
+ /// List mutual followers between you and a user
///
Task RetrieveFollowersYouKnow(
UserRetrieveFollowersYouKnowParams parameters,
@@ -86,7 +86,7 @@ Task RetrieveFollowersYouKnow(
);
///
- /// Get users this user follows
+ /// List accounts a user follows
///
Task RetrieveFollowing(
UserRetrieveFollowingParams parameters,
@@ -101,7 +101,7 @@ Task RetrieveFollowing(
);
///
- /// Get tweets liked by a user
+ /// List tweets liked by a user
///
Task RetrieveLikes(
UserRetrieveLikesParams parameters,
@@ -116,7 +116,7 @@ Task RetrieveLikes(
);
///
- /// Get media tweets by a user
+ /// List media tweets posted by a user
///
Task RetrieveMedia(
UserRetrieveMediaParams parameters,
@@ -131,7 +131,7 @@ Task RetrieveMedia(
);
///
- /// Get tweets mentioning a user
+ /// List tweets mentioning a user
///
Task RetrieveMentions(
UserRetrieveMentionsParams parameters,
@@ -154,7 +154,7 @@ Task RetrieveSearch(
);
///
- /// Get recent tweets by a user
+ /// List recent tweets posted by a user
///
Task RetrieveTweets(
UserRetrieveTweetsParams parameters,
@@ -169,7 +169,7 @@ Task RetrieveTweets(
);
///
- /// Get verified followers
+ /// List verified followers of a user
///
Task RetrieveVerifiedFollowers(
UserRetrieveVerifiedFollowersParams parameters,
From 37caca9b58ac39a47307b5f60868e9ec8e7309ff Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Fri, 10 Apr 2026 04:32:37 +0000
Subject: [PATCH 14/20] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 9619707..17261c6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 117
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-6b4bcecd87f7f923858fa3afb23878738328f0d77665d69a4908be1d785a6f72.yml
-openapi_spec_hash: 4390e0241c0a3beb7c758c862a0d17a6
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-d73516284a1ce2bcd4813b30da272e8111a453219aab0b642e1b0e17e68c0fc5.yml
+openapi_spec_hash: c068c7b2c358f62d9fa743dc488a6280
config_hash: 858d125643c0fca8bbbce07d3a2ce4b5
From 8902ce6436c6df714e26f21939869c7bfc066895 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 11 Apr 2026 08:48:45 +0000
Subject: [PATCH 15/20] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 17261c6..83964e0 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 117
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-d73516284a1ce2bcd4813b30da272e8111a453219aab0b642e1b0e17e68c0fc5.yml
-openapi_spec_hash: c068c7b2c358f62d9fa743dc488a6280
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-1bba21960ade6b851f66bc41d97933b5a6a2732e2036c87c66ee261eb5bf0b92.yml
+openapi_spec_hash: a5892dad626d5629b96f56f6a58a7bc9
config_hash: 858d125643c0fca8bbbce07d3a2ce4b5
From 94707df9ac55d0ef735c93fb7d94ee02c25b0624 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sun, 12 Apr 2026 20:28:31 +0000
Subject: [PATCH 16/20] codegen metadata
---
.stats.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.stats.yml b/.stats.yml
index 83964e0..8931974 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 117
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-1bba21960ade6b851f66bc41d97933b5a6a2732e2036c87c66ee261eb5bf0b92.yml
-openapi_spec_hash: a5892dad626d5629b96f56f6a58a7bc9
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-6836376c178aa95a978c75ea632ac721779088347b17ec0c54a5b406e199f494.yml
+openapi_spec_hash: ce42f7f969994d74437c36a3d39232b3
config_hash: 858d125643c0fca8bbbce07d3a2ce4b5
From 1773360afd7751305c2fbad2350919bcc2e14e5e Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Thu, 16 Apr 2026 02:49:45 +0000
Subject: [PATCH 17/20] fix(tests): round-trip urls correctly
---
.../Account/AccountSetXUsernameParamsTest.cs | 4 +-
.../Account/AccountUpdateLocaleParamsTest.cs | 2 +-
.../Models/ApiKeys/ApiKeyCreateParamsTest.cs | 2 +-
.../Models/ApiKeys/ApiKeyRevokeParamsTest.cs | 2 +-
.../Models/Compose/ComposeCreateParamsTest.cs | 2 +-
.../Credits/CreditTopupBalanceParamsTest.cs | 2 +-
.../Models/Drafts/DraftCreateParamsTest.cs | 2 +-
.../Models/Drafts/DraftDeleteParamsTest.cs | 2 +-
.../Models/Drafts/DraftListParamsTest.cs | 8 ++--
.../Models/Drafts/DraftRetrieveParamsTest.cs | 2 +-
.../Models/Draws/DrawExportParamsTest.cs | 8 ++--
.../Models/Draws/DrawListParamsTest.cs | 4 +-
.../Models/Draws/DrawRetrieveParamsTest.cs | 2 +-
.../Models/Draws/DrawRunParamsTest.cs | 2 +-
.../Models/Events/EventListParamsTest.cs | 12 +++---
.../Models/Events/EventRetrieveParamsTest.cs | 2 +-
.../ExtractionEstimateCostParamsTest.cs | 4 +-
.../ExtractionExportResultsParamsTest.cs | 7 +++-
.../Extractions/ExtractionListParamsTest.cs | 12 +++---
.../ExtractionRetrieveParamsTest.cs | 7 +++-
.../Extractions/ExtractionRunParamsTest.cs | 2 +-
.../IntegrationCreateParamsTest.cs | 2 +-
.../IntegrationDeleteParamsTest.cs | 2 +-
.../IntegrationListDeliveriesParamsTest.cs | 7 +++-
.../IntegrationRetrieveParamsTest.cs | 2 +-
.../IntegrationSendTestParamsTest.cs | 4 +-
.../IntegrationUpdateParamsTest.cs | 2 +-
.../Monitors/MonitorCreateParamsTest.cs | 2 +-
.../Monitors/MonitorDeactivateParamsTest.cs | 2 +-
.../Monitors/MonitorRetrieveParamsTest.cs | 2 +-
.../Monitors/MonitorUpdateParamsTest.cs | 2 +-
.../RadarRetrieveTrendingTopicsParamsTest.cs | 12 +++---
.../Models/Styles/StyleAnalyzeParamsTest.cs | 2 +-
.../Models/Styles/StyleCompareParamsTest.cs | 12 +++---
.../Models/Styles/StyleDeleteParamsTest.cs | 2 +-
.../Styles/StyleGetPerformanceParamsTest.cs | 4 +-
.../Models/Styles/StyleRetrieveParamsTest.cs | 2 +-
.../Models/Styles/StyleUpdateParamsTest.cs | 2 +-
.../Support/Tickets/TicketCreateParamsTest.cs | 2 +-
.../Support/Tickets/TicketReplyParamsTest.cs | 4 +-
.../Tickets/TicketRetrieveParamsTest.cs | 7 +++-
.../Support/Tickets/TicketUpdateParamsTest.cs | 4 +-
.../Models/Trends/TrendListParamsTest.cs | 4 +-
.../Webhooks/WebhookCreateParamsTest.cs | 2 +-
.../Webhooks/WebhookDeactivateParamsTest.cs | 2 +-
.../WebhookListDeliveriesParamsTest.cs | 4 +-
.../Models/Webhooks/WebhookTestParamsTest.cs | 2 +-
.../Webhooks/WebhookUpdateParamsTest.cs | 2 +-
.../X/Accounts/AccountCreateParamsTest.cs | 2 +-
.../X/Accounts/AccountDeleteParamsTest.cs | 2 +-
.../X/Accounts/AccountReauthParamsTest.cs | 4 +-
.../X/Accounts/AccountRetrieveParamsTest.cs | 2 +-
.../X/Bookmarks/BookmarkListParamsTest.cs | 10 +++--
.../Communities/CommunityCreateParamsTest.cs | 2 +-
.../Communities/CommunityDeleteParamsTest.cs | 2 +-
.../CommunityRetrieveInfoParamsTest.cs | 4 +-
.../CommunityRetrieveMembersParamsTest.cs | 8 ++--
.../CommunityRetrieveModeratorsParamsTest.cs | 8 ++--
.../CommunityRetrieveSearchParamsTest.cs | 12 +++---
.../Communities/Join/JoinCreateParamsTest.cs | 4 +-
.../Join/JoinDeleteAllParamsTest.cs | 4 +-
.../Tweets/TweetListByCommunityParamsTest.cs | 8 ++--
.../Communities/Tweets/TweetListParamsTest.cs | 12 +++---
.../X/Dm/DmRetrieveHistoryParamsTest.cs | 8 ++--
.../Models/X/Dm/DmSendParamsTest.cs | 2 +-
.../X/Followers/FollowerCheckParamsTest.cs | 8 ++--
.../Lists/ListRetrieveFollowersParamsTest.cs | 7 +++-
.../X/Lists/ListRetrieveMembersParamsTest.cs | 7 +++-
.../X/Lists/ListRetrieveTweetsParamsTest.cs | 12 +++---
.../Models/X/Media/MediaDownloadParamsTest.cs | 2 +-
.../Models/X/Media/MediaUploadParamsTest.cs | 2 +-
.../Profile/ProfileUpdateAvatarParamsTest.cs | 2 +-
.../Profile/ProfileUpdateBannerParamsTest.cs | 2 +-
.../X/Profile/ProfileUpdateParamsTest.cs | 2 +-
.../X/Tweets/Like/LikeCreateParamsTest.cs | 2 +-
.../X/Tweets/Like/LikeDeleteParamsTest.cs | 2 +-
.../Tweets/Retweet/RetweetCreateParamsTest.cs | 4 +-
.../Tweets/Retweet/RetweetDeleteParamsTest.cs | 4 +-
.../Models/X/Tweets/TweetCreateParamsTest.cs | 2 +-
.../Models/X/Tweets/TweetDeleteParamsTest.cs | 2 +-
.../X/Tweets/TweetGetFavoritersParamsTest.cs | 7 +++-
.../X/Tweets/TweetGetQuotesParamsTest.cs | 12 +++---
.../X/Tweets/TweetGetRepliesParamsTest.cs | 12 +++---
.../X/Tweets/TweetGetRetweetersParamsTest.cs | 7 +++-
.../X/Tweets/TweetGetThreadParamsTest.cs | 7 +++-
.../Models/X/Tweets/TweetListParamsTest.cs | 2 +-
.../X/Tweets/TweetRetrieveParamsTest.cs | 2 +-
.../Models/X/Tweets/TweetSearchParamsTest.cs | 12 +++---
.../X/Users/Follow/FollowCreateParamsTest.cs | 2 +-
.../Users/Follow/FollowDeleteAllParamsTest.cs | 2 +-
.../X/Users/UserRetrieveBatchParamsTest.cs | 4 +-
.../Users/UserRetrieveFollowersParamsTest.cs | 8 ++--
.../UserRetrieveFollowersYouKnowParamsTest.cs | 8 ++--
.../Users/UserRetrieveFollowingParamsTest.cs | 8 ++--
.../X/Users/UserRetrieveLikesParamsTest.cs | 7 +++-
.../X/Users/UserRetrieveMediaParamsTest.cs | 7 +++-
.../X/Users/UserRetrieveMentionsParamsTest.cs | 12 +++---
.../Models/X/Users/UserRetrieveParamsTest.cs | 2 +-
.../X/Users/UserRetrieveSearchParamsTest.cs | 7 +++-
.../X/Users/UserRetrieveTweetsParamsTest.cs | 12 +++---
...UserRetrieveVerifiedFollowersParamsTest.cs | 8 ++--
.../Models/X/XGetArticleParamsTest.cs | 4 +-
.../Models/X/XGetHomeTimelineParamsTest.cs | 10 +++--
.../Models/X/XGetNotificationsParamsTest.cs | 8 ++--
.../Models/X/XGetTrendsParamsTest.cs | 4 +-
src/XTwitterScraper.Tests/TestBase.cs | 40 +++++++++++++++++++
106 files changed, 373 insertions(+), 181 deletions(-)
diff --git a/src/XTwitterScraper.Tests/Models/Account/AccountSetXUsernameParamsTest.cs b/src/XTwitterScraper.Tests/Models/Account/AccountSetXUsernameParamsTest.cs
index 82c0cb0..5089a34 100644
--- a/src/XTwitterScraper.Tests/Models/Account/AccountSetXUsernameParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Account/AccountSetXUsernameParamsTest.cs
@@ -22,7 +22,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/account/x-identity"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/account/x-identity"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Account/AccountUpdateLocaleParamsTest.cs b/src/XTwitterScraper.Tests/Models/Account/AccountUpdateLocaleParamsTest.cs
index 4ea0d7d..b3b331e 100644
--- a/src/XTwitterScraper.Tests/Models/Account/AccountUpdateLocaleParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Account/AccountUpdateLocaleParamsTest.cs
@@ -25,7 +25,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/account"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/account"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/ApiKeys/ApiKeyCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/ApiKeys/ApiKeyCreateParamsTest.cs
index 9601c48..f445873 100644
--- a/src/XTwitterScraper.Tests/Models/ApiKeys/ApiKeyCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/ApiKeys/ApiKeyCreateParamsTest.cs
@@ -44,7 +44,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/api-keys"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/api-keys"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/ApiKeys/ApiKeyRevokeParamsTest.cs b/src/XTwitterScraper.Tests/Models/ApiKeys/ApiKeyRevokeParamsTest.cs
index 84917c3..d01f869 100644
--- a/src/XTwitterScraper.Tests/Models/ApiKeys/ApiKeyRevokeParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/ApiKeys/ApiKeyRevokeParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/api-keys/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/api-keys/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Compose/ComposeCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Compose/ComposeCreateParamsTest.cs
index e3abded..6e3f23d 100644
--- a/src/XTwitterScraper.Tests/Models/Compose/ComposeCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Compose/ComposeCreateParamsTest.cs
@@ -127,7 +127,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/compose"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/compose"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Credits/CreditTopupBalanceParamsTest.cs b/src/XTwitterScraper.Tests/Models/Credits/CreditTopupBalanceParamsTest.cs
index 9dcd9b5..533ff20 100644
--- a/src/XTwitterScraper.Tests/Models/Credits/CreditTopupBalanceParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Credits/CreditTopupBalanceParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/credits/topup"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/credits/topup"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Drafts/DraftCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Drafts/DraftCreateParamsTest.cs
index c7d0055..efeab07 100644
--- a/src/XTwitterScraper.Tests/Models/Drafts/DraftCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Drafts/DraftCreateParamsTest.cs
@@ -63,7 +63,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/drafts"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/drafts"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Drafts/DraftDeleteParamsTest.cs b/src/XTwitterScraper.Tests/Models/Drafts/DraftDeleteParamsTest.cs
index cdd2233..109dc04 100644
--- a/src/XTwitterScraper.Tests/Models/Drafts/DraftDeleteParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Drafts/DraftDeleteParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/drafts/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/drafts/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Drafts/DraftListParamsTest.cs b/src/XTwitterScraper.Tests/Models/Drafts/DraftListParamsTest.cs
index a23d65b..1ab46aa 100644
--- a/src/XTwitterScraper.Tests/Models/Drafts/DraftListParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Drafts/DraftListParamsTest.cs
@@ -51,9 +51,11 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri("https://xquik.com/api/v1/drafts?afterCursor=afterCursor&limit=1"),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/drafts?afterCursor=afterCursor&limit=1"),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/Drafts/DraftRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/Drafts/DraftRetrieveParamsTest.cs
index 22a054c..cc54b1a 100644
--- a/src/XTwitterScraper.Tests/Models/Drafts/DraftRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Drafts/DraftRetrieveParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/drafts/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/drafts/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Draws/DrawExportParamsTest.cs b/src/XTwitterScraper.Tests/Models/Draws/DrawExportParamsTest.cs
index 2fd76d9..5171470 100644
--- a/src/XTwitterScraper.Tests/Models/Draws/DrawExportParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Draws/DrawExportParamsTest.cs
@@ -68,9 +68,11 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri("https://xquik.com/api/v1/draws/id/export?format=csv&type=winners"),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/draws/id/export?format=csv&type=winners"),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/Draws/DrawListParamsTest.cs b/src/XTwitterScraper.Tests/Models/Draws/DrawListParamsTest.cs
index 137cae5..6ca89a3 100644
--- a/src/XTwitterScraper.Tests/Models/Draws/DrawListParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Draws/DrawListParamsTest.cs
@@ -51,7 +51,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/draws?after=after&limit=1"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/draws?after=after&limit=1"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Draws/DrawRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/Draws/DrawRetrieveParamsTest.cs
index 6291af2..aded488 100644
--- a/src/XTwitterScraper.Tests/Models/Draws/DrawRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Draws/DrawRetrieveParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/draws/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/draws/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Draws/DrawRunParamsTest.cs b/src/XTwitterScraper.Tests/Models/Draws/DrawRunParamsTest.cs
index dfd435c..79820ca 100644
--- a/src/XTwitterScraper.Tests/Models/Draws/DrawRunParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Draws/DrawRunParamsTest.cs
@@ -151,7 +151,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/draws"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/draws"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Events/EventListParamsTest.cs b/src/XTwitterScraper.Tests/Models/Events/EventListParamsTest.cs
index cdc3bda..b848a10 100644
--- a/src/XTwitterScraper.Tests/Models/Events/EventListParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Events/EventListParamsTest.cs
@@ -79,11 +79,13 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri(
- "https://xquik.com/api/v1/events?after=after&eventType=tweet.new&limit=1&monitorId=monitorId"
- ),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri(
+ "https://xquik.com/api/v1/events?after=after&eventType=tweet.new&limit=1&monitorId=monitorId"
+ ),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/Events/EventRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/Events/EventRetrieveParamsTest.cs
index 4452d22..bc53618 100644
--- a/src/XTwitterScraper.Tests/Models/Events/EventRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Events/EventRetrieveParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/events/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/events/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionEstimateCostParamsTest.cs b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionEstimateCostParamsTest.cs
index 5bd66f2..652e2b6 100644
--- a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionEstimateCostParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionEstimateCostParamsTest.cs
@@ -126,7 +126,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/extractions/estimate"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/extractions/estimate"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionExportResultsParamsTest.cs b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionExportResultsParamsTest.cs
index af02b2f..46327d0 100644
--- a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionExportResultsParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionExportResultsParamsTest.cs
@@ -51,7 +51,12 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/extractions/id/export?format=csv"), url);
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/extractions/id/export?format=csv"),
+ url
+ )
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionListParamsTest.cs b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionListParamsTest.cs
index e61148a..cf02429 100644
--- a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionListParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionListParamsTest.cs
@@ -80,11 +80,13 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri(
- "https://xquik.com/api/v1/extractions?after=after&limit=1&status=running&toolType=follower_explorer"
- ),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri(
+ "https://xquik.com/api/v1/extractions?after=after&limit=1&status=running&toolType=follower_explorer"
+ ),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionRetrieveParamsTest.cs
index 7a178b7..5638ed1 100644
--- a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionRetrieveParamsTest.cs
@@ -65,7 +65,12 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/extractions/id?after=after&limit=1"), url);
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/extractions/id?after=after&limit=1"),
+ url
+ )
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionRunParamsTest.cs b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionRunParamsTest.cs
index 8247883..386f4b4 100644
--- a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionRunParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionRunParamsTest.cs
@@ -126,7 +126,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/extractions"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/extractions"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationCreateParamsTest.cs
index af0dc62..fe1a87a 100644
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationCreateParamsTest.cs
@@ -51,7 +51,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/integrations"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/integrations"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeleteParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeleteParamsTest.cs
index e4eb8d0..f0d5916 100644
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeleteParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeleteParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/integrations/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/integrations/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListDeliveriesParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListDeliveriesParamsTest.cs
index 83cb968..6895a54 100644
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListDeliveriesParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListDeliveriesParamsTest.cs
@@ -48,7 +48,12 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/integrations/id/deliveries?limit=1"), url);
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/integrations/id/deliveries?limit=1"),
+ url
+ )
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationRetrieveParamsTest.cs
index 6efe6a2..b900213 100644
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationRetrieveParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/integrations/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/integrations/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationSendTestParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationSendTestParamsTest.cs
index 3649bc6..0cfa6ea 100644
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationSendTestParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationSendTestParamsTest.cs
@@ -22,7 +22,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/integrations/id/test"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/integrations/id/test"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationUpdateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationUpdateParamsTest.cs
index 36853e4..482855b 100644
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationUpdateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationUpdateParamsTest.cs
@@ -123,7 +123,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/integrations/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/integrations/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Monitors/MonitorCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Monitors/MonitorCreateParamsTest.cs
index d204b28..529354c 100644
--- a/src/XTwitterScraper.Tests/Models/Monitors/MonitorCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Monitors/MonitorCreateParamsTest.cs
@@ -43,7 +43,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/monitors"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/monitors"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Monitors/MonitorDeactivateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Monitors/MonitorDeactivateParamsTest.cs
index b6f9763..8a21707 100644
--- a/src/XTwitterScraper.Tests/Models/Monitors/MonitorDeactivateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Monitors/MonitorDeactivateParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/monitors/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/monitors/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Monitors/MonitorRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/Monitors/MonitorRetrieveParamsTest.cs
index 3b67b0a..03f5a29 100644
--- a/src/XTwitterScraper.Tests/Models/Monitors/MonitorRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Monitors/MonitorRetrieveParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/monitors/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/monitors/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Monitors/MonitorUpdateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Monitors/MonitorUpdateParamsTest.cs
index 16edc7d..a6a33e0 100644
--- a/src/XTwitterScraper.Tests/Models/Monitors/MonitorUpdateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Monitors/MonitorUpdateParamsTest.cs
@@ -68,7 +68,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/monitors/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/monitors/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Radar/RadarRetrieveTrendingTopicsParamsTest.cs b/src/XTwitterScraper.Tests/Models/Radar/RadarRetrieveTrendingTopicsParamsTest.cs
index faed6b9..413474c 100644
--- a/src/XTwitterScraper.Tests/Models/Radar/RadarRetrieveTrendingTopicsParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Radar/RadarRetrieveTrendingTopicsParamsTest.cs
@@ -89,11 +89,13 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri(
- "https://xquik.com/api/v1/radar?category=category&count=0&hours=0®ion=region&source=github"
- ),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri(
+ "https://xquik.com/api/v1/radar?category=category&count=0&hours=0®ion=region&source=github"
+ ),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/Styles/StyleAnalyzeParamsTest.cs b/src/XTwitterScraper.Tests/Models/Styles/StyleAnalyzeParamsTest.cs
index 9f2f9c5..74f4852 100644
--- a/src/XTwitterScraper.Tests/Models/Styles/StyleAnalyzeParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Styles/StyleAnalyzeParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/styles"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/styles"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Styles/StyleCompareParamsTest.cs b/src/XTwitterScraper.Tests/Models/Styles/StyleCompareParamsTest.cs
index 6ad9b77..a28392d 100644
--- a/src/XTwitterScraper.Tests/Models/Styles/StyleCompareParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Styles/StyleCompareParamsTest.cs
@@ -28,11 +28,13 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri(
- "https://xquik.com/api/v1/styles/compare?username1=username1&username2=username2"
- ),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri(
+ "https://xquik.com/api/v1/styles/compare?username1=username1&username2=username2"
+ ),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/Styles/StyleDeleteParamsTest.cs b/src/XTwitterScraper.Tests/Models/Styles/StyleDeleteParamsTest.cs
index a8f9068..03b5170 100644
--- a/src/XTwitterScraper.Tests/Models/Styles/StyleDeleteParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Styles/StyleDeleteParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/styles/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/styles/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Styles/StyleGetPerformanceParamsTest.cs b/src/XTwitterScraper.Tests/Models/Styles/StyleGetPerformanceParamsTest.cs
index cc79e2e..4ca0dd3 100644
--- a/src/XTwitterScraper.Tests/Models/Styles/StyleGetPerformanceParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Styles/StyleGetPerformanceParamsTest.cs
@@ -22,7 +22,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/styles/id/performance"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/styles/id/performance"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Styles/StyleRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/Styles/StyleRetrieveParamsTest.cs
index a833894..c4275d0 100644
--- a/src/XTwitterScraper.Tests/Models/Styles/StyleRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Styles/StyleRetrieveParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/styles/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/styles/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Styles/StyleUpdateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Styles/StyleUpdateParamsTest.cs
index a3b1b40..192a514 100644
--- a/src/XTwitterScraper.Tests/Models/Styles/StyleUpdateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Styles/StyleUpdateParamsTest.cs
@@ -43,7 +43,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/styles/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/styles/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketCreateParamsTest.cs
index 4e436ea..9c8239c 100644
--- a/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketCreateParamsTest.cs
@@ -32,7 +32,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/support/tickets"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/support/tickets"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketReplyParamsTest.cs b/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketReplyParamsTest.cs
index b72d63d..1b1459c 100644
--- a/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketReplyParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketReplyParamsTest.cs
@@ -24,7 +24,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/support/tickets/id/messages"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/support/tickets/id/messages"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketRetrieveParamsTest.cs
index 1e9797f..2d2c18a 100644
--- a/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketRetrieveParamsTest.cs
@@ -22,7 +22,12 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/support/tickets/messages_value"), url);
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/support/tickets/messages_value"),
+ url
+ )
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketUpdateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketUpdateParamsTest.cs
index 1e13cc5..7e7d1e3 100644
--- a/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketUpdateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Support/Tickets/TicketUpdateParamsTest.cs
@@ -27,7 +27,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/support/tickets/id"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/support/tickets/id"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Trends/TrendListParamsTest.cs b/src/XTwitterScraper.Tests/Models/Trends/TrendListParamsTest.cs
index 346994f..4462cee 100644
--- a/src/XTwitterScraper.Tests/Models/Trends/TrendListParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Trends/TrendListParamsTest.cs
@@ -51,7 +51,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/trends?count=1&woeid=0"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/trends?count=1&woeid=0"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookCreateParamsTest.cs
index 1e02190..7a1afd1 100644
--- a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookCreateParamsTest.cs
@@ -43,7 +43,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/webhooks"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/webhooks"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookDeactivateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookDeactivateParamsTest.cs
index 7136053..791d9e8 100644
--- a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookDeactivateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookDeactivateParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/webhooks/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/webhooks/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookListDeliveriesParamsTest.cs b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookListDeliveriesParamsTest.cs
index ca62eff..4de229f 100644
--- a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookListDeliveriesParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookListDeliveriesParamsTest.cs
@@ -22,7 +22,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/webhooks/id/deliveries"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/webhooks/id/deliveries"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookTestParamsTest.cs b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookTestParamsTest.cs
index 080ba5b..af07faa 100644
--- a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookTestParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookTestParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/webhooks/id/test"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/webhooks/id/test"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookUpdateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookUpdateParamsTest.cs
index 62b9f74..fbf866e 100644
--- a/src/XTwitterScraper.Tests/Models/Webhooks/WebhookUpdateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Webhooks/WebhookUpdateParamsTest.cs
@@ -76,7 +76,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/webhooks/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/webhooks/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Accounts/AccountCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Accounts/AccountCreateParamsTest.cs
index b6dd670..5d5001d 100644
--- a/src/XTwitterScraper.Tests/Models/X/Accounts/AccountCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Accounts/AccountCreateParamsTest.cs
@@ -78,7 +78,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/accounts"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/accounts"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Accounts/AccountDeleteParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Accounts/AccountDeleteParamsTest.cs
index 9209ea2..c18d3ce 100644
--- a/src/XTwitterScraper.Tests/Models/X/Accounts/AccountDeleteParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Accounts/AccountDeleteParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/accounts/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/accounts/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Accounts/AccountReauthParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Accounts/AccountReauthParamsTest.cs
index 39fdda4..1b85755 100644
--- a/src/XTwitterScraper.Tests/Models/X/Accounts/AccountReauthParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Accounts/AccountReauthParamsTest.cs
@@ -56,7 +56,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/accounts/id/reauth"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/accounts/id/reauth"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Accounts/AccountRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Accounts/AccountRetrieveParamsTest.cs
index a97c028..79c210e 100644
--- a/src/XTwitterScraper.Tests/Models/X/Accounts/AccountRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Accounts/AccountRetrieveParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/accounts/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/accounts/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Bookmarks/BookmarkListParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Bookmarks/BookmarkListParamsTest.cs
index 16df7df..f24584f 100644
--- a/src/XTwitterScraper.Tests/Models/X/Bookmarks/BookmarkListParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Bookmarks/BookmarkListParamsTest.cs
@@ -51,9 +51,13 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri("https://xquik.com/api/v1/x/bookmarks?cursor=folders_value&folderId=folderId"),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri(
+ "https://xquik.com/api/v1/x/bookmarks?cursor=folders_value&folderId=folderId"
+ ),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityCreateParamsTest.cs
index bfdbb5b..198eac5 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityCreateParamsTest.cs
@@ -56,7 +56,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/communities"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/communities"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityDeleteParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityDeleteParamsTest.cs
index 7045b19..963d8a2 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityDeleteParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityDeleteParamsTest.cs
@@ -36,7 +36,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/communities/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/communities/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveInfoParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveInfoParamsTest.cs
index 7e227e0..3677ff3 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveInfoParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveInfoParamsTest.cs
@@ -22,7 +22,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/communities/id/info"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/communities/id/info"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveMembersParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveMembersParamsTest.cs
index 9009f71..14f43bb 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveMembersParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveMembersParamsTest.cs
@@ -48,9 +48,11 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri("https://xquik.com/api/v1/x/communities/id/members?cursor=cursor"),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/communities/id/members?cursor=cursor"),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveModeratorsParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveModeratorsParamsTest.cs
index ab4036c..0f01003 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveModeratorsParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveModeratorsParamsTest.cs
@@ -48,9 +48,11 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri("https://xquik.com/api/v1/x/communities/id/moderators?cursor=cursor"),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/communities/id/moderators?cursor=cursor"),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveSearchParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveSearchParamsTest.cs
index 8da0ea4..4752a96 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveSearchParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/CommunityRetrieveSearchParamsTest.cs
@@ -65,11 +65,13 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri(
- "https://xquik.com/api/v1/x/communities/search?q=q&cursor=cursor&queryType=queryType"
- ),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri(
+ "https://xquik.com/api/v1/x/communities/search?q=q&cursor=cursor&queryType=queryType"
+ ),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/Join/JoinCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/Join/JoinCreateParamsTest.cs
index f4f7150..e747a34 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/Join/JoinCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/Join/JoinCreateParamsTest.cs
@@ -24,7 +24,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/communities/id/join"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/communities/id/join"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/Join/JoinDeleteAllParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/Join/JoinDeleteAllParamsTest.cs
index 09839ad..ca4bace 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/Join/JoinDeleteAllParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/Join/JoinDeleteAllParamsTest.cs
@@ -24,7 +24,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/communities/id/join"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/communities/id/join"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/Tweets/TweetListByCommunityParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/Tweets/TweetListByCommunityParamsTest.cs
index 67eafc1..32fba7a 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/Tweets/TweetListByCommunityParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/Tweets/TweetListByCommunityParamsTest.cs
@@ -48,9 +48,11 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri("https://xquik.com/api/v1/x/communities/id/tweets?cursor=cursor"),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/communities/id/tweets?cursor=cursor"),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Communities/Tweets/TweetListParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Communities/Tweets/TweetListParamsTest.cs
index db678fe..8d6a8be 100644
--- a/src/XTwitterScraper.Tests/Models/X/Communities/Tweets/TweetListParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Communities/Tweets/TweetListParamsTest.cs
@@ -65,11 +65,13 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri(
- "https://xquik.com/api/v1/x/communities/tweets?q=q&cursor=cursor&queryType=queryType"
- ),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri(
+ "https://xquik.com/api/v1/x/communities/tweets?q=q&cursor=cursor&queryType=queryType"
+ ),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Dm/DmRetrieveHistoryParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Dm/DmRetrieveHistoryParamsTest.cs
index df528e3..76c0814 100644
--- a/src/XTwitterScraper.Tests/Models/X/Dm/DmRetrieveHistoryParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Dm/DmRetrieveHistoryParamsTest.cs
@@ -65,9 +65,11 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri("https://xquik.com/api/v1/x/dm/userId/history?cursor=cursor&maxId=maxId"),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/dm/userId/history?cursor=cursor&maxId=maxId"),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Dm/DmSendParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Dm/DmSendParamsTest.cs
index 2e24d1e..977d471 100644
--- a/src/XTwitterScraper.Tests/Models/X/Dm/DmSendParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Dm/DmSendParamsTest.cs
@@ -84,7 +84,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/dm/userId"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/dm/userId"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Followers/FollowerCheckParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Followers/FollowerCheckParamsTest.cs
index 5f4bb72..85c8d50 100644
--- a/src/XTwitterScraper.Tests/Models/X/Followers/FollowerCheckParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Followers/FollowerCheckParamsTest.cs
@@ -24,9 +24,11 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri("https://xquik.com/api/v1/x/followers/check?source=source&target=target"),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/followers/check?source=source&target=target"),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveFollowersParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveFollowersParamsTest.cs
index 8bbf47e..1b22437 100644
--- a/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveFollowersParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveFollowersParamsTest.cs
@@ -48,7 +48,12 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/lists/id/followers?cursor=cursor"), url);
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/lists/id/followers?cursor=cursor"),
+ url
+ )
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveMembersParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveMembersParamsTest.cs
index 4de2a36..d57b1a2 100644
--- a/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveMembersParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveMembersParamsTest.cs
@@ -48,7 +48,12 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/lists/id/members?cursor=cursor"), url);
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/lists/id/members?cursor=cursor"),
+ url
+ )
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveTweetsParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveTweetsParamsTest.cs
index 483eba4..d63a1cc 100644
--- a/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveTweetsParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Lists/ListRetrieveTweetsParamsTest.cs
@@ -83,11 +83,13 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri(
- "https://xquik.com/api/v1/x/lists/id/tweets?cursor=cursor&includeReplies=true&sinceTime=sinceTime&untilTime=untilTime"
- ),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri(
+ "https://xquik.com/api/v1/x/lists/id/tweets?cursor=cursor&includeReplies=true&sinceTime=sinceTime&untilTime=untilTime"
+ ),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Media/MediaDownloadParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Media/MediaDownloadParamsTest.cs
index 3412f8f..22f2e94 100644
--- a/src/XTwitterScraper.Tests/Models/X/Media/MediaDownloadParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Media/MediaDownloadParamsTest.cs
@@ -61,7 +61,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/media/download"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/media/download"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Media/MediaUploadParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Media/MediaUploadParamsTest.cs
index 3949998..3fee666 100644
--- a/src/XTwitterScraper.Tests/Models/X/Media/MediaUploadParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Media/MediaUploadParamsTest.cs
@@ -68,7 +68,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/media"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/media"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateAvatarParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateAvatarParamsTest.cs
index 3b4fbd2..f69a76a 100644
--- a/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateAvatarParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateAvatarParamsTest.cs
@@ -32,7 +32,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/profile/avatar"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/profile/avatar"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateBannerParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateBannerParamsTest.cs
index ad80cd0..e05e4d5 100644
--- a/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateBannerParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateBannerParamsTest.cs
@@ -32,7 +32,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/profile/banner"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/profile/banner"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateParamsTest.cs
index f26537c..a55cf09 100644
--- a/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Profile/ProfileUpdateParamsTest.cs
@@ -76,7 +76,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/profile"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/profile"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/Like/LikeCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/Like/LikeCreateParamsTest.cs
index f1a8668..282a830 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/Like/LikeCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/Like/LikeCreateParamsTest.cs
@@ -24,7 +24,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id/like"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/tweets/id/like"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/Like/LikeDeleteParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/Like/LikeDeleteParamsTest.cs
index 6c26f92..575c313 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/Like/LikeDeleteParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/Like/LikeDeleteParamsTest.cs
@@ -24,7 +24,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id/like"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/tweets/id/like"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/Retweet/RetweetCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/Retweet/RetweetCreateParamsTest.cs
index 904dcba..8e3a446 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/Retweet/RetweetCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/Retweet/RetweetCreateParamsTest.cs
@@ -24,7 +24,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id/retweet"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/tweets/id/retweet"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/Retweet/RetweetDeleteParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/Retweet/RetweetDeleteParamsTest.cs
index 2bd6286..6fa9e98 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/Retweet/RetweetDeleteParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/Retweet/RetweetDeleteParamsTest.cs
@@ -24,7 +24,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id/retweet"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/tweets/id/retweet"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetCreateParamsTest.cs
index a3a0d0d..76723b5 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetCreateParamsTest.cs
@@ -102,7 +102,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/tweets"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetDeleteParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetDeleteParamsTest.cs
index 0b56a75..9cc5591 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetDeleteParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetDeleteParamsTest.cs
@@ -24,7 +24,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/tweets/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetFavoritersParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetFavoritersParamsTest.cs
index 4dfe527..9bcb91f 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetFavoritersParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetFavoritersParamsTest.cs
@@ -48,7 +48,12 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id/favoriters?cursor=cursor"), url);
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/tweets/id/favoriters?cursor=cursor"),
+ url
+ )
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetQuotesParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetQuotesParamsTest.cs
index c968c84..a2297ff 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetQuotesParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetQuotesParamsTest.cs
@@ -83,11 +83,13 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri(
- "https://xquik.com/api/v1/x/tweets/id/quotes?cursor=cursor&includeReplies=true&sinceTime=sinceTime&untilTime=untilTime"
- ),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri(
+ "https://xquik.com/api/v1/x/tweets/id/quotes?cursor=cursor&includeReplies=true&sinceTime=sinceTime&untilTime=untilTime"
+ ),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetRepliesParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetRepliesParamsTest.cs
index 479e19a..120856b 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetRepliesParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetRepliesParamsTest.cs
@@ -74,11 +74,13 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri(
- "https://xquik.com/api/v1/x/tweets/id/replies?cursor=cursor&sinceTime=sinceTime&untilTime=untilTime"
- ),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri(
+ "https://xquik.com/api/v1/x/tweets/id/replies?cursor=cursor&sinceTime=sinceTime&untilTime=untilTime"
+ ),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetRetweetersParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetRetweetersParamsTest.cs
index 510436e..86793a3 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetRetweetersParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetRetweetersParamsTest.cs
@@ -48,7 +48,12 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id/retweeters?cursor=cursor"), url);
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/tweets/id/retweeters?cursor=cursor"),
+ url
+ )
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetThreadParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetThreadParamsTest.cs
index f74b5e0..70e7624 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetThreadParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetGetThreadParamsTest.cs
@@ -48,7 +48,12 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id/thread?cursor=cursor"), url);
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/tweets/id/thread?cursor=cursor"),
+ url
+ )
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetListParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetListParamsTest.cs
index 007add9..ad579bc 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetListParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetListParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets?ids=ids"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/tweets?ids=ids"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetRetrieveParamsTest.cs
index 5364b53..0697a10 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetRetrieveParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/tweets/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/tweets/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetSearchParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetSearchParamsTest.cs
index 7c9aed6..8a320a8 100644
--- a/src/XTwitterScraper.Tests/Models/X/Tweets/TweetSearchParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Tweets/TweetSearchParamsTest.cs
@@ -95,11 +95,13 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri(
- "https://xquik.com/api/v1/x/tweets/search?q=q&cursor=cursor&limit=200&queryType=Latest&sinceTime=sinceTime&untilTime=untilTime"
- ),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri(
+ "https://xquik.com/api/v1/x/tweets/search?q=q&cursor=cursor&limit=200&queryType=Latest&sinceTime=sinceTime&untilTime=untilTime"
+ ),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/Follow/FollowCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/Follow/FollowCreateParamsTest.cs
index e7eb6f7..a4977a1 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/Follow/FollowCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/Follow/FollowCreateParamsTest.cs
@@ -24,7 +24,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/users/id/follow"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/users/id/follow"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/Follow/FollowDeleteAllParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/Follow/FollowDeleteAllParamsTest.cs
index 4968be7..3eaba4e 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/Follow/FollowDeleteAllParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/Follow/FollowDeleteAllParamsTest.cs
@@ -24,7 +24,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/users/id/follow"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/users/id/follow"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveBatchParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveBatchParamsTest.cs
index e6a4f6f..6918b24 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveBatchParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveBatchParamsTest.cs
@@ -22,7 +22,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/users/batch?ids=ids"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/users/batch?ids=ids"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowersParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowersParamsTest.cs
index 443946c..4d989a5 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowersParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowersParamsTest.cs
@@ -65,9 +65,11 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri("https://xquik.com/api/v1/x/users/id/followers?cursor=cursor&pageSize=0"),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/users/id/followers?cursor=cursor&pageSize=0"),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowersYouKnowParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowersYouKnowParamsTest.cs
index 4bff302..6a2007c 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowersYouKnowParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowersYouKnowParamsTest.cs
@@ -48,9 +48,11 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri("https://xquik.com/api/v1/x/users/id/followers-you-know?cursor=cursor"),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/users/id/followers-you-know?cursor=cursor"),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowingParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowingParamsTest.cs
index a95d3a6..47784ef 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowingParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveFollowingParamsTest.cs
@@ -65,9 +65,11 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri("https://xquik.com/api/v1/x/users/id/following?cursor=cursor&pageSize=0"),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/users/id/following?cursor=cursor&pageSize=0"),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveLikesParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveLikesParamsTest.cs
index 4c1894e..983dcc5 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveLikesParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveLikesParamsTest.cs
@@ -48,7 +48,12 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/users/id/likes?cursor=cursor"), url);
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/users/id/likes?cursor=cursor"),
+ url
+ )
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveMediaParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveMediaParamsTest.cs
index d0e4b22..0dae67d 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveMediaParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveMediaParamsTest.cs
@@ -48,7 +48,12 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/users/id/media?cursor=cursor"), url);
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/users/id/media?cursor=cursor"),
+ url
+ )
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveMentionsParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveMentionsParamsTest.cs
index 7c1dc2c..ae91f5c 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveMentionsParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveMentionsParamsTest.cs
@@ -74,11 +74,13 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri(
- "https://xquik.com/api/v1/x/users/id/mentions?cursor=cursor&sinceTime=sinceTime&untilTime=untilTime"
- ),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri(
+ "https://xquik.com/api/v1/x/users/id/mentions?cursor=cursor&sinceTime=sinceTime&untilTime=untilTime"
+ ),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveParamsTest.cs
index e056ad6..62d9ab5 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveParamsTest.cs
@@ -22,7 +22,7 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/users/id"), url);
+ Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/users/id"), url));
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveSearchParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveSearchParamsTest.cs
index 327de8b..9d2efd7 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveSearchParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveSearchParamsTest.cs
@@ -48,7 +48,12 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/users/search?q=q&cursor=cursor"), url);
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/users/search?q=q&cursor=cursor"),
+ url
+ )
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveTweetsParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveTweetsParamsTest.cs
index 91159b2..8d2e741 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveTweetsParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveTweetsParamsTest.cs
@@ -74,11 +74,13 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri(
- "https://xquik.com/api/v1/x/users/id/tweets?cursor=cursor&includeParentTweet=true&includeReplies=true"
- ),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri(
+ "https://xquik.com/api/v1/x/users/id/tweets?cursor=cursor&includeParentTweet=true&includeReplies=true"
+ ),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveVerifiedFollowersParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveVerifiedFollowersParamsTest.cs
index 3621e66..e2942b1 100644
--- a/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveVerifiedFollowersParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/Users/UserRetrieveVerifiedFollowersParamsTest.cs
@@ -48,9 +48,11 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri("https://xquik.com/api/v1/x/users/id/verified-followers?cursor=cursor"),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/users/id/verified-followers?cursor=cursor"),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/XGetArticleParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/XGetArticleParamsTest.cs
index 9b8d834..0072a10 100644
--- a/src/XTwitterScraper.Tests/Models/X/XGetArticleParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/XGetArticleParamsTest.cs
@@ -22,7 +22,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/articles/tweetId"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/articles/tweetId"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/Models/X/XGetHomeTimelineParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/XGetHomeTimelineParamsTest.cs
index 130bb03..8de94f6 100644
--- a/src/XTwitterScraper.Tests/Models/X/XGetHomeTimelineParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/XGetHomeTimelineParamsTest.cs
@@ -59,9 +59,13 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri("https://xquik.com/api/v1/x/timeline?cursor=cursor&seenTweetIds=seenTweetIds"),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri(
+ "https://xquik.com/api/v1/x/timeline?cursor=cursor&seenTweetIds=seenTweetIds"
+ ),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/XGetNotificationsParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/XGetNotificationsParamsTest.cs
index 5b23117..ced9dd0 100644
--- a/src/XTwitterScraper.Tests/Models/X/XGetNotificationsParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/XGetNotificationsParamsTest.cs
@@ -54,9 +54,11 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(
- new Uri("https://xquik.com/api/v1/x/notifications?cursor=cursor&type=All"),
- url
+ Assert.True(
+ TestBase.UrisEqual(
+ new Uri("https://xquik.com/api/v1/x/notifications?cursor=cursor&type=All"),
+ url
+ )
);
}
diff --git a/src/XTwitterScraper.Tests/Models/X/XGetTrendsParamsTest.cs b/src/XTwitterScraper.Tests/Models/X/XGetTrendsParamsTest.cs
index c82d470..6acfcaf 100644
--- a/src/XTwitterScraper.Tests/Models/X/XGetTrendsParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/X/XGetTrendsParamsTest.cs
@@ -51,7 +51,9 @@ public void Url_Works()
var url = parameters.Url(new() { ApiKey = "My API Key" });
- Assert.Equal(new Uri("https://xquik.com/api/v1/x/trends?count=1&woeid=0"), url);
+ Assert.True(
+ TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/x/trends?count=1&woeid=0"), url)
+ );
}
[Fact]
diff --git a/src/XTwitterScraper.Tests/TestBase.cs b/src/XTwitterScraper.Tests/TestBase.cs
index afc2dd3..686ed6e 100644
--- a/src/XTwitterScraper.Tests/TestBase.cs
+++ b/src/XTwitterScraper.Tests/TestBase.cs
@@ -1,4 +1,6 @@
using System;
+using System.Collections.Generic;
+using System.Linq;
using XTwitterScraper;
namespace XTwitterScraper.Tests;
@@ -16,4 +18,42 @@ public TestBase()
ApiKey = "My API Key",
};
}
+
+ internal static bool UrisEqual(Uri uri1, Uri uri2)
+ {
+ if (
+ uri1.Scheme != uri2.Scheme
+ || uri1.Host != uri2.Host
+ || uri1.Port != uri2.Port
+ || uri1.AbsolutePath != uri2.AbsolutePath
+ )
+ {
+ return false;
+ }
+
+ var query1 = ParseQueryString(uri1.Query);
+ var query2 = ParseQueryString(uri2.Query);
+
+ return Enumerable.SequenceEqual(query1, query2);
+ }
+
+ static SortedDictionary ParseQueryString(string query)
+ {
+ var ret = new SortedDictionary(StringComparer.Ordinal);
+
+ if (string.IsNullOrEmpty(query))
+ return ret;
+
+ var pairs = query.TrimStart('?').Split(['&'], StringSplitOptions.RemoveEmptyEntries);
+
+ foreach (var pair in pairs)
+ {
+ var parts = pair.Split(['&'], 2);
+ var key = Uri.UnescapeDataString(parts[0]);
+ var value = parts.Length > 1 ? Uri.UnescapeDataString(parts[1]) : string.Empty;
+ ret[key] = value;
+ }
+
+ return ret;
+ }
}
From 9ad82a28788a0fa5853bc28666c04d8bf35220b9 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Wed, 22 Apr 2026 20:49:10 +0000
Subject: [PATCH 18/20] chore: sync OpenAPI spec
---
.stats.yml | 8 +-
README.md | 40 --
.../Account/AccountRetrieveResponseTest.cs | 161 +++---
src/XTwitterScraper.Tests/Models/ErrorTest.cs | 8 +-
.../Models/EventTypeTest.cs | 4 -
.../ExtractionEstimateCostResponseTest.cs | 127 ++++-
.../IntegrationCreateParamsTest.cs | 127 -----
.../IntegrationDeleteParamsTest.cs | 37 --
.../IntegrationDeleteResponseTest.cs | 67 ---
.../Integrations/IntegrationDeliveryTest.cs | 256 ----------
.../IntegrationListDeliveriesParamsTest.cs | 68 ---
.../IntegrationListDeliveriesResponseTest.cs | 197 -------
.../Integrations/IntegrationListParamsTest.cs | 1 -
.../IntegrationListResponseTest.cs | 240 ---------
.../IntegrationRetrieveParamsTest.cs | 37 --
.../IntegrationSendTestParamsTest.cs | 39 --
.../IntegrationSendTestResponseTest.cs | 67 ---
.../Models/Integrations/IntegrationTest.cs | 356 -------------
.../IntegrationUpdateParamsTest.cs | 148 ------
.../Monitors/MonitorCreateParamsTest.cs | 8 +-
.../Monitors/MonitorCreateResponseTest.cs | 14 +-
.../Monitors/MonitorListResponseTest.cs | 14 +-
.../Models/Monitors/MonitorTest.cs | 14 +-
.../Models/Radar/RadarItemTest.cs | 316 ++++++++++--
.../RadarRetrieveTrendingTopicsParamsTest.cs | 118 ++++-
...RadarRetrieveTrendingTopicsResponseTest.cs | 269 ++++++++--
.../Webhooks/WebhookCreateParamsTest.cs | 8 +-
.../Webhooks/WebhookCreateResponseTest.cs | 14 +-
.../Webhooks/WebhookListResponseTest.cs | 14 +-
.../Models/Webhooks/WebhookTest.cs | 14 +-
.../X/Accounts/AccountCreateResponseTest.cs | 169 ++++++
.../X/Accounts/AccountListResponseTest.cs | 7 +
.../X/Accounts/AccountReauthParamsTest.cs | 18 +
.../X/Accounts/AccountReauthResponseTest.cs | 178 +++++++
.../Models/X/Accounts/XAccountDetailTest.cs | 80 +++
.../Models/X/Accounts/XAccountTest.cs | 76 +++
.../Models/X/Tweets/TweetCreateParamsTest.cs | 40 +-
.../Services/IntegrationServiceTest.cs | 89 ----
.../Services/MonitorServiceTest.cs | 2 +-
.../Services/WebhookServiceTest.cs | 2 +-
.../Services/X/TweetServiceTest.cs | 2 +-
src/XTwitterScraper/Core/ModelBase.cs | 8 +
src/XTwitterScraper/IXTwitterScraperClient.cs | 8 -
.../Models/Account/AccountRetrieveResponse.cs | 67 ++-
src/XTwitterScraper/Models/Error.cs | 12 +-
src/XTwitterScraper/Models/EventType.cs | 6 -
.../ExtractionEstimateCostResponse.cs | 41 +-
.../Models/Integrations/Integration.cs | 247 ---------
.../Integrations/IntegrationCreateParams.cs | 258 ----------
.../Integrations/IntegrationDeleteParams.cs | 121 -----
.../Integrations/IntegrationDeleteResponse.cs | 76 ---
.../Integrations/IntegrationDelivery.cs | 207 --------
.../IntegrationListDeliveriesParams.cs | 145 ------
.../IntegrationListDeliveriesResponse.cs | 91 ----
.../Integrations/IntegrationListParams.cs | 108 ----
.../Integrations/IntegrationListResponse.cs | 82 ---
.../Integrations/IntegrationRetrieveParams.cs | 121 -----
.../Integrations/IntegrationSendTestParams.cs | 122 -----
.../IntegrationSendTestResponse.cs | 76 ---
.../Integrations/IntegrationUpdateParams.cs | 298 -----------
src/XTwitterScraper/Models/Radar/RadarItem.cs | 212 +++++++-
.../RadarRetrieveTrendingTopicsParams.cs | 100 +++-
.../RadarRetrieveTrendingTopicsResponse.cs | 30 +-
.../X/Accounts/AccountCreateResponse.cs | 113 ++++
.../Models/X/Accounts/AccountReauthParams.cs | 42 ++
.../X/Accounts/AccountReauthResponse.cs | 124 +++++
.../Models/X/Accounts/XAccount.cs | 83 ++-
.../Models/X/Accounts/XAccountDetail.cs | 82 ++-
.../Models/X/Tweets/TweetCreateParams.cs | 58 ++-
.../Services/Bot/IPlatformLinkService.cs | 39 --
.../Services/Bot/PlatformLinkService.cs | 52 --
src/XTwitterScraper/Services/BotService.cs | 64 ---
src/XTwitterScraper/Services/IBotService.cs | 44 --
.../Services/IIntegrationService.cs | 233 ---------
.../Services/IntegrationService.cs | 482 ------------------
src/XTwitterScraper/XTwitterScraperClient.cs | 28 -
76 files changed, 2312 insertions(+), 5022 deletions(-)
delete mode 100644 src/XTwitterScraper.Tests/Models/Integrations/IntegrationCreateParamsTest.cs
delete mode 100644 src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeleteParamsTest.cs
delete mode 100644 src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeleteResponseTest.cs
delete mode 100644 src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeliveryTest.cs
delete mode 100644 src/XTwitterScraper.Tests/Models/Integrations/IntegrationListDeliveriesParamsTest.cs
delete mode 100644 src/XTwitterScraper.Tests/Models/Integrations/IntegrationListDeliveriesResponseTest.cs
delete mode 100644 src/XTwitterScraper.Tests/Models/Integrations/IntegrationListParamsTest.cs
delete mode 100644 src/XTwitterScraper.Tests/Models/Integrations/IntegrationListResponseTest.cs
delete mode 100644 src/XTwitterScraper.Tests/Models/Integrations/IntegrationRetrieveParamsTest.cs
delete mode 100644 src/XTwitterScraper.Tests/Models/Integrations/IntegrationSendTestParamsTest.cs
delete mode 100644 src/XTwitterScraper.Tests/Models/Integrations/IntegrationSendTestResponseTest.cs
delete mode 100644 src/XTwitterScraper.Tests/Models/Integrations/IntegrationTest.cs
delete mode 100644 src/XTwitterScraper.Tests/Models/Integrations/IntegrationUpdateParamsTest.cs
delete mode 100644 src/XTwitterScraper.Tests/Services/IntegrationServiceTest.cs
delete mode 100644 src/XTwitterScraper/Models/Integrations/Integration.cs
delete mode 100644 src/XTwitterScraper/Models/Integrations/IntegrationCreateParams.cs
delete mode 100644 src/XTwitterScraper/Models/Integrations/IntegrationDeleteParams.cs
delete mode 100644 src/XTwitterScraper/Models/Integrations/IntegrationDeleteResponse.cs
delete mode 100644 src/XTwitterScraper/Models/Integrations/IntegrationDelivery.cs
delete mode 100644 src/XTwitterScraper/Models/Integrations/IntegrationListDeliveriesParams.cs
delete mode 100644 src/XTwitterScraper/Models/Integrations/IntegrationListDeliveriesResponse.cs
delete mode 100644 src/XTwitterScraper/Models/Integrations/IntegrationListParams.cs
delete mode 100644 src/XTwitterScraper/Models/Integrations/IntegrationListResponse.cs
delete mode 100644 src/XTwitterScraper/Models/Integrations/IntegrationRetrieveParams.cs
delete mode 100644 src/XTwitterScraper/Models/Integrations/IntegrationSendTestParams.cs
delete mode 100644 src/XTwitterScraper/Models/Integrations/IntegrationSendTestResponse.cs
delete mode 100644 src/XTwitterScraper/Models/Integrations/IntegrationUpdateParams.cs
delete mode 100644 src/XTwitterScraper/Services/Bot/IPlatformLinkService.cs
delete mode 100644 src/XTwitterScraper/Services/Bot/PlatformLinkService.cs
delete mode 100644 src/XTwitterScraper/Services/BotService.cs
delete mode 100644 src/XTwitterScraper/Services/IBotService.cs
delete mode 100644 src/XTwitterScraper/Services/IIntegrationService.cs
delete mode 100644 src/XTwitterScraper/Services/IntegrationService.cs
diff --git a/.stats.yml b/.stats.yml
index 8931974..42a0ecb 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
-configured_endpoints: 117
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-6836376c178aa95a978c75ea632ac721779088347b17ec0c54a5b406e199f494.yml
-openapi_spec_hash: ce42f7f969994d74437c36a3d39232b3
-config_hash: 858d125643c0fca8bbbce07d3a2ce4b5
+configured_endpoints: 110
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/xquik%2Fx-twitter-scraper-4a12c672870ee7282ad1d00f262e20fb360a8296b64a774628d1d0252e12694a.yml
+openapi_spec_hash: 2e298ff704f550c80c2d07d9adadba6d
+config_hash: b832b4936f08acf4994e60fa50f10985
diff --git a/README.md b/README.md
index c603506..22c52d7 100644
--- a/README.md
+++ b/README.md
@@ -316,46 +316,6 @@ var parameters = TweetSearchParams.FromRawUnchecked
);
```
-### Nested Parameters
-
-Undocumented properties, or undocumented values of documented properties, on nested parameters can be set similarly, using a dictionary in the constructor of the nested parameter.
-
-```csharp
-using System.Collections.Generic;
-using System.Text.Json;
-using XTwitterScraper.Models.Integrations;
-
-IntegrationCreateParams parameters = new()
-{
- Config = new
- (
- new Dictionary
- {
- { "custom_nested_param", JsonSerializer.SerializeToElement(42) }
- }
- )
-};
-```
-
-Required properties on the nested parameter can also be changed or omitted using the `FromRawUnchecked` method:
-
-```csharp
-using System.Collections.Generic;
-using System.Text.Json;
-using XTwitterScraper.Models.Integrations;
-
-IntegrationCreateParams parameters = new()
-{
- Config = Config.FromRawUnchecked
- (
- new Dictionary
- {
- { "required_property", JsonSerializer.SerializeToElement("custom value") }
- }
- )
-};
-```
-
### Response properties
To access undocumented response properties, the `RawData` property can be used:
diff --git a/src/XTwitterScraper.Tests/Models/Account/AccountRetrieveResponseTest.cs b/src/XTwitterScraper.Tests/Models/Account/AccountRetrieveResponseTest.cs
index 78e7fba..2ab8b3c 100644
--- a/src/XTwitterScraper.Tests/Models/Account/AccountRetrieveResponseTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Account/AccountRetrieveResponseTest.cs
@@ -1,4 +1,3 @@
-using System;
using System.Text.Json;
using XTwitterScraper.Core;
using XTwitterScraper.Exceptions;
@@ -16,28 +15,30 @@ public void FieldRoundtrip_Works()
MonitorsAllowed = 10,
MonitorsUsed = 3,
Plan = Plan.Active,
- CurrentPeriod = new()
+ CreditInfo = new()
{
- End = DateTimeOffset.Parse("2025-02-01T00:00:00Z"),
- Start = DateTimeOffset.Parse("2025-01-01T00:00:00Z"),
- UsagePercent = 42.5,
+ AutoTopupEnabled = false,
+ Balance = 50000,
+ LifetimePurchased = 140000,
+ LifetimeUsed = 90000,
},
};
long expectedMonitorsAllowed = 10;
long expectedMonitorsUsed = 3;
ApiEnum expectedPlan = Plan.Active;
- CurrentPeriod expectedCurrentPeriod = new()
+ CreditInfo expectedCreditInfo = new()
{
- End = DateTimeOffset.Parse("2025-02-01T00:00:00Z"),
- Start = DateTimeOffset.Parse("2025-01-01T00:00:00Z"),
- UsagePercent = 42.5,
+ AutoTopupEnabled = false,
+ Balance = 50000,
+ LifetimePurchased = 140000,
+ LifetimeUsed = 90000,
};
Assert.Equal(expectedMonitorsAllowed, model.MonitorsAllowed);
Assert.Equal(expectedMonitorsUsed, model.MonitorsUsed);
Assert.Equal(expectedPlan, model.Plan);
- Assert.Equal(expectedCurrentPeriod, model.CurrentPeriod);
+ Assert.Equal(expectedCreditInfo, model.CreditInfo);
}
[Fact]
@@ -48,11 +49,12 @@ public void SerializationRoundtrip_Works()
MonitorsAllowed = 10,
MonitorsUsed = 3,
Plan = Plan.Active,
- CurrentPeriod = new()
+ CreditInfo = new()
{
- End = DateTimeOffset.Parse("2025-02-01T00:00:00Z"),
- Start = DateTimeOffset.Parse("2025-01-01T00:00:00Z"),
- UsagePercent = 42.5,
+ AutoTopupEnabled = false,
+ Balance = 50000,
+ LifetimePurchased = 140000,
+ LifetimeUsed = 90000,
},
};
@@ -73,11 +75,12 @@ public void FieldRoundtripThroughSerialization_Works()
MonitorsAllowed = 10,
MonitorsUsed = 3,
Plan = Plan.Active,
- CurrentPeriod = new()
+ CreditInfo = new()
{
- End = DateTimeOffset.Parse("2025-02-01T00:00:00Z"),
- Start = DateTimeOffset.Parse("2025-01-01T00:00:00Z"),
- UsagePercent = 42.5,
+ AutoTopupEnabled = false,
+ Balance = 50000,
+ LifetimePurchased = 140000,
+ LifetimeUsed = 90000,
},
};
@@ -91,17 +94,18 @@ public void FieldRoundtripThroughSerialization_Works()
long expectedMonitorsAllowed = 10;
long expectedMonitorsUsed = 3;
ApiEnum expectedPlan = Plan.Active;
- CurrentPeriod expectedCurrentPeriod = new()
+ CreditInfo expectedCreditInfo = new()
{
- End = DateTimeOffset.Parse("2025-02-01T00:00:00Z"),
- Start = DateTimeOffset.Parse("2025-01-01T00:00:00Z"),
- UsagePercent = 42.5,
+ AutoTopupEnabled = false,
+ Balance = 50000,
+ LifetimePurchased = 140000,
+ LifetimeUsed = 90000,
};
Assert.Equal(expectedMonitorsAllowed, deserialized.MonitorsAllowed);
Assert.Equal(expectedMonitorsUsed, deserialized.MonitorsUsed);
Assert.Equal(expectedPlan, deserialized.Plan);
- Assert.Equal(expectedCurrentPeriod, deserialized.CurrentPeriod);
+ Assert.Equal(expectedCreditInfo, deserialized.CreditInfo);
}
[Fact]
@@ -112,11 +116,12 @@ public void Validation_Works()
MonitorsAllowed = 10,
MonitorsUsed = 3,
Plan = Plan.Active,
- CurrentPeriod = new()
+ CreditInfo = new()
{
- End = DateTimeOffset.Parse("2025-02-01T00:00:00Z"),
- Start = DateTimeOffset.Parse("2025-01-01T00:00:00Z"),
- UsagePercent = 42.5,
+ AutoTopupEnabled = false,
+ Balance = 50000,
+ LifetimePurchased = 140000,
+ LifetimeUsed = 90000,
},
};
@@ -133,8 +138,8 @@ public void OptionalNonNullablePropertiesUnsetAreNotSet_Works()
Plan = Plan.Active,
};
- Assert.Null(model.CurrentPeriod);
- Assert.False(model.RawData.ContainsKey("currentPeriod"));
+ Assert.Null(model.CreditInfo);
+ Assert.False(model.RawData.ContainsKey("creditInfo"));
}
[Fact]
@@ -160,11 +165,11 @@ public void OptionalNonNullablePropertiesSetToNullAreNotSet_Works()
Plan = Plan.Active,
// Null should be interpreted as omitted for these properties
- CurrentPeriod = null,
+ CreditInfo = null,
};
- Assert.Null(model.CurrentPeriod);
- Assert.False(model.RawData.ContainsKey("currentPeriod"));
+ Assert.Null(model.CreditInfo);
+ Assert.False(model.RawData.ContainsKey("creditInfo"));
}
[Fact]
@@ -177,7 +182,7 @@ public void OptionalNonNullablePropertiesSetToNullValidation_Works()
Plan = Plan.Active,
// Null should be interpreted as omitted for these properties
- CurrentPeriod = null,
+ CreditInfo = null,
};
model.Validate();
@@ -191,11 +196,12 @@ public void CopyConstructor_Works()
MonitorsAllowed = 10,
MonitorsUsed = 3,
Plan = Plan.Active,
- CurrentPeriod = new()
+ CreditInfo = new()
{
- End = DateTimeOffset.Parse("2025-02-01T00:00:00Z"),
- Start = DateTimeOffset.Parse("2025-01-01T00:00:00Z"),
- UsagePercent = 42.5,
+ AutoTopupEnabled = false,
+ Balance = 50000,
+ LifetimePurchased = 140000,
+ LifetimeUsed = 90000,
},
};
@@ -263,39 +269,43 @@ public void InvalidEnumSerializationRoundtrip_Works()
}
}
-public class CurrentPeriodTest : TestBase
+public class CreditInfoTest : TestBase
{
[Fact]
public void FieldRoundtrip_Works()
{
- var model = new CurrentPeriod
+ var model = new CreditInfo
{
- End = DateTimeOffset.Parse("2025-02-01T00:00:00Z"),
- Start = DateTimeOffset.Parse("2025-01-01T00:00:00Z"),
- UsagePercent = 42.5,
+ AutoTopupEnabled = false,
+ Balance = 50000,
+ LifetimePurchased = 140000,
+ LifetimeUsed = 90000,
};
- DateTimeOffset expectedEnd = DateTimeOffset.Parse("2025-02-01T00:00:00Z");
- DateTimeOffset expectedStart = DateTimeOffset.Parse("2025-01-01T00:00:00Z");
- double expectedUsagePercent = 42.5;
+ bool expectedAutoTopupEnabled = false;
+ long expectedBalance = 50000;
+ long expectedLifetimePurchased = 140000;
+ long expectedLifetimeUsed = 90000;
- Assert.Equal(expectedEnd, model.End);
- Assert.Equal(expectedStart, model.Start);
- Assert.Equal(expectedUsagePercent, model.UsagePercent);
+ Assert.Equal(expectedAutoTopupEnabled, model.AutoTopupEnabled);
+ Assert.Equal(expectedBalance, model.Balance);
+ Assert.Equal(expectedLifetimePurchased, model.LifetimePurchased);
+ Assert.Equal(expectedLifetimeUsed, model.LifetimeUsed);
}
[Fact]
public void SerializationRoundtrip_Works()
{
- var model = new CurrentPeriod
+ var model = new CreditInfo
{
- End = DateTimeOffset.Parse("2025-02-01T00:00:00Z"),
- Start = DateTimeOffset.Parse("2025-01-01T00:00:00Z"),
- UsagePercent = 42.5,
+ AutoTopupEnabled = false,
+ Balance = 50000,
+ LifetimePurchased = 140000,
+ LifetimeUsed = 90000,
};
string json = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
- var deserialized = JsonSerializer.Deserialize(
+ var deserialized = JsonSerializer.Deserialize(
json,
ModelBase.SerializerOptions
);
@@ -306,37 +316,41 @@ public void SerializationRoundtrip_Works()
[Fact]
public void FieldRoundtripThroughSerialization_Works()
{
- var model = new CurrentPeriod
+ var model = new CreditInfo
{
- End = DateTimeOffset.Parse("2025-02-01T00:00:00Z"),
- Start = DateTimeOffset.Parse("2025-01-01T00:00:00Z"),
- UsagePercent = 42.5,
+ AutoTopupEnabled = false,
+ Balance = 50000,
+ LifetimePurchased = 140000,
+ LifetimeUsed = 90000,
};
string element = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
- var deserialized = JsonSerializer.Deserialize(
+ var deserialized = JsonSerializer.Deserialize(
element,
ModelBase.SerializerOptions
);
Assert.NotNull(deserialized);
- DateTimeOffset expectedEnd = DateTimeOffset.Parse("2025-02-01T00:00:00Z");
- DateTimeOffset expectedStart = DateTimeOffset.Parse("2025-01-01T00:00:00Z");
- double expectedUsagePercent = 42.5;
+ bool expectedAutoTopupEnabled = false;
+ long expectedBalance = 50000;
+ long expectedLifetimePurchased = 140000;
+ long expectedLifetimeUsed = 90000;
- Assert.Equal(expectedEnd, deserialized.End);
- Assert.Equal(expectedStart, deserialized.Start);
- Assert.Equal(expectedUsagePercent, deserialized.UsagePercent);
+ Assert.Equal(expectedAutoTopupEnabled, deserialized.AutoTopupEnabled);
+ Assert.Equal(expectedBalance, deserialized.Balance);
+ Assert.Equal(expectedLifetimePurchased, deserialized.LifetimePurchased);
+ Assert.Equal(expectedLifetimeUsed, deserialized.LifetimeUsed);
}
[Fact]
public void Validation_Works()
{
- var model = new CurrentPeriod
+ var model = new CreditInfo
{
- End = DateTimeOffset.Parse("2025-02-01T00:00:00Z"),
- Start = DateTimeOffset.Parse("2025-01-01T00:00:00Z"),
- UsagePercent = 42.5,
+ AutoTopupEnabled = false,
+ Balance = 50000,
+ LifetimePurchased = 140000,
+ LifetimeUsed = 90000,
};
model.Validate();
@@ -345,14 +359,15 @@ public void Validation_Works()
[Fact]
public void CopyConstructor_Works()
{
- var model = new CurrentPeriod
+ var model = new CreditInfo
{
- End = DateTimeOffset.Parse("2025-02-01T00:00:00Z"),
- Start = DateTimeOffset.Parse("2025-01-01T00:00:00Z"),
- UsagePercent = 42.5,
+ AutoTopupEnabled = false,
+ Balance = 50000,
+ LifetimePurchased = 140000,
+ LifetimeUsed = 90000,
};
- CurrentPeriod copied = new(model);
+ CreditInfo copied = new(model);
Assert.Equal(model, copied);
}
diff --git a/src/XTwitterScraper.Tests/Models/ErrorTest.cs b/src/XTwitterScraper.Tests/Models/ErrorTest.cs
index 6b410d1..d2b303f 100644
--- a/src/XTwitterScraper.Tests/Models/ErrorTest.cs
+++ b/src/XTwitterScraper.Tests/Models/ErrorTest.cs
@@ -73,17 +73,17 @@ public class ErrorErrorTest : TestBase
[InlineData(ErrorError.InvalidTweetID)]
[InlineData(ErrorError.InvalidTweetUrl)]
[InlineData(ErrorError.InvalidUsername)]
+ [InlineData(ErrorError.InsufficientCredits)]
[InlineData(ErrorError.MissingParams)]
[InlineData(ErrorError.MissingQuery)]
[InlineData(ErrorError.MonitorAlreadyExists)]
[InlineData(ErrorError.MonitorLimitReached)]
+ [InlineData(ErrorError.NoCredits)]
[InlineData(ErrorError.NoSubscription)]
[InlineData(ErrorError.NotFound)]
- [InlineData(ErrorError.StreamRegistrationFailed)]
[InlineData(ErrorError.SubscriptionInactive)]
[InlineData(ErrorError.TweetNotFound)]
[InlineData(ErrorError.Unauthenticated)]
- [InlineData(ErrorError.UsageLimitReached)]
[InlineData(ErrorError.UserNotFound)]
[InlineData(ErrorError.WebhookInactive)]
[InlineData(ErrorError.XApiRateLimited)]
@@ -118,17 +118,17 @@ public void InvalidEnumValidationThrows_Works()
[InlineData(ErrorError.InvalidTweetID)]
[InlineData(ErrorError.InvalidTweetUrl)]
[InlineData(ErrorError.InvalidUsername)]
+ [InlineData(ErrorError.InsufficientCredits)]
[InlineData(ErrorError.MissingParams)]
[InlineData(ErrorError.MissingQuery)]
[InlineData(ErrorError.MonitorAlreadyExists)]
[InlineData(ErrorError.MonitorLimitReached)]
+ [InlineData(ErrorError.NoCredits)]
[InlineData(ErrorError.NoSubscription)]
[InlineData(ErrorError.NotFound)]
- [InlineData(ErrorError.StreamRegistrationFailed)]
[InlineData(ErrorError.SubscriptionInactive)]
[InlineData(ErrorError.TweetNotFound)]
[InlineData(ErrorError.Unauthenticated)]
- [InlineData(ErrorError.UsageLimitReached)]
[InlineData(ErrorError.UserNotFound)]
[InlineData(ErrorError.WebhookInactive)]
[InlineData(ErrorError.XApiRateLimited)]
diff --git a/src/XTwitterScraper.Tests/Models/EventTypeTest.cs b/src/XTwitterScraper.Tests/Models/EventTypeTest.cs
index b47298d..90e4dfe 100644
--- a/src/XTwitterScraper.Tests/Models/EventTypeTest.cs
+++ b/src/XTwitterScraper.Tests/Models/EventTypeTest.cs
@@ -12,8 +12,6 @@ public class EventTypeTest : TestBase
[InlineData(EventType.TweetReply)]
[InlineData(EventType.TweetRetweet)]
[InlineData(EventType.TweetQuote)]
- [InlineData(EventType.FollowerGained)]
- [InlineData(EventType.FollowerLost)]
public void Validation_Works(EventType rawValue)
{
// force implicit conversion because Theory can't do that for us
@@ -38,8 +36,6 @@ public void InvalidEnumValidationThrows_Works()
[InlineData(EventType.TweetReply)]
[InlineData(EventType.TweetRetweet)]
[InlineData(EventType.TweetQuote)]
- [InlineData(EventType.FollowerGained)]
- [InlineData(EventType.FollowerLost)]
public void SerializationRoundtrip_Works(EventType rawValue)
{
// force implicit conversion because Theory can't do that for us
diff --git a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionEstimateCostResponseTest.cs b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionEstimateCostResponseTest.cs
index 4936fbd..c759b4d 100644
--- a/src/XTwitterScraper.Tests/Models/Extractions/ExtractionEstimateCostResponseTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Extractions/ExtractionEstimateCostResponseTest.cs
@@ -12,23 +12,26 @@ public void FieldRoundtrip_Works()
var model = new ExtractionEstimateCostResponse
{
Allowed = true,
+ CreditsAvailable = "50000",
+ CreditsRequired = "500",
EstimatedResults = 500,
- ProjectedPercent = 30,
- Source = "api_count",
- UsagePercent = 25,
+ Source = "replyCount",
+ ResolvedXUserID = "123456",
};
bool expectedAllowed = true;
+ string expectedCreditsAvailable = "50000";
+ string expectedCreditsRequired = "500";
long expectedEstimatedResults = 500;
- double expectedProjectedPercent = 30;
- string expectedSource = "api_count";
- double expectedUsagePercent = 25;
+ string expectedSource = "replyCount";
+ string expectedResolvedXUserID = "123456";
Assert.Equal(expectedAllowed, model.Allowed);
+ Assert.Equal(expectedCreditsAvailable, model.CreditsAvailable);
+ Assert.Equal(expectedCreditsRequired, model.CreditsRequired);
Assert.Equal(expectedEstimatedResults, model.EstimatedResults);
- Assert.Equal(expectedProjectedPercent, model.ProjectedPercent);
Assert.Equal(expectedSource, model.Source);
- Assert.Equal(expectedUsagePercent, model.UsagePercent);
+ Assert.Equal(expectedResolvedXUserID, model.ResolvedXUserID);
}
[Fact]
@@ -37,10 +40,11 @@ public void SerializationRoundtrip_Works()
var model = new ExtractionEstimateCostResponse
{
Allowed = true,
+ CreditsAvailable = "50000",
+ CreditsRequired = "500",
EstimatedResults = 500,
- ProjectedPercent = 30,
- Source = "api_count",
- UsagePercent = 25,
+ Source = "replyCount",
+ ResolvedXUserID = "123456",
};
string json = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
@@ -58,10 +62,11 @@ public void FieldRoundtripThroughSerialization_Works()
var model = new ExtractionEstimateCostResponse
{
Allowed = true,
+ CreditsAvailable = "50000",
+ CreditsRequired = "500",
EstimatedResults = 500,
- ProjectedPercent = 30,
- Source = "api_count",
- UsagePercent = 25,
+ Source = "replyCount",
+ ResolvedXUserID = "123456",
};
string element = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
@@ -72,16 +77,18 @@ public void FieldRoundtripThroughSerialization_Works()
Assert.NotNull(deserialized);
bool expectedAllowed = true;
+ string expectedCreditsAvailable = "50000";
+ string expectedCreditsRequired = "500";
long expectedEstimatedResults = 500;
- double expectedProjectedPercent = 30;
- string expectedSource = "api_count";
- double expectedUsagePercent = 25;
+ string expectedSource = "replyCount";
+ string expectedResolvedXUserID = "123456";
Assert.Equal(expectedAllowed, deserialized.Allowed);
+ Assert.Equal(expectedCreditsAvailable, deserialized.CreditsAvailable);
+ Assert.Equal(expectedCreditsRequired, deserialized.CreditsRequired);
Assert.Equal(expectedEstimatedResults, deserialized.EstimatedResults);
- Assert.Equal(expectedProjectedPercent, deserialized.ProjectedPercent);
Assert.Equal(expectedSource, deserialized.Source);
- Assert.Equal(expectedUsagePercent, deserialized.UsagePercent);
+ Assert.Equal(expectedResolvedXUserID, deserialized.ResolvedXUserID);
}
[Fact]
@@ -90,10 +97,79 @@ public void Validation_Works()
var model = new ExtractionEstimateCostResponse
{
Allowed = true,
+ CreditsAvailable = "50000",
+ CreditsRequired = "500",
EstimatedResults = 500,
- ProjectedPercent = 30,
- Source = "api_count",
- UsagePercent = 25,
+ Source = "replyCount",
+ ResolvedXUserID = "123456",
+ };
+
+ model.Validate();
+ }
+
+ [Fact]
+ public void OptionalNonNullablePropertiesUnsetAreNotSet_Works()
+ {
+ var model = new ExtractionEstimateCostResponse
+ {
+ Allowed = true,
+ CreditsAvailable = "50000",
+ CreditsRequired = "500",
+ EstimatedResults = 500,
+ Source = "replyCount",
+ };
+
+ Assert.Null(model.ResolvedXUserID);
+ Assert.False(model.RawData.ContainsKey("resolvedXUserId"));
+ }
+
+ [Fact]
+ public void OptionalNonNullablePropertiesUnsetValidation_Works()
+ {
+ var model = new ExtractionEstimateCostResponse
+ {
+ Allowed = true,
+ CreditsAvailable = "50000",
+ CreditsRequired = "500",
+ EstimatedResults = 500,
+ Source = "replyCount",
+ };
+
+ model.Validate();
+ }
+
+ [Fact]
+ public void OptionalNonNullablePropertiesSetToNullAreNotSet_Works()
+ {
+ var model = new ExtractionEstimateCostResponse
+ {
+ Allowed = true,
+ CreditsAvailable = "50000",
+ CreditsRequired = "500",
+ EstimatedResults = 500,
+ Source = "replyCount",
+
+ // Null should be interpreted as omitted for these properties
+ ResolvedXUserID = null,
+ };
+
+ Assert.Null(model.ResolvedXUserID);
+ Assert.False(model.RawData.ContainsKey("resolvedXUserId"));
+ }
+
+ [Fact]
+ public void OptionalNonNullablePropertiesSetToNullValidation_Works()
+ {
+ var model = new ExtractionEstimateCostResponse
+ {
+ Allowed = true,
+ CreditsAvailable = "50000",
+ CreditsRequired = "500",
+ EstimatedResults = 500,
+ Source = "replyCount",
+
+ // Null should be interpreted as omitted for these properties
+ ResolvedXUserID = null,
};
model.Validate();
@@ -105,10 +181,11 @@ public void CopyConstructor_Works()
var model = new ExtractionEstimateCostResponse
{
Allowed = true,
+ CreditsAvailable = "50000",
+ CreditsRequired = "500",
EstimatedResults = 500,
- ProjectedPercent = 30,
- Source = "api_count",
- UsagePercent = 25,
+ Source = "replyCount",
+ ResolvedXUserID = "123456",
};
ExtractionEstimateCostResponse copied = new(model);
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationCreateParamsTest.cs
deleted file mode 100644
index fe1a87a..0000000
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationCreateParamsTest.cs
+++ /dev/null
@@ -1,127 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text.Json;
-using XTwitterScraper.Core;
-using XTwitterScraper.Models;
-using XTwitterScraper.Models.Integrations;
-
-namespace XTwitterScraper.Tests.Models.Integrations;
-
-public class IntegrationCreateParamsTest : TestBase
-{
- [Fact]
- public void FieldRoundtrip_Works()
- {
- var parameters = new IntegrationCreateParams
- {
- Config = new("-1001234567890"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- Name = "My Telegram Bot",
- };
-
- Config expectedConfig = new("-1001234567890");
- List> expectedEventTypes =
- [
- EventType.TweetNew,
- EventType.FollowerGained,
- ];
- string expectedName = "My Telegram Bot";
- JsonElement expectedType = JsonSerializer.SerializeToElement("telegram");
-
- Assert.Equal(expectedConfig, parameters.Config);
- Assert.Equal(expectedEventTypes.Count, parameters.EventTypes.Count);
- for (int i = 0; i < expectedEventTypes.Count; i++)
- {
- Assert.Equal(expectedEventTypes[i], parameters.EventTypes[i]);
- }
- Assert.Equal(expectedName, parameters.Name);
- Assert.True(JsonElement.DeepEquals(expectedType, parameters.Type));
- }
-
- [Fact]
- public void Url_Works()
- {
- IntegrationCreateParams parameters = new()
- {
- Config = new("-1001234567890"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- Name = "My Telegram Bot",
- Type = JsonSerializer.SerializeToElement("telegram"),
- };
-
- var url = parameters.Url(new() { ApiKey = "My API Key" });
-
- Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/integrations"), url));
- }
-
- [Fact]
- public void CopyConstructor_Works()
- {
- var parameters = new IntegrationCreateParams
- {
- Config = new("-1001234567890"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- Name = "My Telegram Bot",
- };
-
- IntegrationCreateParams copied = new(parameters);
-
- Assert.Equal(parameters, copied);
- }
-}
-
-public class ConfigTest : TestBase
-{
- [Fact]
- public void FieldRoundtrip_Works()
- {
- var model = new Config { ChatID = "-1001234567890" };
-
- string expectedChatID = "-1001234567890";
-
- Assert.Equal(expectedChatID, model.ChatID);
- }
-
- [Fact]
- public void SerializationRoundtrip_Works()
- {
- var model = new Config { ChatID = "-1001234567890" };
-
- string json = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
- var deserialized = JsonSerializer.Deserialize(json, ModelBase.SerializerOptions);
-
- Assert.Equal(model, deserialized);
- }
-
- [Fact]
- public void FieldRoundtripThroughSerialization_Works()
- {
- var model = new Config { ChatID = "-1001234567890" };
-
- string element = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
- var deserialized = JsonSerializer.Deserialize(element, ModelBase.SerializerOptions);
- Assert.NotNull(deserialized);
-
- string expectedChatID = "-1001234567890";
-
- Assert.Equal(expectedChatID, deserialized.ChatID);
- }
-
- [Fact]
- public void Validation_Works()
- {
- var model = new Config { ChatID = "-1001234567890" };
-
- model.Validate();
- }
-
- [Fact]
- public void CopyConstructor_Works()
- {
- var model = new Config { ChatID = "-1001234567890" };
-
- Config copied = new(model);
-
- Assert.Equal(model, copied);
- }
-}
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeleteParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeleteParamsTest.cs
deleted file mode 100644
index f0d5916..0000000
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeleteParamsTest.cs
+++ /dev/null
@@ -1,37 +0,0 @@
-using System;
-using XTwitterScraper.Models.Integrations;
-
-namespace XTwitterScraper.Tests.Models.Integrations;
-
-public class IntegrationDeleteParamsTest : TestBase
-{
- [Fact]
- public void FieldRoundtrip_Works()
- {
- var parameters = new IntegrationDeleteParams { ID = "id" };
-
- string expectedID = "id";
-
- Assert.Equal(expectedID, parameters.ID);
- }
-
- [Fact]
- public void Url_Works()
- {
- IntegrationDeleteParams parameters = new() { ID = "id" };
-
- var url = parameters.Url(new() { ApiKey = "My API Key" });
-
- Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/integrations/id"), url));
- }
-
- [Fact]
- public void CopyConstructor_Works()
- {
- var parameters = new IntegrationDeleteParams { ID = "id" };
-
- IntegrationDeleteParams copied = new(parameters);
-
- Assert.Equal(parameters, copied);
- }
-}
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeleteResponseTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeleteResponseTest.cs
deleted file mode 100644
index d325594..0000000
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeleteResponseTest.cs
+++ /dev/null
@@ -1,67 +0,0 @@
-using System.Text.Json;
-using XTwitterScraper.Core;
-using XTwitterScraper.Models.Integrations;
-
-namespace XTwitterScraper.Tests.Models.Integrations;
-
-public class IntegrationDeleteResponseTest : TestBase
-{
- [Fact]
- public void FieldRoundtrip_Works()
- {
- var model = new IntegrationDeleteResponse { };
-
- JsonElement expectedSuccess = JsonSerializer.SerializeToElement(true);
-
- Assert.True(JsonElement.DeepEquals(expectedSuccess, model.Success));
- }
-
- [Fact]
- public void SerializationRoundtrip_Works()
- {
- var model = new IntegrationDeleteResponse { };
-
- string json = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
- var deserialized = JsonSerializer.Deserialize(
- json,
- ModelBase.SerializerOptions
- );
-
- Assert.Equal(model, deserialized);
- }
-
- [Fact]
- public void FieldRoundtripThroughSerialization_Works()
- {
- var model = new IntegrationDeleteResponse { };
-
- string element = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
- var deserialized = JsonSerializer.Deserialize(
- element,
- ModelBase.SerializerOptions
- );
- Assert.NotNull(deserialized);
-
- JsonElement expectedSuccess = JsonSerializer.SerializeToElement(true);
-
- Assert.True(JsonElement.DeepEquals(expectedSuccess, deserialized.Success));
- }
-
- [Fact]
- public void Validation_Works()
- {
- var model = new IntegrationDeleteResponse { };
-
- model.Validate();
- }
-
- [Fact]
- public void CopyConstructor_Works()
- {
- var model = new IntegrationDeleteResponse { };
-
- IntegrationDeleteResponse copied = new(model);
-
- Assert.Equal(model, copied);
- }
-}
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeliveryTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeliveryTest.cs
deleted file mode 100644
index b0fa290..0000000
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationDeliveryTest.cs
+++ /dev/null
@@ -1,256 +0,0 @@
-using System;
-using System.Text.Json;
-using XTwitterScraper.Core;
-using XTwitterScraper.Models.Integrations;
-
-namespace XTwitterScraper.Tests.Models.Integrations;
-
-public class IntegrationDeliveryTest : TestBase
-{
- [Fact]
- public void FieldRoundtrip_Works()
- {
- var model = new IntegrationDelivery
- {
- ID = "42",
- Attempts = 1,
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventType = "tweet.new",
- Status = "delivered",
- DeliveredAt = DateTimeOffset.Parse("2025-01-15T12:00:01Z"),
- LastError = "",
- LastStatusCode = 200,
- SourceID = "100",
- SourceType = "monitor",
- };
-
- string expectedID = "42";
- long expectedAttempts = 1;
- DateTimeOffset expectedCreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z");
- string expectedEventType = "tweet.new";
- string expectedStatus = "delivered";
- DateTimeOffset expectedDeliveredAt = DateTimeOffset.Parse("2025-01-15T12:00:01Z");
- string expectedLastError = "";
- long expectedLastStatusCode = 200;
- string expectedSourceID = "100";
- string expectedSourceType = "monitor";
-
- Assert.Equal(expectedID, model.ID);
- Assert.Equal(expectedAttempts, model.Attempts);
- Assert.Equal(expectedCreatedAt, model.CreatedAt);
- Assert.Equal(expectedEventType, model.EventType);
- Assert.Equal(expectedStatus, model.Status);
- Assert.Equal(expectedDeliveredAt, model.DeliveredAt);
- Assert.Equal(expectedLastError, model.LastError);
- Assert.Equal(expectedLastStatusCode, model.LastStatusCode);
- Assert.Equal(expectedSourceID, model.SourceID);
- Assert.Equal(expectedSourceType, model.SourceType);
- }
-
- [Fact]
- public void SerializationRoundtrip_Works()
- {
- var model = new IntegrationDelivery
- {
- ID = "42",
- Attempts = 1,
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventType = "tweet.new",
- Status = "delivered",
- DeliveredAt = DateTimeOffset.Parse("2025-01-15T12:00:01Z"),
- LastError = "",
- LastStatusCode = 200,
- SourceID = "100",
- SourceType = "monitor",
- };
-
- string json = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
- var deserialized = JsonSerializer.Deserialize(
- json,
- ModelBase.SerializerOptions
- );
-
- Assert.Equal(model, deserialized);
- }
-
- [Fact]
- public void FieldRoundtripThroughSerialization_Works()
- {
- var model = new IntegrationDelivery
- {
- ID = "42",
- Attempts = 1,
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventType = "tweet.new",
- Status = "delivered",
- DeliveredAt = DateTimeOffset.Parse("2025-01-15T12:00:01Z"),
- LastError = "",
- LastStatusCode = 200,
- SourceID = "100",
- SourceType = "monitor",
- };
-
- string element = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
- var deserialized = JsonSerializer.Deserialize(
- element,
- ModelBase.SerializerOptions
- );
- Assert.NotNull(deserialized);
-
- string expectedID = "42";
- long expectedAttempts = 1;
- DateTimeOffset expectedCreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z");
- string expectedEventType = "tweet.new";
- string expectedStatus = "delivered";
- DateTimeOffset expectedDeliveredAt = DateTimeOffset.Parse("2025-01-15T12:00:01Z");
- string expectedLastError = "";
- long expectedLastStatusCode = 200;
- string expectedSourceID = "100";
- string expectedSourceType = "monitor";
-
- Assert.Equal(expectedID, deserialized.ID);
- Assert.Equal(expectedAttempts, deserialized.Attempts);
- Assert.Equal(expectedCreatedAt, deserialized.CreatedAt);
- Assert.Equal(expectedEventType, deserialized.EventType);
- Assert.Equal(expectedStatus, deserialized.Status);
- Assert.Equal(expectedDeliveredAt, deserialized.DeliveredAt);
- Assert.Equal(expectedLastError, deserialized.LastError);
- Assert.Equal(expectedLastStatusCode, deserialized.LastStatusCode);
- Assert.Equal(expectedSourceID, deserialized.SourceID);
- Assert.Equal(expectedSourceType, deserialized.SourceType);
- }
-
- [Fact]
- public void Validation_Works()
- {
- var model = new IntegrationDelivery
- {
- ID = "42",
- Attempts = 1,
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventType = "tweet.new",
- Status = "delivered",
- DeliveredAt = DateTimeOffset.Parse("2025-01-15T12:00:01Z"),
- LastError = "",
- LastStatusCode = 200,
- SourceID = "100",
- SourceType = "monitor",
- };
-
- model.Validate();
- }
-
- [Fact]
- public void OptionalNonNullablePropertiesUnsetAreNotSet_Works()
- {
- var model = new IntegrationDelivery
- {
- ID = "42",
- Attempts = 1,
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventType = "tweet.new",
- Status = "delivered",
- };
-
- Assert.Null(model.DeliveredAt);
- Assert.False(model.RawData.ContainsKey("deliveredAt"));
- Assert.Null(model.LastError);
- Assert.False(model.RawData.ContainsKey("lastError"));
- Assert.Null(model.LastStatusCode);
- Assert.False(model.RawData.ContainsKey("lastStatusCode"));
- Assert.Null(model.SourceID);
- Assert.False(model.RawData.ContainsKey("sourceId"));
- Assert.Null(model.SourceType);
- Assert.False(model.RawData.ContainsKey("sourceType"));
- }
-
- [Fact]
- public void OptionalNonNullablePropertiesUnsetValidation_Works()
- {
- var model = new IntegrationDelivery
- {
- ID = "42",
- Attempts = 1,
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventType = "tweet.new",
- Status = "delivered",
- };
-
- model.Validate();
- }
-
- [Fact]
- public void OptionalNonNullablePropertiesSetToNullAreNotSet_Works()
- {
- var model = new IntegrationDelivery
- {
- ID = "42",
- Attempts = 1,
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventType = "tweet.new",
- Status = "delivered",
-
- // Null should be interpreted as omitted for these properties
- DeliveredAt = null,
- LastError = null,
- LastStatusCode = null,
- SourceID = null,
- SourceType = null,
- };
-
- Assert.Null(model.DeliveredAt);
- Assert.False(model.RawData.ContainsKey("deliveredAt"));
- Assert.Null(model.LastError);
- Assert.False(model.RawData.ContainsKey("lastError"));
- Assert.Null(model.LastStatusCode);
- Assert.False(model.RawData.ContainsKey("lastStatusCode"));
- Assert.Null(model.SourceID);
- Assert.False(model.RawData.ContainsKey("sourceId"));
- Assert.Null(model.SourceType);
- Assert.False(model.RawData.ContainsKey("sourceType"));
- }
-
- [Fact]
- public void OptionalNonNullablePropertiesSetToNullValidation_Works()
- {
- var model = new IntegrationDelivery
- {
- ID = "42",
- Attempts = 1,
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventType = "tweet.new",
- Status = "delivered",
-
- // Null should be interpreted as omitted for these properties
- DeliveredAt = null,
- LastError = null,
- LastStatusCode = null,
- SourceID = null,
- SourceType = null,
- };
-
- model.Validate();
- }
-
- [Fact]
- public void CopyConstructor_Works()
- {
- var model = new IntegrationDelivery
- {
- ID = "42",
- Attempts = 1,
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventType = "tweet.new",
- Status = "delivered",
- DeliveredAt = DateTimeOffset.Parse("2025-01-15T12:00:01Z"),
- LastError = "",
- LastStatusCode = 200,
- SourceID = "100",
- SourceType = "monitor",
- };
-
- IntegrationDelivery copied = new(model);
-
- Assert.Equal(model, copied);
- }
-}
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListDeliveriesParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListDeliveriesParamsTest.cs
deleted file mode 100644
index 6895a54..0000000
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListDeliveriesParamsTest.cs
+++ /dev/null
@@ -1,68 +0,0 @@
-using System;
-using XTwitterScraper.Models.Integrations;
-
-namespace XTwitterScraper.Tests.Models.Integrations;
-
-public class IntegrationListDeliveriesParamsTest : TestBase
-{
- [Fact]
- public void FieldRoundtrip_Works()
- {
- var parameters = new IntegrationListDeliveriesParams { ID = "id", Limit = 1 };
-
- string expectedID = "id";
- long expectedLimit = 1;
-
- Assert.Equal(expectedID, parameters.ID);
- Assert.Equal(expectedLimit, parameters.Limit);
- }
-
- [Fact]
- public void OptionalNonNullableParamsUnsetAreNotSet_Works()
- {
- var parameters = new IntegrationListDeliveriesParams { ID = "id" };
-
- Assert.Null(parameters.Limit);
- Assert.False(parameters.RawQueryData.ContainsKey("limit"));
- }
-
- [Fact]
- public void OptionalNonNullableParamsSetToNullAreNotSet_Works()
- {
- var parameters = new IntegrationListDeliveriesParams
- {
- ID = "id",
-
- // Null should be interpreted as omitted for these properties
- Limit = null,
- };
-
- Assert.Null(parameters.Limit);
- Assert.False(parameters.RawQueryData.ContainsKey("limit"));
- }
-
- [Fact]
- public void Url_Works()
- {
- IntegrationListDeliveriesParams parameters = new() { ID = "id", Limit = 1 };
-
- var url = parameters.Url(new() { ApiKey = "My API Key" });
-
- Assert.True(
- TestBase.UrisEqual(
- new Uri("https://xquik.com/api/v1/integrations/id/deliveries?limit=1"),
- url
- )
- );
- }
-
- [Fact]
- public void CopyConstructor_Works()
- {
- var parameters = new IntegrationListDeliveriesParams { ID = "id", Limit = 1 };
-
- IntegrationListDeliveriesParams copied = new(parameters);
-
- Assert.Equal(parameters, copied);
- }
-}
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListDeliveriesResponseTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListDeliveriesResponseTest.cs
deleted file mode 100644
index dcf4f90..0000000
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListDeliveriesResponseTest.cs
+++ /dev/null
@@ -1,197 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text.Json;
-using XTwitterScraper.Core;
-using XTwitterScraper.Models.Integrations;
-
-namespace XTwitterScraper.Tests.Models.Integrations;
-
-public class IntegrationListDeliveriesResponseTest : TestBase
-{
- [Fact]
- public void FieldRoundtrip_Works()
- {
- var model = new IntegrationListDeliveriesResponse
- {
- Deliveries =
- [
- new()
- {
- ID = "42",
- Attempts = 1,
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventType = "tweet.new",
- Status = "delivered",
- DeliveredAt = DateTimeOffset.Parse("2025-01-15T12:00:01Z"),
- LastError = "",
- LastStatusCode = 200,
- SourceID = "100",
- SourceType = "monitor",
- },
- ],
- };
-
- List expectedDeliveries =
- [
- new()
- {
- ID = "42",
- Attempts = 1,
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventType = "tweet.new",
- Status = "delivered",
- DeliveredAt = DateTimeOffset.Parse("2025-01-15T12:00:01Z"),
- LastError = "",
- LastStatusCode = 200,
- SourceID = "100",
- SourceType = "monitor",
- },
- ];
-
- Assert.Equal(expectedDeliveries.Count, model.Deliveries.Count);
- for (int i = 0; i < expectedDeliveries.Count; i++)
- {
- Assert.Equal(expectedDeliveries[i], model.Deliveries[i]);
- }
- }
-
- [Fact]
- public void SerializationRoundtrip_Works()
- {
- var model = new IntegrationListDeliveriesResponse
- {
- Deliveries =
- [
- new()
- {
- ID = "42",
- Attempts = 1,
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventType = "tweet.new",
- Status = "delivered",
- DeliveredAt = DateTimeOffset.Parse("2025-01-15T12:00:01Z"),
- LastError = "",
- LastStatusCode = 200,
- SourceID = "100",
- SourceType = "monitor",
- },
- ],
- };
-
- string json = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
- var deserialized = JsonSerializer.Deserialize(
- json,
- ModelBase.SerializerOptions
- );
-
- Assert.Equal(model, deserialized);
- }
-
- [Fact]
- public void FieldRoundtripThroughSerialization_Works()
- {
- var model = new IntegrationListDeliveriesResponse
- {
- Deliveries =
- [
- new()
- {
- ID = "42",
- Attempts = 1,
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventType = "tweet.new",
- Status = "delivered",
- DeliveredAt = DateTimeOffset.Parse("2025-01-15T12:00:01Z"),
- LastError = "",
- LastStatusCode = 200,
- SourceID = "100",
- SourceType = "monitor",
- },
- ],
- };
-
- string element = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
- var deserialized = JsonSerializer.Deserialize(
- element,
- ModelBase.SerializerOptions
- );
- Assert.NotNull(deserialized);
-
- List expectedDeliveries =
- [
- new()
- {
- ID = "42",
- Attempts = 1,
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventType = "tweet.new",
- Status = "delivered",
- DeliveredAt = DateTimeOffset.Parse("2025-01-15T12:00:01Z"),
- LastError = "",
- LastStatusCode = 200,
- SourceID = "100",
- SourceType = "monitor",
- },
- ];
-
- Assert.Equal(expectedDeliveries.Count, deserialized.Deliveries.Count);
- for (int i = 0; i < expectedDeliveries.Count; i++)
- {
- Assert.Equal(expectedDeliveries[i], deserialized.Deliveries[i]);
- }
- }
-
- [Fact]
- public void Validation_Works()
- {
- var model = new IntegrationListDeliveriesResponse
- {
- Deliveries =
- [
- new()
- {
- ID = "42",
- Attempts = 1,
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventType = "tweet.new",
- Status = "delivered",
- DeliveredAt = DateTimeOffset.Parse("2025-01-15T12:00:01Z"),
- LastError = "",
- LastStatusCode = 200,
- SourceID = "100",
- SourceType = "monitor",
- },
- ],
- };
-
- model.Validate();
- }
-
- [Fact]
- public void CopyConstructor_Works()
- {
- var model = new IntegrationListDeliveriesResponse
- {
- Deliveries =
- [
- new()
- {
- ID = "42",
- Attempts = 1,
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventType = "tweet.new",
- Status = "delivered",
- DeliveredAt = DateTimeOffset.Parse("2025-01-15T12:00:01Z"),
- LastError = "",
- LastStatusCode = 200,
- SourceID = "100",
- SourceType = "monitor",
- },
- ],
- };
-
- IntegrationListDeliveriesResponse copied = new(model);
-
- Assert.Equal(model, copied);
- }
-}
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListParamsTest.cs
deleted file mode 100644
index 4b6a7e2..0000000
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListParamsTest.cs
+++ /dev/null
@@ -1 +0,0 @@
-namespace XTwitterScraper.Tests.Models.Integrations;
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListResponseTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListResponseTest.cs
deleted file mode 100644
index 4b1b733..0000000
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationListResponseTest.cs
+++ /dev/null
@@ -1,240 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text.Json;
-using XTwitterScraper.Core;
-using XTwitterScraper.Models;
-using XTwitterScraper.Models.Integrations;
-
-namespace XTwitterScraper.Tests.Models.Integrations;
-
-public class IntegrationListResponseTest : TestBase
-{
- [Fact]
- public void FieldRoundtrip_Works()
- {
- var model = new IntegrationListResponse
- {
- Integrations =
- [
- new()
- {
- ID = "42",
- Config = new Dictionary()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- },
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- IsActive = true,
- Name = "My Telegram Bot",
- Filters = new Dictionary()
- {
- { "minFollowers", JsonSerializer.SerializeToElement("bar") },
- },
- MessageTemplate = "New event: {{event.type}}",
- ScopeAllMonitors = true,
- SilentPush = false,
- },
- ],
- };
-
- List expectedIntegrations =
- [
- new()
- {
- ID = "42",
- Config = new Dictionary()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- },
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- IsActive = true,
- Name = "My Telegram Bot",
- Filters = new Dictionary()
- {
- { "minFollowers", JsonSerializer.SerializeToElement("bar") },
- },
- MessageTemplate = "New event: {{event.type}}",
- ScopeAllMonitors = true,
- SilentPush = false,
- },
- ];
-
- Assert.Equal(expectedIntegrations.Count, model.Integrations.Count);
- for (int i = 0; i < expectedIntegrations.Count; i++)
- {
- Assert.Equal(expectedIntegrations[i], model.Integrations[i]);
- }
- }
-
- [Fact]
- public void SerializationRoundtrip_Works()
- {
- var model = new IntegrationListResponse
- {
- Integrations =
- [
- new()
- {
- ID = "42",
- Config = new Dictionary()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- },
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- IsActive = true,
- Name = "My Telegram Bot",
- Filters = new Dictionary()
- {
- { "minFollowers", JsonSerializer.SerializeToElement("bar") },
- },
- MessageTemplate = "New event: {{event.type}}",
- ScopeAllMonitors = true,
- SilentPush = false,
- },
- ],
- };
-
- string json = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
- var deserialized = JsonSerializer.Deserialize(
- json,
- ModelBase.SerializerOptions
- );
-
- Assert.Equal(model, deserialized);
- }
-
- [Fact]
- public void FieldRoundtripThroughSerialization_Works()
- {
- var model = new IntegrationListResponse
- {
- Integrations =
- [
- new()
- {
- ID = "42",
- Config = new Dictionary()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- },
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- IsActive = true,
- Name = "My Telegram Bot",
- Filters = new Dictionary()
- {
- { "minFollowers", JsonSerializer.SerializeToElement("bar") },
- },
- MessageTemplate = "New event: {{event.type}}",
- ScopeAllMonitors = true,
- SilentPush = false,
- },
- ],
- };
-
- string element = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
- var deserialized = JsonSerializer.Deserialize(
- element,
- ModelBase.SerializerOptions
- );
- Assert.NotNull(deserialized);
-
- List expectedIntegrations =
- [
- new()
- {
- ID = "42",
- Config = new Dictionary()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- },
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- IsActive = true,
- Name = "My Telegram Bot",
- Filters = new Dictionary()
- {
- { "minFollowers", JsonSerializer.SerializeToElement("bar") },
- },
- MessageTemplate = "New event: {{event.type}}",
- ScopeAllMonitors = true,
- SilentPush = false,
- },
- ];
-
- Assert.Equal(expectedIntegrations.Count, deserialized.Integrations.Count);
- for (int i = 0; i < expectedIntegrations.Count; i++)
- {
- Assert.Equal(expectedIntegrations[i], deserialized.Integrations[i]);
- }
- }
-
- [Fact]
- public void Validation_Works()
- {
- var model = new IntegrationListResponse
- {
- Integrations =
- [
- new()
- {
- ID = "42",
- Config = new Dictionary()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- },
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- IsActive = true,
- Name = "My Telegram Bot",
- Filters = new Dictionary()
- {
- { "minFollowers", JsonSerializer.SerializeToElement("bar") },
- },
- MessageTemplate = "New event: {{event.type}}",
- ScopeAllMonitors = true,
- SilentPush = false,
- },
- ],
- };
-
- model.Validate();
- }
-
- [Fact]
- public void CopyConstructor_Works()
- {
- var model = new IntegrationListResponse
- {
- Integrations =
- [
- new()
- {
- ID = "42",
- Config = new Dictionary()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- },
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- IsActive = true,
- Name = "My Telegram Bot",
- Filters = new Dictionary()
- {
- { "minFollowers", JsonSerializer.SerializeToElement("bar") },
- },
- MessageTemplate = "New event: {{event.type}}",
- ScopeAllMonitors = true,
- SilentPush = false,
- },
- ],
- };
-
- IntegrationListResponse copied = new(model);
-
- Assert.Equal(model, copied);
- }
-}
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationRetrieveParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationRetrieveParamsTest.cs
deleted file mode 100644
index b900213..0000000
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationRetrieveParamsTest.cs
+++ /dev/null
@@ -1,37 +0,0 @@
-using System;
-using XTwitterScraper.Models.Integrations;
-
-namespace XTwitterScraper.Tests.Models.Integrations;
-
-public class IntegrationRetrieveParamsTest : TestBase
-{
- [Fact]
- public void FieldRoundtrip_Works()
- {
- var parameters = new IntegrationRetrieveParams { ID = "id" };
-
- string expectedID = "id";
-
- Assert.Equal(expectedID, parameters.ID);
- }
-
- [Fact]
- public void Url_Works()
- {
- IntegrationRetrieveParams parameters = new() { ID = "id" };
-
- var url = parameters.Url(new() { ApiKey = "My API Key" });
-
- Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/integrations/id"), url));
- }
-
- [Fact]
- public void CopyConstructor_Works()
- {
- var parameters = new IntegrationRetrieveParams { ID = "id" };
-
- IntegrationRetrieveParams copied = new(parameters);
-
- Assert.Equal(parameters, copied);
- }
-}
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationSendTestParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationSendTestParamsTest.cs
deleted file mode 100644
index 0cfa6ea..0000000
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationSendTestParamsTest.cs
+++ /dev/null
@@ -1,39 +0,0 @@
-using System;
-using XTwitterScraper.Models.Integrations;
-
-namespace XTwitterScraper.Tests.Models.Integrations;
-
-public class IntegrationSendTestParamsTest : TestBase
-{
- [Fact]
- public void FieldRoundtrip_Works()
- {
- var parameters = new IntegrationSendTestParams { ID = "id" };
-
- string expectedID = "id";
-
- Assert.Equal(expectedID, parameters.ID);
- }
-
- [Fact]
- public void Url_Works()
- {
- IntegrationSendTestParams parameters = new() { ID = "id" };
-
- var url = parameters.Url(new() { ApiKey = "My API Key" });
-
- Assert.True(
- TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/integrations/id/test"), url)
- );
- }
-
- [Fact]
- public void CopyConstructor_Works()
- {
- var parameters = new IntegrationSendTestParams { ID = "id" };
-
- IntegrationSendTestParams copied = new(parameters);
-
- Assert.Equal(parameters, copied);
- }
-}
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationSendTestResponseTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationSendTestResponseTest.cs
deleted file mode 100644
index 1f3942e..0000000
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationSendTestResponseTest.cs
+++ /dev/null
@@ -1,67 +0,0 @@
-using System.Text.Json;
-using XTwitterScraper.Core;
-using XTwitterScraper.Models.Integrations;
-
-namespace XTwitterScraper.Tests.Models.Integrations;
-
-public class IntegrationSendTestResponseTest : TestBase
-{
- [Fact]
- public void FieldRoundtrip_Works()
- {
- var model = new IntegrationSendTestResponse { };
-
- JsonElement expectedSuccess = JsonSerializer.SerializeToElement(true);
-
- Assert.True(JsonElement.DeepEquals(expectedSuccess, model.Success));
- }
-
- [Fact]
- public void SerializationRoundtrip_Works()
- {
- var model = new IntegrationSendTestResponse { };
-
- string json = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
- var deserialized = JsonSerializer.Deserialize(
- json,
- ModelBase.SerializerOptions
- );
-
- Assert.Equal(model, deserialized);
- }
-
- [Fact]
- public void FieldRoundtripThroughSerialization_Works()
- {
- var model = new IntegrationSendTestResponse { };
-
- string element = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
- var deserialized = JsonSerializer.Deserialize(
- element,
- ModelBase.SerializerOptions
- );
- Assert.NotNull(deserialized);
-
- JsonElement expectedSuccess = JsonSerializer.SerializeToElement(true);
-
- Assert.True(JsonElement.DeepEquals(expectedSuccess, deserialized.Success));
- }
-
- [Fact]
- public void Validation_Works()
- {
- var model = new IntegrationSendTestResponse { };
-
- model.Validate();
- }
-
- [Fact]
- public void CopyConstructor_Works()
- {
- var model = new IntegrationSendTestResponse { };
-
- IntegrationSendTestResponse copied = new(model);
-
- Assert.Equal(model, copied);
- }
-}
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationTest.cs
deleted file mode 100644
index f6538c2..0000000
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationTest.cs
+++ /dev/null
@@ -1,356 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text.Json;
-using XTwitterScraper.Core;
-using XTwitterScraper.Models;
-using XTwitterScraper.Models.Integrations;
-
-namespace XTwitterScraper.Tests.Models.Integrations;
-
-public class IntegrationTest : TestBase
-{
- [Fact]
- public void FieldRoundtrip_Works()
- {
- var model = new Integration
- {
- ID = "42",
- Config = new Dictionary()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- },
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- IsActive = true,
- Name = "My Telegram Bot",
- Filters = new Dictionary()
- {
- { "minFollowers", JsonSerializer.SerializeToElement("bar") },
- },
- MessageTemplate = "New event: {{event.type}}",
- ScopeAllMonitors = true,
- SilentPush = false,
- };
-
- string expectedID = "42";
- Dictionary expectedConfig = new()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- };
- DateTimeOffset expectedCreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z");
- List> expectedEventTypes =
- [
- EventType.TweetNew,
- EventType.FollowerGained,
- ];
- bool expectedIsActive = true;
- string expectedName = "My Telegram Bot";
- JsonElement expectedType = JsonSerializer.SerializeToElement("telegram");
- Dictionary expectedFilters = new()
- {
- { "minFollowers", JsonSerializer.SerializeToElement("bar") },
- };
- string expectedMessageTemplate = "New event: {{event.type}}";
- bool expectedScopeAllMonitors = true;
- bool expectedSilentPush = false;
-
- Assert.Equal(expectedID, model.ID);
- Assert.Equal(expectedConfig.Count, model.Config.Count);
- foreach (var item in expectedConfig)
- {
- Assert.True(model.Config.TryGetValue(item.Key, out var value));
-
- Assert.True(JsonElement.DeepEquals(value, model.Config[item.Key]));
- }
- Assert.Equal(expectedCreatedAt, model.CreatedAt);
- Assert.Equal(expectedEventTypes.Count, model.EventTypes.Count);
- for (int i = 0; i < expectedEventTypes.Count; i++)
- {
- Assert.Equal(expectedEventTypes[i], model.EventTypes[i]);
- }
- Assert.Equal(expectedIsActive, model.IsActive);
- Assert.Equal(expectedName, model.Name);
- Assert.True(JsonElement.DeepEquals(expectedType, model.Type));
- Assert.NotNull(model.Filters);
- Assert.Equal(expectedFilters.Count, model.Filters.Count);
- foreach (var item in expectedFilters)
- {
- Assert.True(model.Filters.TryGetValue(item.Key, out var value));
-
- Assert.True(JsonElement.DeepEquals(value, model.Filters[item.Key]));
- }
- Assert.Equal(expectedMessageTemplate, model.MessageTemplate);
- Assert.Equal(expectedScopeAllMonitors, model.ScopeAllMonitors);
- Assert.Equal(expectedSilentPush, model.SilentPush);
- }
-
- [Fact]
- public void SerializationRoundtrip_Works()
- {
- var model = new Integration
- {
- ID = "42",
- Config = new Dictionary()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- },
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- IsActive = true,
- Name = "My Telegram Bot",
- Filters = new Dictionary()
- {
- { "minFollowers", JsonSerializer.SerializeToElement("bar") },
- },
- MessageTemplate = "New event: {{event.type}}",
- ScopeAllMonitors = true,
- SilentPush = false,
- };
-
- string json = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
- var deserialized = JsonSerializer.Deserialize(
- json,
- ModelBase.SerializerOptions
- );
-
- Assert.Equal(model, deserialized);
- }
-
- [Fact]
- public void FieldRoundtripThroughSerialization_Works()
- {
- var model = new Integration
- {
- ID = "42",
- Config = new Dictionary()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- },
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- IsActive = true,
- Name = "My Telegram Bot",
- Filters = new Dictionary()
- {
- { "minFollowers", JsonSerializer.SerializeToElement("bar") },
- },
- MessageTemplate = "New event: {{event.type}}",
- ScopeAllMonitors = true,
- SilentPush = false,
- };
-
- string element = JsonSerializer.Serialize(model, ModelBase.SerializerOptions);
- var deserialized = JsonSerializer.Deserialize(
- element,
- ModelBase.SerializerOptions
- );
- Assert.NotNull(deserialized);
-
- string expectedID = "42";
- Dictionary expectedConfig = new()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- };
- DateTimeOffset expectedCreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z");
- List> expectedEventTypes =
- [
- EventType.TweetNew,
- EventType.FollowerGained,
- ];
- bool expectedIsActive = true;
- string expectedName = "My Telegram Bot";
- JsonElement expectedType = JsonSerializer.SerializeToElement("telegram");
- Dictionary expectedFilters = new()
- {
- { "minFollowers", JsonSerializer.SerializeToElement("bar") },
- };
- string expectedMessageTemplate = "New event: {{event.type}}";
- bool expectedScopeAllMonitors = true;
- bool expectedSilentPush = false;
-
- Assert.Equal(expectedID, deserialized.ID);
- Assert.Equal(expectedConfig.Count, deserialized.Config.Count);
- foreach (var item in expectedConfig)
- {
- Assert.True(deserialized.Config.TryGetValue(item.Key, out var value));
-
- Assert.True(JsonElement.DeepEquals(value, deserialized.Config[item.Key]));
- }
- Assert.Equal(expectedCreatedAt, deserialized.CreatedAt);
- Assert.Equal(expectedEventTypes.Count, deserialized.EventTypes.Count);
- for (int i = 0; i < expectedEventTypes.Count; i++)
- {
- Assert.Equal(expectedEventTypes[i], deserialized.EventTypes[i]);
- }
- Assert.Equal(expectedIsActive, deserialized.IsActive);
- Assert.Equal(expectedName, deserialized.Name);
- Assert.True(JsonElement.DeepEquals(expectedType, deserialized.Type));
- Assert.NotNull(deserialized.Filters);
- Assert.Equal(expectedFilters.Count, deserialized.Filters.Count);
- foreach (var item in expectedFilters)
- {
- Assert.True(deserialized.Filters.TryGetValue(item.Key, out var value));
-
- Assert.True(JsonElement.DeepEquals(value, deserialized.Filters[item.Key]));
- }
- Assert.Equal(expectedMessageTemplate, deserialized.MessageTemplate);
- Assert.Equal(expectedScopeAllMonitors, deserialized.ScopeAllMonitors);
- Assert.Equal(expectedSilentPush, deserialized.SilentPush);
- }
-
- [Fact]
- public void Validation_Works()
- {
- var model = new Integration
- {
- ID = "42",
- Config = new Dictionary()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- },
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- IsActive = true,
- Name = "My Telegram Bot",
- Filters = new Dictionary()
- {
- { "minFollowers", JsonSerializer.SerializeToElement("bar") },
- },
- MessageTemplate = "New event: {{event.type}}",
- ScopeAllMonitors = true,
- SilentPush = false,
- };
-
- model.Validate();
- }
-
- [Fact]
- public void OptionalNonNullablePropertiesUnsetAreNotSet_Works()
- {
- var model = new Integration
- {
- ID = "42",
- Config = new Dictionary()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- },
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- IsActive = true,
- Name = "My Telegram Bot",
- };
-
- Assert.Null(model.Filters);
- Assert.False(model.RawData.ContainsKey("filters"));
- Assert.Null(model.MessageTemplate);
- Assert.False(model.RawData.ContainsKey("messageTemplate"));
- Assert.Null(model.ScopeAllMonitors);
- Assert.False(model.RawData.ContainsKey("scopeAllMonitors"));
- Assert.Null(model.SilentPush);
- Assert.False(model.RawData.ContainsKey("silentPush"));
- }
-
- [Fact]
- public void OptionalNonNullablePropertiesUnsetValidation_Works()
- {
- var model = new Integration
- {
- ID = "42",
- Config = new Dictionary()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- },
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- IsActive = true,
- Name = "My Telegram Bot",
- };
-
- model.Validate();
- }
-
- [Fact]
- public void OptionalNonNullablePropertiesSetToNullAreNotSet_Works()
- {
- var model = new Integration
- {
- ID = "42",
- Config = new Dictionary()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- },
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- IsActive = true,
- Name = "My Telegram Bot",
-
- // Null should be interpreted as omitted for these properties
- Filters = null,
- MessageTemplate = null,
- ScopeAllMonitors = null,
- SilentPush = null,
- };
-
- Assert.Null(model.Filters);
- Assert.False(model.RawData.ContainsKey("filters"));
- Assert.Null(model.MessageTemplate);
- Assert.False(model.RawData.ContainsKey("messageTemplate"));
- Assert.Null(model.ScopeAllMonitors);
- Assert.False(model.RawData.ContainsKey("scopeAllMonitors"));
- Assert.Null(model.SilentPush);
- Assert.False(model.RawData.ContainsKey("silentPush"));
- }
-
- [Fact]
- public void OptionalNonNullablePropertiesSetToNullValidation_Works()
- {
- var model = new Integration
- {
- ID = "42",
- Config = new Dictionary()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- },
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- IsActive = true,
- Name = "My Telegram Bot",
-
- // Null should be interpreted as omitted for these properties
- Filters = null,
- MessageTemplate = null,
- ScopeAllMonitors = null,
- SilentPush = null,
- };
-
- model.Validate();
- }
-
- [Fact]
- public void CopyConstructor_Works()
- {
- var model = new Integration
- {
- ID = "42",
- Config = new Dictionary()
- {
- { "chatId", JsonSerializer.SerializeToElement("bar") },
- },
- CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
- IsActive = true,
- Name = "My Telegram Bot",
- Filters = new Dictionary()
- {
- { "minFollowers", JsonSerializer.SerializeToElement("bar") },
- },
- MessageTemplate = "New event: {{event.type}}",
- ScopeAllMonitors = true,
- SilentPush = false,
- };
-
- Integration copied = new(model);
-
- Assert.Equal(model, copied);
- }
-}
diff --git a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationUpdateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Integrations/IntegrationUpdateParamsTest.cs
deleted file mode 100644
index 482855b..0000000
--- a/src/XTwitterScraper.Tests/Models/Integrations/IntegrationUpdateParamsTest.cs
+++ /dev/null
@@ -1,148 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Text.Json;
-using XTwitterScraper.Core;
-using XTwitterScraper.Models;
-using XTwitterScraper.Models.Integrations;
-
-namespace XTwitterScraper.Tests.Models.Integrations;
-
-public class IntegrationUpdateParamsTest : TestBase
-{
- [Fact]
- public void FieldRoundtrip_Works()
- {
- var parameters = new IntegrationUpdateParams
- {
- ID = "id",
- EventTypes = [EventType.TweetNew],
- Filters = new Dictionary(),
- IsActive = true,
- MessageTemplate = new Dictionary(),
- Name = "My Telegram Bot",
- ScopeAllMonitors = true,
- SilentPush = false,
- };
-
- string expectedID = "id";
- List> expectedEventTypes = [EventType.TweetNew];
- Dictionary expectedFilters = new();
- bool expectedIsActive = true;
- Dictionary expectedMessageTemplate = new();
- string expectedName = "My Telegram Bot";
- bool expectedScopeAllMonitors = true;
- bool expectedSilentPush = false;
-
- Assert.Equal(expectedID, parameters.ID);
- Assert.NotNull(parameters.EventTypes);
- Assert.Equal(expectedEventTypes.Count, parameters.EventTypes.Count);
- for (int i = 0; i < expectedEventTypes.Count; i++)
- {
- Assert.Equal(expectedEventTypes[i], parameters.EventTypes[i]);
- }
- Assert.NotNull(parameters.Filters);
- Assert.Equal(expectedFilters.Count, parameters.Filters.Count);
- foreach (var item in expectedFilters)
- {
- Assert.True(parameters.Filters.TryGetValue(item.Key, out var value));
-
- Assert.True(JsonElement.DeepEquals(value, parameters.Filters[item.Key]));
- }
- Assert.Equal(expectedIsActive, parameters.IsActive);
- Assert.NotNull(parameters.MessageTemplate);
- Assert.Equal(expectedMessageTemplate.Count, parameters.MessageTemplate.Count);
- foreach (var item in expectedMessageTemplate)
- {
- Assert.True(parameters.MessageTemplate.TryGetValue(item.Key, out var value));
-
- Assert.True(JsonElement.DeepEquals(value, parameters.MessageTemplate[item.Key]));
- }
- Assert.Equal(expectedName, parameters.Name);
- Assert.Equal(expectedScopeAllMonitors, parameters.ScopeAllMonitors);
- Assert.Equal(expectedSilentPush, parameters.SilentPush);
- }
-
- [Fact]
- public void OptionalNonNullableParamsUnsetAreNotSet_Works()
- {
- var parameters = new IntegrationUpdateParams { ID = "id" };
-
- Assert.Null(parameters.EventTypes);
- Assert.False(parameters.RawBodyData.ContainsKey("eventTypes"));
- Assert.Null(parameters.Filters);
- Assert.False(parameters.RawBodyData.ContainsKey("filters"));
- Assert.Null(parameters.IsActive);
- Assert.False(parameters.RawBodyData.ContainsKey("isActive"));
- Assert.Null(parameters.MessageTemplate);
- Assert.False(parameters.RawBodyData.ContainsKey("messageTemplate"));
- Assert.Null(parameters.Name);
- Assert.False(parameters.RawBodyData.ContainsKey("name"));
- Assert.Null(parameters.ScopeAllMonitors);
- Assert.False(parameters.RawBodyData.ContainsKey("scopeAllMonitors"));
- Assert.Null(parameters.SilentPush);
- Assert.False(parameters.RawBodyData.ContainsKey("silentPush"));
- }
-
- [Fact]
- public void OptionalNonNullableParamsSetToNullAreNotSet_Works()
- {
- var parameters = new IntegrationUpdateParams
- {
- ID = "id",
-
- // Null should be interpreted as omitted for these properties
- EventTypes = null,
- Filters = null,
- IsActive = null,
- MessageTemplate = null,
- Name = null,
- ScopeAllMonitors = null,
- SilentPush = null,
- };
-
- Assert.Null(parameters.EventTypes);
- Assert.False(parameters.RawBodyData.ContainsKey("eventTypes"));
- Assert.Null(parameters.Filters);
- Assert.False(parameters.RawBodyData.ContainsKey("filters"));
- Assert.Null(parameters.IsActive);
- Assert.False(parameters.RawBodyData.ContainsKey("isActive"));
- Assert.Null(parameters.MessageTemplate);
- Assert.False(parameters.RawBodyData.ContainsKey("messageTemplate"));
- Assert.Null(parameters.Name);
- Assert.False(parameters.RawBodyData.ContainsKey("name"));
- Assert.Null(parameters.ScopeAllMonitors);
- Assert.False(parameters.RawBodyData.ContainsKey("scopeAllMonitors"));
- Assert.Null(parameters.SilentPush);
- Assert.False(parameters.RawBodyData.ContainsKey("silentPush"));
- }
-
- [Fact]
- public void Url_Works()
- {
- IntegrationUpdateParams parameters = new() { ID = "id" };
-
- var url = parameters.Url(new() { ApiKey = "My API Key" });
-
- Assert.True(TestBase.UrisEqual(new Uri("https://xquik.com/api/v1/integrations/id"), url));
- }
-
- [Fact]
- public void CopyConstructor_Works()
- {
- var parameters = new IntegrationUpdateParams
- {
- ID = "id",
- EventTypes = [EventType.TweetNew],
- Filters = new Dictionary(),
- IsActive = true,
- MessageTemplate = new Dictionary(),
- Name = "My Telegram Bot",
- ScopeAllMonitors = true,
- SilentPush = false,
- };
-
- IntegrationUpdateParams copied = new(parameters);
-
- Assert.Equal(parameters, copied);
- }
-}
diff --git a/src/XTwitterScraper.Tests/Models/Monitors/MonitorCreateParamsTest.cs b/src/XTwitterScraper.Tests/Models/Monitors/MonitorCreateParamsTest.cs
index 529354c..ac54851 100644
--- a/src/XTwitterScraper.Tests/Models/Monitors/MonitorCreateParamsTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Monitors/MonitorCreateParamsTest.cs
@@ -13,14 +13,14 @@ public void FieldRoundtrip_Works()
{
var parameters = new MonitorCreateParams
{
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
Username = "elonmusk",
};
List> expectedEventTypes =
[
EventType.TweetNew,
- EventType.FollowerGained,
+ EventType.TweetReply,
];
string expectedUsername = "elonmusk";
@@ -37,7 +37,7 @@ public void Url_Works()
{
MonitorCreateParams parameters = new()
{
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
Username = "elonmusk",
};
@@ -51,7 +51,7 @@ public void CopyConstructor_Works()
{
var parameters = new MonitorCreateParams
{
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
Username = "elonmusk",
};
diff --git a/src/XTwitterScraper.Tests/Models/Monitors/MonitorCreateResponseTest.cs b/src/XTwitterScraper.Tests/Models/Monitors/MonitorCreateResponseTest.cs
index 52e93e6..1be0507 100644
--- a/src/XTwitterScraper.Tests/Models/Monitors/MonitorCreateResponseTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Monitors/MonitorCreateResponseTest.cs
@@ -16,7 +16,7 @@ public void FieldRoundtrip_Works()
{
ID = "42",
CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
Username = "elonmusk",
XUserID = "1234567890",
};
@@ -26,7 +26,7 @@ public void FieldRoundtrip_Works()
List> expectedEventTypes =
[
EventType.TweetNew,
- EventType.FollowerGained,
+ EventType.TweetReply,
];
string expectedUsername = "elonmusk";
string expectedXUserID = "1234567890";
@@ -49,7 +49,7 @@ public void SerializationRoundtrip_Works()
{
ID = "42",
CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
Username = "elonmusk",
XUserID = "1234567890",
};
@@ -70,7 +70,7 @@ public void FieldRoundtripThroughSerialization_Works()
{
ID = "42",
CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
Username = "elonmusk",
XUserID = "1234567890",
};
@@ -87,7 +87,7 @@ public void FieldRoundtripThroughSerialization_Works()
List> expectedEventTypes =
[
EventType.TweetNew,
- EventType.FollowerGained,
+ EventType.TweetReply,
];
string expectedUsername = "elonmusk";
string expectedXUserID = "1234567890";
@@ -110,7 +110,7 @@ public void Validation_Works()
{
ID = "42",
CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
Username = "elonmusk",
XUserID = "1234567890",
};
@@ -125,7 +125,7 @@ public void CopyConstructor_Works()
{
ID = "42",
CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
Username = "elonmusk",
XUserID = "1234567890",
};
diff --git a/src/XTwitterScraper.Tests/Models/Monitors/MonitorListResponseTest.cs b/src/XTwitterScraper.Tests/Models/Monitors/MonitorListResponseTest.cs
index 872ff77..2f12596 100644
--- a/src/XTwitterScraper.Tests/Models/Monitors/MonitorListResponseTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Monitors/MonitorListResponseTest.cs
@@ -20,7 +20,7 @@ public void FieldRoundtrip_Works()
{
ID = "42",
CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
IsActive = true,
Username = "elonmusk",
XUserID = "9876543210",
@@ -35,7 +35,7 @@ public void FieldRoundtrip_Works()
{
ID = "42",
CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
IsActive = true,
Username = "elonmusk",
XUserID = "9876543210",
@@ -62,7 +62,7 @@ public void SerializationRoundtrip_Works()
{
ID = "42",
CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
IsActive = true,
Username = "elonmusk",
XUserID = "9876543210",
@@ -91,7 +91,7 @@ public void FieldRoundtripThroughSerialization_Works()
{
ID = "42",
CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
IsActive = true,
Username = "elonmusk",
XUserID = "9876543210",
@@ -113,7 +113,7 @@ public void FieldRoundtripThroughSerialization_Works()
{
ID = "42",
CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
IsActive = true,
Username = "elonmusk",
XUserID = "9876543210",
@@ -140,7 +140,7 @@ public void Validation_Works()
{
ID = "42",
CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
IsActive = true,
Username = "elonmusk",
XUserID = "9876543210",
@@ -163,7 +163,7 @@ public void CopyConstructor_Works()
{
ID = "42",
CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
IsActive = true,
Username = "elonmusk",
XUserID = "9876543210",
diff --git a/src/XTwitterScraper.Tests/Models/Monitors/MonitorTest.cs b/src/XTwitterScraper.Tests/Models/Monitors/MonitorTest.cs
index 7433502..75bb171 100644
--- a/src/XTwitterScraper.Tests/Models/Monitors/MonitorTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Monitors/MonitorTest.cs
@@ -16,7 +16,7 @@ public void FieldRoundtrip_Works()
{
ID = "42",
CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
IsActive = true,
Username = "elonmusk",
XUserID = "9876543210",
@@ -27,7 +27,7 @@ public void FieldRoundtrip_Works()
List> expectedEventTypes =
[
EventType.TweetNew,
- EventType.FollowerGained,
+ EventType.TweetReply,
];
bool expectedIsActive = true;
string expectedUsername = "elonmusk";
@@ -52,7 +52,7 @@ public void SerializationRoundtrip_Works()
{
ID = "42",
CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
IsActive = true,
Username = "elonmusk",
XUserID = "9876543210",
@@ -71,7 +71,7 @@ public void FieldRoundtripThroughSerialization_Works()
{
ID = "42",
CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
IsActive = true,
Username = "elonmusk",
XUserID = "9876543210",
@@ -89,7 +89,7 @@ public void FieldRoundtripThroughSerialization_Works()
List> expectedEventTypes =
[
EventType.TweetNew,
- EventType.FollowerGained,
+ EventType.TweetReply,
];
bool expectedIsActive = true;
string expectedUsername = "elonmusk";
@@ -114,7 +114,7 @@ public void Validation_Works()
{
ID = "42",
CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
IsActive = true,
Username = "elonmusk",
XUserID = "9876543210",
@@ -130,7 +130,7 @@ public void CopyConstructor_Works()
{
ID = "42",
CreatedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- EventTypes = [EventType.TweetNew, EventType.FollowerGained],
+ EventTypes = [EventType.TweetNew, EventType.TweetReply],
IsActive = true,
Username = "elonmusk",
XUserID = "9876543210",
diff --git a/src/XTwitterScraper.Tests/Models/Radar/RadarItemTest.cs b/src/XTwitterScraper.Tests/Models/Radar/RadarItemTest.cs
index 9128702..2362d6b 100644
--- a/src/XTwitterScraper.Tests/Models/Radar/RadarItemTest.cs
+++ b/src/XTwitterScraper.Tests/Models/Radar/RadarItemTest.cs
@@ -1,6 +1,8 @@
using System;
+using System.Collections.Generic;
using System.Text.Json;
using XTwitterScraper.Core;
+using XTwitterScraper.Exceptions;
using XTwitterScraper.Models.Radar;
namespace XTwitterScraper.Tests.Models.Radar;
@@ -12,32 +14,59 @@ public void FieldRoundtrip_Works()
{
var model = new RadarItem
{
- Category = "Technology",
+ ID = "4712",
+ Category = RadarItemCategory.Tech,
+ CreatedAt = DateTimeOffset.Parse("2025-01-15T12:01:00Z"),
+ Language = "en",
+ Metadata = new Dictionary()
+ {
+ { "foo", JsonSerializer.SerializeToElement("bar") },
+ },
PublishedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- Region = "US",
+ Region = "global",
Score = 95.5,
- Source = "X",
+ Source = RadarItemSource.Trustmrr,
+ SourceID = "trustmrr_acme",
Title = "AI Revolution in 2025",
Description = "AI is transforming every industry",
ImageUrl = "https://example.com/images/ai.jpg",
Url = "https://example.com/article/ai-revolution",
};
- string expectedCategory = "Technology";
+ string expectedID = "4712";
+ ApiEnum expectedCategory = RadarItemCategory.Tech;
+ DateTimeOffset expectedCreatedAt = DateTimeOffset.Parse("2025-01-15T12:01:00Z");
+ string expectedLanguage = "en";
+ Dictionary expectedMetadata = new()
+ {
+ { "foo", JsonSerializer.SerializeToElement("bar") },
+ };
DateTimeOffset expectedPublishedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z");
- string expectedRegion = "US";
+ string expectedRegion = "global";
double expectedScore = 95.5;
- string expectedSource = "X";
+ ApiEnum expectedSource = RadarItemSource.Trustmrr;
+ string expectedSourceID = "trustmrr_acme";
string expectedTitle = "AI Revolution in 2025";
string expectedDescription = "AI is transforming every industry";
string expectedImageUrl = "https://example.com/images/ai.jpg";
string expectedUrl = "https://example.com/article/ai-revolution";
+ Assert.Equal(expectedID, model.ID);
Assert.Equal(expectedCategory, model.Category);
+ Assert.Equal(expectedCreatedAt, model.CreatedAt);
+ Assert.Equal(expectedLanguage, model.Language);
+ Assert.Equal(expectedMetadata.Count, model.Metadata.Count);
+ foreach (var item in expectedMetadata)
+ {
+ Assert.True(model.Metadata.TryGetValue(item.Key, out var value));
+
+ Assert.True(JsonElement.DeepEquals(value, model.Metadata[item.Key]));
+ }
Assert.Equal(expectedPublishedAt, model.PublishedAt);
Assert.Equal(expectedRegion, model.Region);
Assert.Equal(expectedScore, model.Score);
Assert.Equal(expectedSource, model.Source);
+ Assert.Equal(expectedSourceID, model.SourceID);
Assert.Equal(expectedTitle, model.Title);
Assert.Equal(expectedDescription, model.Description);
Assert.Equal(expectedImageUrl, model.ImageUrl);
@@ -49,11 +78,19 @@ public void SerializationRoundtrip_Works()
{
var model = new RadarItem
{
- Category = "Technology",
+ ID = "4712",
+ Category = RadarItemCategory.Tech,
+ CreatedAt = DateTimeOffset.Parse("2025-01-15T12:01:00Z"),
+ Language = "en",
+ Metadata = new Dictionary()
+ {
+ { "foo", JsonSerializer.SerializeToElement("bar") },
+ },
PublishedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- Region = "US",
+ Region = "global",
Score = 95.5,
- Source = "X",
+ Source = RadarItemSource.Trustmrr,
+ SourceID = "trustmrr_acme",
Title = "AI Revolution in 2025",
Description = "AI is transforming every industry",
ImageUrl = "https://example.com/images/ai.jpg",
@@ -71,11 +108,19 @@ public void FieldRoundtripThroughSerialization_Works()
{
var model = new RadarItem
{
- Category = "Technology",
+ ID = "4712",
+ Category = RadarItemCategory.Tech,
+ CreatedAt = DateTimeOffset.Parse("2025-01-15T12:01:00Z"),
+ Language = "en",
+ Metadata = new Dictionary()
+ {
+ { "foo", JsonSerializer.SerializeToElement("bar") },
+ },
PublishedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- Region = "US",
+ Region = "global",
Score = 95.5,
- Source = "X",
+ Source = RadarItemSource.Trustmrr,
+ SourceID = "trustmrr_acme",
Title = "AI Revolution in 2025",
Description = "AI is transforming every industry",
ImageUrl = "https://example.com/images/ai.jpg",
@@ -89,21 +134,40 @@ public void FieldRoundtripThroughSerialization_Works()
);
Assert.NotNull(deserialized);
- string expectedCategory = "Technology";
+ string expectedID = "4712";
+ ApiEnum expectedCategory = RadarItemCategory.Tech;
+ DateTimeOffset expectedCreatedAt = DateTimeOffset.Parse("2025-01-15T12:01:00Z");
+ string expectedLanguage = "en";
+ Dictionary expectedMetadata = new()
+ {
+ { "foo", JsonSerializer.SerializeToElement("bar") },
+ };
DateTimeOffset expectedPublishedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z");
- string expectedRegion = "US";
+ string expectedRegion = "global";
double expectedScore = 95.5;
- string expectedSource = "X";
+ ApiEnum expectedSource = RadarItemSource.Trustmrr;
+ string expectedSourceID = "trustmrr_acme";
string expectedTitle = "AI Revolution in 2025";
string expectedDescription = "AI is transforming every industry";
string expectedImageUrl = "https://example.com/images/ai.jpg";
string expectedUrl = "https://example.com/article/ai-revolution";
+ Assert.Equal(expectedID, deserialized.ID);
Assert.Equal(expectedCategory, deserialized.Category);
+ Assert.Equal(expectedCreatedAt, deserialized.CreatedAt);
+ Assert.Equal(expectedLanguage, deserialized.Language);
+ Assert.Equal(expectedMetadata.Count, deserialized.Metadata.Count);
+ foreach (var item in expectedMetadata)
+ {
+ Assert.True(deserialized.Metadata.TryGetValue(item.Key, out var value));
+
+ Assert.True(JsonElement.DeepEquals(value, deserialized.Metadata[item.Key]));
+ }
Assert.Equal(expectedPublishedAt, deserialized.PublishedAt);
Assert.Equal(expectedRegion, deserialized.Region);
Assert.Equal(expectedScore, deserialized.Score);
Assert.Equal(expectedSource, deserialized.Source);
+ Assert.Equal(expectedSourceID, deserialized.SourceID);
Assert.Equal(expectedTitle, deserialized.Title);
Assert.Equal(expectedDescription, deserialized.Description);
Assert.Equal(expectedImageUrl, deserialized.ImageUrl);
@@ -115,11 +179,19 @@ public void Validation_Works()
{
var model = new RadarItem
{
- Category = "Technology",
+ ID = "4712",
+ Category = RadarItemCategory.Tech,
+ CreatedAt = DateTimeOffset.Parse("2025-01-15T12:01:00Z"),
+ Language = "en",
+ Metadata = new Dictionary()
+ {
+ { "foo", JsonSerializer.SerializeToElement("bar") },
+ },
PublishedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- Region = "US",
+ Region = "global",
Score = 95.5,
- Source = "X",
+ Source = RadarItemSource.Trustmrr,
+ SourceID = "trustmrr_acme",
Title = "AI Revolution in 2025",
Description = "AI is transforming every industry",
ImageUrl = "https://example.com/images/ai.jpg",
@@ -134,11 +206,19 @@ public void OptionalNonNullablePropertiesUnsetAreNotSet_Works()
{
var model = new RadarItem
{
- Category = "Technology",
+ ID = "4712",
+ Category = RadarItemCategory.Tech,
+ CreatedAt = DateTimeOffset.Parse("2025-01-15T12:01:00Z"),
+ Language = "en",
+ Metadata = new Dictionary()
+ {
+ { "foo", JsonSerializer.SerializeToElement("bar") },
+ },
PublishedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- Region = "US",
+ Region = "global",
Score = 95.5,
- Source = "X",
+ Source = RadarItemSource.Trustmrr,
+ SourceID = "trustmrr_acme",
Title = "AI Revolution in 2025",
};
@@ -155,11 +235,19 @@ public void OptionalNonNullablePropertiesUnsetValidation_Works()
{
var model = new RadarItem
{
- Category = "Technology",
+ ID = "4712",
+ Category = RadarItemCategory.Tech,
+ CreatedAt = DateTimeOffset.Parse("2025-01-15T12:01:00Z"),
+ Language = "en",
+ Metadata = new Dictionary()
+ {
+ { "foo", JsonSerializer.SerializeToElement("bar") },
+ },
PublishedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- Region = "US",
+ Region = "global",
Score = 95.5,
- Source = "X",
+ Source = RadarItemSource.Trustmrr,
+ SourceID = "trustmrr_acme",
Title = "AI Revolution in 2025",
};
@@ -171,11 +259,19 @@ public void OptionalNonNullablePropertiesSetToNullAreNotSet_Works()
{
var model = new RadarItem
{
- Category = "Technology",
+ ID = "4712",
+ Category = RadarItemCategory.Tech,
+ CreatedAt = DateTimeOffset.Parse("2025-01-15T12:01:00Z"),
+ Language = "en",
+ Metadata = new Dictionary()
+ {
+ { "foo", JsonSerializer.SerializeToElement("bar") },
+ },
PublishedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- Region = "US",
+ Region = "global",
Score = 95.5,
- Source = "X",
+ Source = RadarItemSource.Trustmrr,
+ SourceID = "trustmrr_acme",
Title = "AI Revolution in 2025",
// Null should be interpreted as omitted for these properties
@@ -197,11 +293,19 @@ public void OptionalNonNullablePropertiesSetToNullValidation_Works()
{
var model = new RadarItem
{
- Category = "Technology",
+ ID = "4712",
+ Category = RadarItemCategory.Tech,
+ CreatedAt = DateTimeOffset.Parse("2025-01-15T12:01:00Z"),
+ Language = "en",
+ Metadata = new Dictionary()
+ {
+ { "foo", JsonSerializer.SerializeToElement("bar") },
+ },
PublishedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- Region = "US",
+ Region = "global",
Score = 95.5,
- Source = "X",
+ Source = RadarItemSource.Trustmrr,
+ SourceID = "trustmrr_acme",
Title = "AI Revolution in 2025",
// Null should be interpreted as omitted for these properties
@@ -218,11 +322,19 @@ public void CopyConstructor_Works()
{
var model = new RadarItem
{
- Category = "Technology",
+ ID = "4712",
+ Category = RadarItemCategory.Tech,
+ CreatedAt = DateTimeOffset.Parse("2025-01-15T12:01:00Z"),
+ Language = "en",
+ Metadata = new Dictionary()
+ {
+ { "foo", JsonSerializer.SerializeToElement("bar") },
+ },
PublishedAt = DateTimeOffset.Parse("2025-01-15T12:00:00Z"),
- Region = "US",
+ Region = "global",
Score = 95.5,
- Source = "X",
+ Source = RadarItemSource.Trustmrr,
+ SourceID = "trustmrr_acme",
Title = "AI Revolution in 2025",
Description = "AI is transforming every industry",
ImageUrl = "https://example.com/images/ai.jpg",
@@ -234,3 +346,141 @@ public void CopyConstructor_Works()
Assert.Equal(model, copied);
}
}
+
+public class RadarItemCategoryTest : TestBase
+{
+ [Theory]
+ [InlineData(RadarItemCategory.General)]
+ [InlineData(RadarItemCategory.Tech)]
+ [InlineData(RadarItemCategory.Dev)]
+ [InlineData(RadarItemCategory.Science)]
+ [InlineData(RadarItemCategory.Culture)]
+ [InlineData(RadarItemCategory.Politics)]
+ [InlineData(RadarItemCategory.Business)]
+ [InlineData(RadarItemCategory.Entertainment)]
+ public void Validation_Works(RadarItemCategory rawValue)
+ {
+ // force implicit conversion because Theory can't do that for us
+ ApiEnum value = rawValue;
+ value.Validate();
+ }
+
+ [Fact]
+ public void InvalidEnumValidationThrows_Works()
+ {
+ var value = JsonSerializer.Deserialize>(
+ JsonSerializer.SerializeToElement("invalid value"),
+ ModelBase.SerializerOptions
+ );
+
+ Assert.NotNull(value);
+ Assert.Throws(() => value.Validate());
+ }
+
+ [Theory]
+ [InlineData(RadarItemCategory.General)]
+ [InlineData(RadarItemCategory.Tech)]
+ [InlineData(RadarItemCategory.Dev)]
+ [InlineData(RadarItemCategory.Science)]
+ [InlineData(RadarItemCategory.Culture)]
+ [InlineData(RadarItemCategory.Politics)]
+ [InlineData(RadarItemCategory.Business)]
+ [InlineData(RadarItemCategory.Entertainment)]
+ public void SerializationRoundtrip_Works(RadarItemCategory rawValue)
+ {
+ // force implicit conversion because Theory can't do that for us
+ ApiEnum value = rawValue;
+
+ string json = JsonSerializer.Serialize(value, ModelBase.SerializerOptions);
+ var deserialized = JsonSerializer.Deserialize>(
+ json,
+ ModelBase.SerializerOptions
+ );
+
+ Assert.Equal(value, deserialized);
+ }
+
+ [Fact]
+ public void InvalidEnumSerializationRoundtrip_Works()
+ {
+ var value = JsonSerializer.Deserialize>(
+ JsonSerializer.SerializeToElement("invalid value"),
+ ModelBase.SerializerOptions
+ );
+ string json = JsonSerializer.Serialize(value, ModelBase.SerializerOptions);
+ var deserialized = JsonSerializer.Deserialize>(
+ json,
+ ModelBase.SerializerOptions
+ );
+
+ Assert.Equal(value, deserialized);
+ }
+}
+
+public class RadarItemSourceTest : TestBase
+{
+ [Theory]
+ [InlineData(RadarItemSource.GitHub)]
+ [InlineData(RadarItemSource.GoogleTrends)]
+ [InlineData(RadarItemSource.HackerNews)]
+ [InlineData(RadarItemSource.Polymarket)]
+ [InlineData(RadarItemSource.Reddit)]
+ [InlineData(RadarItemSource.Trustmrr)]
+ [InlineData(RadarItemSource.Wikipedia)]
+ public void Validation_Works(RadarItemSource rawValue)
+ {
+ // force implicit conversion because Theory can't do that for us
+ ApiEnum value = rawValue;
+ value.Validate();
+ }
+
+ [Fact]
+ public void InvalidEnumValidationThrows_Works()
+ {
+ var value = JsonSerializer.Deserialize>(
+ JsonSerializer.SerializeToElement("invalid value"),
+ ModelBase.SerializerOptions
+ );
+
+ Assert.NotNull(value);
+ Assert.Throws(() => value.Validate());
+ }
+
+ [Theory]
+ [InlineData(RadarItemSource.GitHub)]
+ [InlineData(RadarItemSource.GoogleTrends)]
+ [InlineData(RadarItemSource.HackerNews)]
+ [InlineData(RadarItemSource.Polymarket)]
+ [InlineData(RadarItemSource.Reddit)]
+ [InlineData(RadarItemSource.Trustmrr)]
+ [InlineData(RadarItemSource.Wikipedia)]
+ public void SerializationRoundtrip_Works(RadarItemSource rawValue)
+ {
+ // force implicit conversion because Theory can't do that for us
+ ApiEnum value = rawValue;
+
+ string json = JsonSerializer.Serialize(value, ModelBase.SerializerOptions);
+ var deserialized = JsonSerializer.Deserialize>(
+ json,
+ ModelBase.SerializerOptions
+ );
+
+ Assert.Equal(value, deserialized);
+ }
+
+ [Fact]
+ public void InvalidEnumSerializationRoundtrip_Works()
+ {
+ var value = JsonSerializer.Deserialize