Commit Graph

15188 Commits

Author SHA1 Message Date
Naz
59b0c0bb4d Integrated chai-jest-snapshot into authentication suite
refs https://github.com/TryGhost/Toolbox/issues/129

- This is an example of how the converted test suite syntax could look like when using jest snapshots.
- The tradeoff is not that visible just yet as these tests were mostly checking few fields, but when the whole range of admin API tests is convered we'll be able to get rid of the "checkResponse" utiliti methods along with all the supporting luggage!
2021-12-09 22:20:54 +13:00
Naz
3dfab7d682 Integrated chai-jest-snapshot
refs https://github.com/TryGhost/Toolbox/issues/129

- Minimal version of chai-jest-snapshot with property matcher support. It runs off the forked version of https://github.com/suchipi/chai-jest-snapshot
2021-12-09 22:20:54 +13:00
Naz
743b7a16e0 Refactored authentication and site tests to use e2e-framework
refs https://github.com/TryGhost/Toolbox/issues/129

- Provides an example of how to use the e2e framework.
2021-12-09 22:20:54 +13:00
Naz
2ae0d8ef32 Added e2e framework
refs 24505db918

- The code is heavily borrowed from the referenced commit by @ErisDS. It starts a fresh abstraction layer for all e2e tests to use, provides simle interface for request agent initialization and state management (read the e2e-framework top file description for more)
- Main methods the framework exposes are:
  - getAgent - to initialize request agent with a fresh Ghost instance
  - initFixtures - to initializer a fresh db state
  - resetDb - cleans up the db state if there were state manipulations during the test suite run (POST, PUT requests or non-default fixtures)
2021-12-09 22:20:54 +13:00
Naz
6762e2a60d Started a greenfield e2e test framework
refs https://github.com/TryGhost/Toolbox/issues/129

- Having a fresh module should allow building new testing utility concepts from the ground up without being tied by the mystery baggage of the legacy localUtils/testUtils
- The outline of the concepts the framework will be handling is in the commont on the top of the e2e-framework file
2021-12-09 22:20:54 +13:00
Naz
a18fa18ff3 Fixed authentication test suites
refs https://github.com/TryGhost/Toolbox/issues/152

- This refactor fixes the rest of authentication test suite and outlines the state setup steps that are absolutely needed for tests that rely on any db state. It's still counterintuitive why the fixture initialization has to be called and in that specific order, so next will be refactoring in this area to simplify the initi code
2021-12-09 22:20:54 +13:00
Naz
25d75f69db Made options parameter in agetnt utils explicit
refs https://github.com/TryGhost/Toolbox/issues/152

- Passing around plain options object tends to become quite unreadable long term. While these new utils are being shaped up it's still easy to change interface and introduce new parameters with time as needed.
2021-12-09 22:20:54 +13:00
Naz
05a4fbfd2a Refactored request initialization with supertest
refs https://github.com/TryGhost/Toolbox/issues/152
refs 5bea089dfe
refs 16ad5f73c4

- The refactor is heavily inspired by the referenced commit from @ErisDS
- This refactor is meant to serve as a template for further refactors and unification of the abstraction over "request". Should allow us to be more agnostic towards the library that's powering the request thing. For example, mock-express style of request handling could substitute or get substututed easily if all tests are behind similar "get(Authenticated)Agent" interface
2021-12-09 22:20:54 +13:00
Naz
b7231875a0 Refactored authentication test suite to serverless boot
refs https://github.com/TryGhost/Toolbox/issues/152

- This is a continuation of an experiment to switch over to serverless boot in regression tests. Just a proofe of concept that authentication scenarios would also work and the expectations don't collapse unexpectedly.
- Nothing too crazy so far, easy and straight forward substitution of the config "url" with an express app passed to the supertest agent
2021-12-09 22:20:54 +13:00
Naz
4a1bee0a01 Reworked site regression test suite to serverless boot
refs https://github.com/TryGhost/Toolbox/issues/152

