trypost/tests/Feature
Paulo Castellano 2248d01edc
Add optional Pinterest pin title and destination link (#232)
* Add optional Pinterest pin title, description, and link.

Expose title/description/link across web, API, and MCP; seed description from caption into meta on save, and publish description only from meta.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Expand Pinterest title/description/link test coverage.

Cover web draft persistence and validation bounds, API/MCP update merge and seed, and publisher payload fields on video and carousel pins.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Simplify Pinterest: description is post content again.

Keep optional title and link in meta/settings only. Remove the separate description textarea, seed logic, and meta.description path so Pinterest follows the shared caption pattern.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Refactor Pinterest meta handling and validation.

- Update CreatePost and UpdatePost actions to filter out null values from meta fields.
- Introduce a new method in PinterestPublisher to resolve board IDs, ensuring required fields are validated.
- Enhance PinterestSettings component to manage title and link inputs, including validation for HTTP URLs.
- Update PostPlatformMetaRules to enforce URL validation for Pinterest links.
- Add tests for clearing Pinterest title and link, and for rejecting invalid links during scheduling.

This refactor improves the handling of Pinterest metadata and enhances user experience by ensuring proper validation and error handling.

* Add validation messages and attributes for Pinterest meta fields

- Introduced custom validation messages and friendly attribute names for Pinterest link and title fields in PostPlatformMetaRules.
- Updated StorePostRequest, UpdatePostRequest, and related tools to utilize these new messages and attributes.
- Enhanced tests to assert correct error messages for invalid Pinterest links and title length constraints.

This update improves user feedback during post creation and editing, ensuring clarity in validation errors.

* Remove click.prevent directive from Pinterest link in PinterestPreview component.

This change simplifies the link behavior, allowing default click actions to occur, which may enhance user interaction with the Pinterest link.

* Update validation error messages for Pinterest meta fields in tests

- Refined the assertions in PostApiPlatformMetaTest to include localized validation messages for Pinterest title and link fields.
- Ensured that error messages reflect the updated validation rules, enhancing clarity for users during post creation and editing.

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-05 18:15:50 -03:00
..
Actions fix: skip removed social accounts when duplicating posts (#226) 2026-08-03 13:04:42 -03:00
Ai Harden created_via: require it, cover duplicate and all entry points. 2026-07-24 11:30:15 -03:00
Api Add optional Pinterest pin title and destination link (#232) 2026-08-05 18:15:50 -03:00
App/Post refactor(posts): return the card display domain from the backend 2026-07-17 16:24:23 -03:00
Auth Allow account owners to delete workspaces (#208) 2026-08-01 13:00:38 -04:00
Automation Enforce carousel min slides in Generate and expose min_media_count on API/MCP. 2026-07-24 23:51:10 -03:00
Billing Allow account owners to delete workspaces (#208) 2026-08-01 13:00:38 -04:00
Brand Structure brand voice and make generated copy platform-aware 2026-06-12 17:09:39 -03:00
Commands Give Instagram/Threads a wider proactive-refresh window 2026-07-03 10:33:26 -03:00
Database test(auth): cover remaining surfaces of the registration gate 2026-05-19 12:03:41 -03:00
Discord fix(channels): restrict Discord picker to postable channels the bot can use 2026-06-16 16:34:02 -03:00
Image Harden automations module: full-post generation, reliable runs, editor UX 2026-06-10 20:45:01 -03:00
Jobs Capture post.created to PostHog with created_via. 2026-07-24 11:44:47 -03:00
Listeners Capture post.created to PostHog with created_via. 2026-07-24 11:44:47 -03:00
Mcp Add optional Pinterest pin title and destination link (#232) 2026-08-05 18:15:50 -03:00
Middleware Share a ContentLanguageOption type and close the review's test gaps 2026-07-03 19:28:28 -03:00
Migrations refactor(linkedin): infer post format from media + unify account connection 2026-06-24 21:05:09 -03:00
Models refactor(billing): replace MonthlyCreditsLimit Pennant feature with BillingCycle 2026-06-22 09:55:03 -03:00
Observers Dispatch PostCreated from PostObserver on every create. 2026-07-24 12:01:01 -03:00
Onboarding feat(onboarding): add "where you found us" referral-source step 2026-07-18 16:07:11 -03:00
Permissions Allow account owners to delete workspaces (#208) 2026-08-01 13:00:38 -04:00
Services Add optional Pinterest pin title and destination link (#232) 2026-08-05 18:15:50 -03:00
Settings Allow account owners to delete workspaces (#208) 2026-08-01 13:00:38 -04:00
Social fix(security): make SSRF private-network block configurable and guard the last user-URL fetches 2026-07-17 15:40:15 -03:00
SocialAccount fix: merge-readiness — close two billing/network bugs, harden tests 2026-06-22 09:26:31 -03:00
Workspace
AcceptInviteControllerTest.php Allow account owners to delete workspaces (#208) 2026-08-01 13:00:38 -04:00
AccountControllerTest.php
AiUsageLogTest.php feat: per-workspace pricing, onboarding, and billing overhaul 2026-06-21 20:40:03 -03:00
ApiKeyControllerTest.php
AssetControllerTest.php fix(security): make SSRF private-network block configurable and guard the last user-URL fetches 2026-07-17 15:40:15 -03:00
BillingControllerTest.php refactor: address code review for per-workspace pricing 2026-06-21 21:28:47 -03:00
ChunkedAssetReceiverTest.php test: cover ChunkedAssetReceiver and ChunkReceipt paths 2026-07-23 11:51:13 -03:00
ChunkedCloudUploadTest.php refactor: harden chunked cloud uploads after full PR review 2026-07-23 11:16:39 -03:00
ChunkedUploadFilenameEncodingTest.php fix: stream chunked video finalize to object storage 2026-07-23 10:55:57 -03:00
ContentTypeMediaRulesShareTest.php Restore media-rule parity and release failed MCP upload tokens. 2026-07-24 22:37:57 -03:00
ExampleTest.php
GitHubAuthToggleTest.php feat(auth): self-hosted registration gate + admin seeder (closes #46) 2026-05-19 11:45:16 -03:00
GoogleAuthToggleTest.php feat(auth): self-hosted registration gate + admin seeder (closes #46) 2026-05-19 11:45:16 -03:00
InstagramFacebookIntegrationTest.php
InvitePermissionTest.php refactor: address code review for per-workspace pricing 2026-06-21 21:28:47 -03:00
LocalizationParityTest.php Allow account owners to delete workspaces (#208) 2026-08-01 13:00:38 -04:00
NotificationControllerTest.php
PlanSeederTest.php feat: per-workspace pricing, onboarding, and billing overhaul 2026-06-21 20:40:03 -03:00
PlanTest.php chore: remove legacy plan tiers (starter/plus/pro/max) 2026-06-22 15:31:32 -03:00
PostCommentControllerTest.php
PostControllerTest.php fix: keep post drafts unscheduled by default (#209) 2026-08-01 17:39:18 -03:00
PostMediaAltTextValidationTest.php Harden per-image alt text across publishers, validation, and attach paths 2026-07-16 13:55:33 -03:00
PostSearchTest.php
PostTemplateControllerTest.php fix: keep post drafts unscheduled by default (#209) 2026-08-01 17:39:18 -03:00
SignupSuccessControllerTest.php
SocialAccountModelTest.php Keep Instagram/Threads tokens extended while still valid 2026-07-03 09:18:45 -03:00
SocialAccountToggleTest.php
SocialControllerTest.php fix(linkedin): show connected company page on the accounts and onboarding grids 2026-06-24 21:23:27 -03:00
SocialLoginControllerTest.php refactor: address third-pass review nits 2026-06-22 08:39:25 -03:00
TikTokI18nStringsTest.php fix(tiktok): align UX strings and render processing notice for app review 2026-05-29 10:16:04 -03:00
UpdatePostRequestTest.php Add optional Pinterest pin title and destination link (#232) 2026-08-05 18:15:50 -03:00
UsageControllerTest.php
VerifyWorkspaceConnectionsTest.php fix(social): move Mastodon default instance to config + cleanup 2026-05-19 08:27:46 -03:00
WorkspaceBillingTest.php feat(onboarding): require connecting a social network before checkout 2026-06-22 12:31:44 -03:00
WorkspaceControllerTest.php Allow account owners to delete workspaces (#208) 2026-08-01 13:00:38 -04:00
WorkspaceInviteControllerTest.php Allow account owners to delete workspaces (#208) 2026-08-01 13:00:38 -04:00
WorkspaceInviteGuardTest.php Allow account owners to delete workspaces (#208) 2026-08-01 13:00:38 -04:00
WorkspaceLabelControllerTest.php
WorkspaceSignatureControllerTest.php
YouTubeAnalyticsTest.php