- Being able to set up test suites without blocking a port opens a door to new ways to run tests - for example this has been one of the blockers for running mocha tests in parallel
- Additional benefit is lighter statrup, which reducec the test execution time slightly. Doesn't seem like much but these things stack up!
2021-12-09 22:20:54 +13:00
Sanne de Vries
fc8ecc352f Updated rendering of audio cards without thumbnail
Refs https://github.com/TryGhost/Team/issues/1230
2021-12-09 09:14:01 +00:00
Renovate Bot
726ba687cd
Update dependency sanitize-html to v2.6.1 2021-12-08 19:11:06 +00:00
Kevin Ansfield
d4c110a55b Added first pass of video card rendering
refs https://github.com/TryGhost/Team/issues/1229

- bumped @tryghost/kg-default-cards that contains initial video card rendering
- added video card CSS file with basic style that prevents video element rendering larger than the content width (similar to default image styles in most themes)
2021-12-08 18:01:44 +00:00
Rishabh
2d43c12276 Fixed global variable leak for new card scripts
no issue

- wraps the card js scripts into an IIFE to avoid polluting global variables on the site
- also any fixes errors caused by `swup` and its scripts-plugin that trips over already created global variables
2021-12-08 22:58:22 +05:30
Daniel Lockyer
b7c17ca439 v4.27.1 2021-12-08 16:02:08 +00:00
Daniel Lockyer
44ad9fde09 Updated Admin to v4.27.1 2021-12-08 16:02:08 +00:00
Fabien egg O'Carroll
55d7176e51 🐛 Fixed card scripts executing before DOM is parsed
no-issue

Using the async attribute means that the script is downloaded in
parallel with the parsing of the html into DOM, and then executed upon
completion. This means that the script cannot be sure that particular
parts of the DOM exist as it may not have finished parsing. This has
resulted in bugs with the new toggle card not working.

Switching our script to use the defer attribute means that the script is
still downloaded in parallel with parsing, but it is not executed until
parsing is complete. This means that the script can safely access the
DOM.
2021-12-08 17:54:37 +02:00
Daniel Lockyer
daed6f53fb v4.27.0 2021-12-08 15:38:07 +00:00
Daniel Lockyer
52491e7a6e Updated Admin to v4.27.0 2021-12-08 15:38:06 +00:00
Daniel Lockyer
b52476df1c 🎨 Updated Casper to v4.4.0 2021-12-08 15:38:06 +00:00
Kevin Ansfield
b3a57f702b Removed quoteStyles flag
refs https://github.com/TryGhost/Team/issues/1239

- alternative blockquote style feature is no longer behind the flag in Admin so we no longer need the flag server-side
2021-12-08 15:21:49 +00:00
Fabien egg O'Carroll
d6e6f2e4be Added support for rich Twitter embeds in emails
refs https://github.com/TryGhost/Team/issues/1001

This adds custom rendering to Twitter embeds for email newsletters, so
that rather than displaying a plaintext blockquote with the tweet
contents, we render an rich Twitter card.
2021-12-08 17:19:27 +02:00
Renovate Bot
dd63acf95c Update dependency @sentry/node to v6.16.0 2021-12-08 14:43:05 +00:00
Daniel Lockyer
fa8c3ebe99 Revert "Extract logging from DI patterns, only use @tryghost/logging package"
This reverts commit 97451a93cb.
2021-12-08 14:28:41 +00:00
Daniel Lockyer
2d090b8b2a Revert "Remove unnecessary references to ghostVersion"
This reverts commit 443ee369d2.
2021-12-08 14:28:41 +00:00
Peter Zimon
3a877253e6 Updated Twitter email card styles
Fixed media (image or video) spacing for Twitter embeds in emails on mobile sizes.

- bumped `@tryghost/kg-default-cards` to a fixed version
2021-12-08 14:22:53 +01:00
Sanne de Vries
6e4be46fb3 Updated audio card frontend styles in Chrome
Refs https://github.com/TryGhost/Team/issues/1230
2021-12-08 12:22:39 +00:00
djordje vlaisavljevic
e72092fa5e Updated product card frontend styles
refs https://github.com/TryGhost/Team/issues/1245
2021-12-08 12:40:57 +01:00
Rishabh
9cbaab119b Refined audio card player with multiple playback rate options
refs https://github.com/TryGhost/Team/issues/1230

- adds multiple playback rate option to audio card player on click
2021-12-08 16:36:22 +05:30
Thibaut Patel
62988fe1db Added the tweetGridCard feature flag
refs https://github.com/TryGhost/Team/issues/1255

- developer flag for enabling tweet grid cards in the card menus
2021-12-08 10:07:56 +01:00
djordje vlaisavljevic
cb86c06504 Removed unnecessary CSS and !important declarations
refs https://github.com/TryGhost/Team/issues/1245
2021-12-08 10:03:12 +01:00
Kevin Ansfield
8e1a0e1f02 Added theme checks for alternative blockquote CSS class
refs https://github.com/TryGhost/Team/issues/1239

- bumped gscan to include a checks for `.kg-blockquote-alt` when the built-in `blockquote` CSS is disabled
2021-12-08 09:02:05 +00:00
Renovate Bot
7924a52cc2
Update metascraper to v5.25.5 2021-12-07 22:00:35 +00:00
renovate[bot]
c4e5e84ce8
Added the product card parser plugin
refs https://github.com/TryGhost/Team/issues/1245
2021-12-07 22:58:41 +01:00
renovate[bot]
78c4422615
Updated the product card rendering
refs https://github.com/TryGhost/Team/issues/1245

- Updated the markup to make it easier to style the card
2021-12-07 22:57:49 +01:00
djordje vlaisavljevic
88238e6403 Updated frontend styles for product card
refs https://github.com/TryGhost/Team/issues/1245
2021-12-07 20:58:42 +01:00
djordje vlaisavljevic
325de3e5cf Updated frontend styles for product card
refs https://github.com/TryGhost/Team/issues/1245
2021-12-07 20:16:45 +01:00
Rishabh
27ced6cc84 Refined audio card player sliders
refs https://github.com/TryGhost/Team/issues/1230

- refines seek and volume sliders for audio player to show progress marker with background color
2021-12-08 00:16:32 +05:30
Renovate Bot
1dd012d9f4
Update dependency multer to v1.4.4 2021-12-07 17:04:32 +00:00
Peter Zimon
990e7640e8 Refined Twitter embed card styles
Twitter cards in emails needed to be updated to look and work closer to an actual tweet.

- bumped `@tryghost/kg-default-cards` to a fixed version
2021-12-07 18:01:23 +01:00
djordje vlaisavljevic
bf78df0e07 Added frontend CSS file for product card
refs https://github.com/TryGhost/Team/issues/1233
2021-12-07 17:33:13 +01:00
renovate[bot]
16a73f7017
Added a first version of the product card frontend rendering
refs https://github.com/TryGhost/Team/issues/1233

- renders the card in the same way the Koenig editor does
2021-12-07 17:23:05 +01:00
Sanne de Vries
31cadeaad0 Updated audio card frontend rendering
Refs https://github.com/TryGhost/Team/issues/1230
2021-12-07 16:02:06 +00:00
Rishabh
52faba6dac Added dynamic play/pause and unmute state for audio card player
refs https://github.com/TryGhost/Team/issues/1230

- adds dynamic play/pause icon toggle for audio player
- adds dynamic mute/unmute icon toggle for mute behavior
- fixed volume slider not working
2021-12-07 20:43:20 +05:30
Sam Lord
443ee369d2
Remove unnecessary references to ghostVersion
refs: https://github.com/TryGhost/Toolbox/issues/146
GhostVersion was passed in here but not used at all. This just removes those unnecessary usages.
2021-12-07 13:48:22 +00:00
Sanne de Vries
986f731e60 Updated audio card frontend styles
Refs https://github.com/TryGhost/Team/issues/1230
2021-12-07 13:47:36 +00:00
Sanne de Vries
259d40641d Updated audio card playback speed characters
Refs https://github.com/TryGhost/Team/issues/1230
2021-12-07 13:16:04 +00:00
Sanne de Vries
b6544afff5 Updated audio card frontend rendering
Refs https://github.com/TryGhost/Team/issues/1230
2021-12-07 13:04:44 +00:00
James Morris
0aaa1b9c75 Removed more unnecessary styles from blockquote card styles
refs https://github.com/TryGhost/Team/issues/1239
2021-12-07 11:53:46 +00:00
James Morris
5c4cfc785f Removed blockquote selector from card styles plus email tweaks
refs https://github.com/TryGhost/Team/issues/1239
2021-12-07 11:35:58 +00:00