diff --git a/cypress/integration/contentful_banners_spec.js b/cypress/integration/contentful_banners_spec.js index 07b9d6f417..9f65c482a4 100644 --- a/cypress/integration/contentful_banners_spec.js +++ b/cypress/integration/contentful_banners_spec.js @@ -1,15 +1,22 @@ const YAML = require('yamljs') -const utf8 = require('utf8') const allBannersYaml = 'source/_data/banners.yml' +function emojiStrip (string, utf16Encoded = true) { + if (!utf16Encoded) { + return string.replace(/\\u[\dA-F]{8}/gi, '') + } + + return string.replace(/([\uE000-\uF8FF]|\uD83C[\uDF00-\uDFFF]|\uD83D[\uDC00-\uDDFF])/g, '') +} + describe('Contentful driven banners', () => { it('displays all current banners with proper info', function () { cy.task('readFileMaybe', allBannersYaml) .then((yamlString) => { if (typeof yamlString === 'undefined' || yamlString === null) return this.skip() - const yamlObject = YAML.parse(yamlString) + const yamlObject = YAML.parse(emojiStrip(yamlString, false)) // remove all outdated or future banners const setMyTimezoneToDate = (date) => new Date(Date.parse(date)) @@ -35,7 +42,7 @@ describe('Contentful driven banners', () => { .should((bannerText) => { const yamlText = Cypress.$(banners[i].text).text().trim() - expect(utf8.encode(bannerText), `Banner #${i + 1} text is proper`).to.eq(yamlText) + expect(emojiStrip(bannerText), `Banner #${i + 1} text is proper`).to.eq(yamlText) }) cy.wrap(banner) diff --git a/package-lock.json b/package-lock.json index d8d1e94c36..806b3f6f4b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7786,9 +7786,9 @@ } }, "ggit": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/ggit/-/ggit-2.4.11.tgz", - "integrity": "sha512-0fJE5XTbHLuPXxQE0NzHy2u76hYIaNpA1dU4anTp0lVmHKZ2bUzubjhGPLzfldIMUkPemXOd93ta4DIBIU5dAw==", + "version": "2.4.12", + "resolved": "https://registry.npmjs.org/ggit/-/ggit-2.4.12.tgz", + "integrity": "sha512-29DxkCEmqhXNk+JrV8GNQ+IY8OaJ1J2jC+B/vPvOk7CWs/2K8uX2DQeMlnFy7S+NeJrTNcLWfPJDdi6IflDt/A==", "dev": true, "requires": { "always-error": "1.0.0", @@ -7803,7 +7803,7 @@ "find-up": "3.0.0", "glob": "7.1.3", "lazy-ass": "1.6.0", - "lodash": "4.17.11", + "lodash": "4.17.15", "moment": "2.23.0", "moment-timezone": "0.5.23", "optimist": "0.6.1", @@ -7864,12 +7864,6 @@ "path-is-absolute": "^1.0.0" } }, - "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true - }, "moment": { "version": "2.23.0", "resolved": "https://registry.npmjs.org/moment/-/moment-2.23.0.tgz", @@ -7991,6 +7985,139 @@ "commander": "2.20.0", "ggit": "2.4.11", "lazy-ass": "1.6.0" + }, + "dependencies": { + "bluebird": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", + "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==", + "dev": true + }, + "colors": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.3.2.tgz", + "integrity": "sha512-rhP0JSBGYvpcNQj4s5AdShMeE5ahMop96cTeDl/v9qQQm2fYClE2QXZRi8wLzc+GmXSxdIqqbOIAhyObEXDbfQ==", + "dev": true + }, + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "ggit": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/ggit/-/ggit-2.4.11.tgz", + "integrity": "sha512-0fJE5XTbHLuPXxQE0NzHy2u76hYIaNpA1dU4anTp0lVmHKZ2bUzubjhGPLzfldIMUkPemXOd93ta4DIBIU5dAw==", + "dev": true, + "requires": { + "always-error": "1.0.0", + "bluebird": "3.5.1", + "chdir-promise": "0.6.2", + "check-more-types": "2.24.0", + "cli-table": "0.3.1", + "colors": "1.3.2", + "commander": "2.17.1", + "d3-helpers": "0.3.0", + "debug": "3.2.6", + "find-up": "3.0.0", + "glob": "7.1.3", + "lazy-ass": "1.6.0", + "lodash": "4.17.11", + "moment": "2.23.0", + "moment-timezone": "0.5.23", + "optimist": "0.6.1", + "pluralize": "7.0.0", + "q": "2.0.3", + "quote": "0.4.0", + "ramda": "0.26.1", + "semver": "5.6.0" + }, + "dependencies": { + "commander": { + "version": "2.17.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", + "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", + "dev": true + } + } + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "lodash": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "dev": true + }, + "moment": { + "version": "2.23.0", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.23.0.tgz", + "integrity": "sha512-3IE39bHVqFbWWaPOMHZF98Q9c3LDKGTmypMiTM2QygGXXElkFWIH7GxfmlwmY2vwa+wmNsoYZmG2iusf1ZjJoA==", + "dev": true + }, + "moment-timezone": { + "version": "0.5.23", + "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.23.tgz", + "integrity": "sha512-WHFH85DkCfiNMDX5D3X7hpNH3/PUhjTGcD0U1SgfBGZxJ3qUmJh5FdvaFjcClxOvB3rzdfj4oRffbI38jEnC1w==", + "dev": true, + "requires": { + "moment": ">= 2.9.0" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "pluralize": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", + "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", + "dev": true + }, + "q": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/q/-/q-2.0.3.tgz", + "integrity": "sha1-dbjbAlWhpa+C9Yw/Oqoe/sfQ0TQ=", + "dev": true, + "requires": { + "asap": "^2.0.0", + "pop-iterate": "^1.0.1", + "weak-map": "^1.0.5" + } + }, + "semver": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", + "dev": true + } } }, "github-from-package": { diff --git a/package.json b/package.json index 72803a3ddf..b5a8c31bc0 100644 --- a/package.json +++ b/package.json @@ -99,7 +99,7 @@ "execa": "2.0.3", "fluent-ffmpeg": "2.1.2", "fs-extra": "8.1.0", - "ggit": "2.4.11", + "ggit": "2.4.12", "git-last": "1.2.11", "got": "9.6.0", "gulp": "4.0.2", diff --git a/source/_data/podcasts.yml b/source/_data/podcasts.yml index ed17d758a5..6cbcfb2479 100644 --- a/source/_data/podcasts.yml +++ b/source/_data/podcasts.yml @@ -9,7 +9,6 @@ large: img: /img/examples/cypress-hot-sear-questions-gleb-bahmutov-test-talks.jpg - title: "This.JavaScript: State of Testing" - url: https://www.youtube.com/watch?v=iycQpCFBASE sourceName: This Dot sourceUrl: https://www.thisdot.co/ date: December 18, 2018 diff --git a/source/_data/screencasts.yml b/source/_data/screencasts.yml index bbaa922f24..1f1a28c842 100644 --- a/source/_data/screencasts.yml +++ b/source/_data/screencasts.yml @@ -1,7 +1,6 @@ # large links with thumbnails, links, embedded video large: - title: "Running Cypress.io off the Command Line" - url: https://www.youtube.com/watch?v=Eprov0EKRfQ sourceName: YouTube sourceUrl: https://www.youtube.com/watch?v=Eprov0EKRfQ date: Jul 26, 2019 @@ -9,7 +8,6 @@ large: youtubeId: Eprov0EKRfQ - title: "GeeCON 2019: Dmitry Vinnik - Modern Web Testing: Going Beyond Selenium" - url: https://www.youtube.com/watch?v=1m2AcmiEdpI sourceName: YouTube sourceUrl: https://www.youtube.com/watch?v=1m2AcmiEdpI date: Jul 24, 2019 @@ -17,7 +15,6 @@ large: youtubeId: 1m2AcmiEdpI - title: "Cypress.io - Automatización al siguiente nivel" - url: https://www.youtube.com/watch?v=9IVA2HTtlL0 sourceName: YouTube sourceUrl: https://www.youtube.com/watch?v=9IVA2HTtlL0 date: Jul 24, 2019 @@ -25,7 +22,6 @@ large: youtubeId: 9IVA2HTtlL0 - title: "Cypress + Cucumber Automated Browser Testing stream 02" - url: https://www.youtube.com/watch?v=JNYia3gHCc4 sourceName: YouTube sourceUrl: https://www.youtube.com/watch?v=JNYia3gHCc4 date: Jul 3, 2019 @@ -33,7 +29,6 @@ large: youtubeId: JNYia3gHCc4 - title: "Preparing Angular Cypress End to End Tests for Continuous Integration (CI)" - url: https://www.youtube.com/watch?v=WOCrIhqk7Js sourceName: YouTube sourceUrl: https://angular-university.io/course/angular-testing-course date: Jun 13, 2019 @@ -41,7 +36,6 @@ large: youtubeId: WOCrIhqk7Js - title: "Problemas, ventajas y retos del Test end to end con Cypress.io" - url: https://www.youtube.com/watch?v=rA_1fPa38Tg sourceName: YouTube sourceUrl: https://www.youtube.com/watch?v=rA_1fPa38Tg date: May 29, 2019 @@ -49,7 +43,6 @@ large: youtubeId: rA_1fPa38Tg - title: "TP Vlog 12 - Cypress io, instalacja, konfiguracja, pierwsze testy" - url: https://www.youtube.com/watch?v=WvmGRZNw6j8&t=1s sourceName: YouTube sourceUrl: https://www.youtube.com/watch?v=WvmGRZNw6j8&t=1s date: May 26, 2019 @@ -57,7 +50,6 @@ large: youtubeId: WvmGRZNw6j8&t=1s - title: "Fun and Fast End to End Testing Using Cypress" - url: https://www.youtube.com/watch?v=zpn0f4sKUNw sourceName: Youtube sourceUrl: https://www.youtube.com/watch?v=zpn0f4sKUNw date: May 18, 2019 @@ -66,7 +58,6 @@ large: slides: https://github.com/JesterXL/react-redux-async-types/tree/cypress - title: "Cypress: cómo mantener el amor tras las primeras citas" - url: https://www.youtube.com/watch?v=LlF6VhAAm7g sourceName: YouTube sourceUrl: https://www.youtube.com/watch?v=LlF6VhAAm7g date: May 2, 2019 @@ -74,7 +65,6 @@ large: youtubeId: LlF6VhAAm7g - title: "End to End Testing a Web Application using Cypress" - url: https://www.youtube.com/watch?v=woI490HRM34 sourceName: YouTube sourceUrl: https://www.youtube.com/watch?v=woI490HRM34 date: Apr 23, 2019 @@ -83,7 +73,6 @@ large: slides: https://github.com/kriscfoster/end-to-end-testing-todo-app - title: "Working with XHR in Web app automation testing with Cypress.io" - url: https://www.youtube.com/watch?v=Q6em2Xv-6Ew sourceName: YouTube sourceUrl: https://www.udemy.com/e2e-cypress/ date: Apr 23, 2019 @@ -91,7 +80,6 @@ large: youtubeId: Q6em2Xv-6Ew - title: "Automated and Manual Accessibility Testing with Marcy Sutton" - url: https://www.youtube.com/watch?v=IADSsClWVtA sourceName: YouTube sourceUrl: https://www.youtube.com/watch?v=IADSsClWVtA date: Apr 19, 2019 @@ -100,7 +88,6 @@ large: slides: https://github.com/jlengstorf/a11y-testing - title: "ngHouston - Intro to Cypress w/ Jesse Sanders" - url: https://www.youtube.com/watch?v=tM2KRTE3F6Y sourceName: YouTube sourceUrl: https://www.youtube.com/watch?v=tM2KRTE3F6Y date: Mar 13, 2019 @@ -108,7 +95,6 @@ large: youtubeId: tM2KRTE3F6Y - title: "How to write tests for your Gatsby sites and apps" - url: https://www.youtube.com/watch?v=BzRAYt7BHRw sourceName: YouTube sourceUrl: https://www.twitch.tv/jlengstorf date: Mar 7, 2019 @@ -117,7 +103,6 @@ large: slides: https://github.com/kentcdodds/kentcdodds.com/pull/88 - title: "My Cypress Workflow" - url: https://www.youtube.com/watch?v=5sXulBZe25Q sourceName: YouTube sourceUrl: https://www.youtube.com/channel/UCt7yOnL7bI7yCa1Xe_GTjJQ date: Jan 31, 2019 @@ -125,7 +110,6 @@ large: youtubeId: 5sXulBZe25Q - title: "CircleCI + Cypress.io: End to end testing made easy" - url: https://youtu.be/J-xbNtKgXfY sourceName: CircleCI sourceUrl: https://circleci.com/ date: Dec 10, 2018 @@ -134,7 +118,6 @@ large: slides: https://slides.com/bahmutov/circleci-cypress-orb - title: "Get the latest updates from Cypress" - url: https://www.youtube.com/watch?v=FfqD1ExUGlw sourceName: Cypress.io sourceUrl: https://slides.com/bahmutov/cy-parallelization date: Oct 16, 2018 @@ -143,7 +126,6 @@ large: slides: https://slides.com/bahmutov/cy-parallelization - title: "Cypress End-to-End Testing" - url: https://www.youtube.com/watch?v=7N63cMKosIE sourceName: Angular Firebase sourceUrl: https://angularfirebase.com/lessons/cypress-angular-testing-end-to-end/ date: Jun 22, 2018 @@ -151,7 +133,6 @@ large: youtubeId: 7N63cMKosIE - title: "Cypress.io React TodoMVC test" - url: https://youtu.be/nq_WRILIFTw sourceName: Grafikart sourceUrl: https://twitter.com/winkler1 date: Apr 5, 2018 @@ -159,7 +140,6 @@ large: youtubeId: nq_WRILIFTw - title: "Tests fonctionnels avec Cypress" - url: https://www.youtube.com/watch?v=CC-1i0bMIoA&feature=youtu.be sourceName: Grafikart sourceUrl: https://www.grafikart.fr/formations/javascript-unit-test/cypress date: Mar 21, 2018 @@ -167,7 +147,6 @@ large: youtubeId: CC-1i0bMIoA - title: "Testing hyperapp with Cypress" - url: https://www.youtube.com/watch?v=w8liCoPsDIU sourceName: Hyperapp Cypress Demo sourceUrl: https://github.com/LearnHyperapp/hyperapp-cypress-demo date: Mar 17, 2018 @@ -175,7 +154,6 @@ large: youtubeId: w8liCoPsDIU - title: "Using Cypress for end-to-end testing with Gleb Bahmutov" - url: https://www.youtube.com/watch?v=zTHQqiu_y0Q sourceName: stefan judis sourceUrl: https://www.youtube.com/channel/UCLpT9xDn3WQ24wfVCkAZU6A date: Feb 11, 2018 @@ -183,7 +161,6 @@ large: youtubeId: zTHQqiu_y0Q - title: "Cypress.io - five-minute introduction" - url: https://youtu.be/AddBNz1T08U sourceName: Gorrion sourceUrl: https://gorrion.io/blog/getting-started-with-cypress-io/ date: Jan 31, 2018 diff --git a/source/_data/talks.yml b/source/_data/talks.yml index 93c3be57d6..ad0567fc95 100644 --- a/source/_data/talks.yml +++ b/source/_data/talks.yml @@ -9,7 +9,6 @@ large: img: /img/examples/next-level-e2e-testing-with-cypress.png - title: 'Cypress: testing without Selenium, part 1' - url: https://www.youtube.com/watch?v=hk4qtXgL12k sourceName: Selenium Camp sourceUrl: https://seleniumcamp.com date: Mar 11, 2019 @@ -18,7 +17,6 @@ large: slides: https://seleniumcamp.com/talk/cypress-testing-without-selenium/ - title: 'Building Web Apps with Hyperapp' - url: https://www.youtube.com/watch?v=8pcx0XitUCc sourceName: NERD Summit sourceUrl: https://nerd.ngo/ date: Mar 10, 2019 @@ -27,7 +25,6 @@ large: slides: https://slides.com/bahmutov/hyperapp-intro#/ - title: 'Continuous Integration with GitLab CI' - url: https://youtu.be/EuwLdbCu3DE?t=1879 sourceName: NERD Summit sourceUrl: https://nerd.ngo/ date: Mar 10, 2019 @@ -45,7 +42,6 @@ large: img: /img/examples/painless-e2e-with-cypress.png - title: 'There and Back Again: e2e Testing React with Cypress' - url: https://www.youtube.com/watch?v=I3WJhutZovw sourceName: Grow IT Conf sourceUrl: https://2018.growit.events/ date: Jan 9, 2019 @@ -54,7 +50,6 @@ large: slides: https://slides.com/nikolalsvk/e2e-cypress - title: 'Sleeping better at night with Cypress.io' - url: https://www.youtube.com/watch?v=-tE0SQ0cR4c sourceName: React Day Berlin sourceUrl: https://reactday.berlin/ date: Dec 20, 2018 @@ -62,7 +57,6 @@ large: youtubeId: -tE0SQ0cR4c - title: 'Cypress: The future of E2E testing' - url: https://www.youtube.com/watch?v=pXyBligMMr0 sourceName: NG-BE 2018 sourceUrl: https://ng-be.org/ date: Dec 11, 2018 @@ -71,7 +65,6 @@ large: slides: https://speakerdeck.com/d3lm/cypress-the-future-of-e2e-testing - title: Testing Vue with Cypress - url: https://www.youtube.com/watch?v=uowaTHQDcKc sourceName: VueNYC meetup sourceUrl: https://www.meetup.com/vueJsNYC/events/254789852/ date: Dec 6, 2018 @@ -89,7 +82,6 @@ large: slides: https://slides.com/bahmutov/well-tested-software - title: 'Automated testing for the modern web' - url: https://www.youtube.com/watch?v=ggJ1-ChxHrQ sourceName: JSConf Colombia sourceUrl: https://jsconf.co/ date: Nov 17, 2018 @@ -98,7 +90,6 @@ large: slides: https://speakerdeck.com/jennifershehane/automated-testing-for-the-modern-web - title: Next Generation Web Application End to End Testing - url: https://youtu.be/CkGQ0fFH3yE sourceName: Devoxx Belgium sourceUrl: https://devoxx.be/ date: Nov 4, 2018 @@ -107,7 +98,6 @@ large: slides: https://speakerdeck.com/amir/next-generation-web-application-end-to-end-testing-with-cypress - title: 'E2E Testing with Cypress' - url: https://www.youtube.com/watch?v=HMv365RRwtA sourceName: RVA JavaScript Conf 2018 sourceUrl: https://www.rvajavascript.com/ date: Nov 2, 2018 @@ -116,12 +106,11 @@ large: slides: https://slides.com/bahmutov/well-tested-software - title: End-to-end testing is hard - but it doesn't have to be - url: https://www.youtube.com/watch?v=swpz0H0u13k - youtubeId: swpz0H0u13k sourceName: ReactiveConf 2018 sourceUrl: https://reactiveconf.com/ date: Oct 29, 2018 author: Gleb Bahmutov + youtubeId: swpz0H0u13k slides: https://slides.com/bahmutov/reactive-conf - title: "TDD in Vue with Cypress" @@ -141,16 +130,14 @@ large: img: /img/examples/tdd-react.jpg - title: Deterministic Mocking with GraphQL and Apollo - url: https://youtu.be/K445DtQ5oHY - youtubeId: K445DtQ5oHY sourceName: React Boston 2018 sourceUrl: http://www.reactboston.com/ date: Sep 29, 2018 author: Hillary Bauer & Mark Faga + youtubeId: K445DtQ5oHY slides: https://github.com/mjfaga/react-boston-2018-lunar-launch - title: 'Changing the Game with Cypress' - url: https://www.youtube.com/watch?v=B7cUpqUlqsU sourceName: NG-Talks sourceUrl: https://ngtalks.io/ date: Aug 27, 2018 @@ -159,7 +146,6 @@ large: slides: https://speakerdeck.com/d3lm/changing-the-game-with-cypress - title: "Frontend Development 2018 - What's in your stack?" - url: https://www.youtube.com/watch?v=88K8oO_dYbI sourceName: NDC Conferences sourceUrl: https://ndcconferences.com/ date: Jul 31, 2018 @@ -168,7 +154,6 @@ large: slides: https://speakerdeck.com/stefanjudis/frontend-development-2018-whats-in-your-stack - title: "Everything I know about writing quality software" - url: https://www.youtube.com/watch?v=1PMxLTfh6lo sourceName: BuzzJS date: Jul 30, 2018 author: Gleb Bahmutov @@ -176,21 +161,18 @@ large: slides: https://slides.com/bahmutov/quality-software - title: "Hassle free E2E tests with Cypress" - url: https://www.youtube.com/watch?v=jijOIqtBGYg sourceName: React Vienna date: Jul 17, 2018 author: David Madner youtubeId: jijOIqtBGYg - title: "QIT: Caching, Testing, and Project Management" - url: https://www.youtube.com/watch?v=NTanPba9mZM&feature=youtu.be sourceName: Coding Blocks date: Jul 1, 2018 author: Dave Follett, Joe Zack, Nicolas Marcora youtubeId: NTanPba9mZM - title: "Cypress E2E Testing" - url: https://www.youtube.com/watch?v=LFUm9qV_Gjo sourceName: Northwest Chicago Javascript date: Jun 21, 2018 author: Steve Schwarz @@ -207,7 +189,6 @@ large: slides: https://speakerdeck.com/jennifershehane/automated-testing-for-the-modern-web - title: 'Next-Generation Frontend Testing with Cypress.io' - url: https://www.youtube.com/watch?v=UJICwHNb4BQ sourceName: js.la sourceUrl: https://js.la/ date: Jun 20, 2018 @@ -215,14 +196,12 @@ large: youtubeId: UJICwHNb4BQ - title: "Cypress" - url: https://www.youtube.com/watch?v=GhyE3Y5oS_0 sourceName: Bluesoft Labs date: May 24, 2018 author: Adriano Silva youtubeId: GhyE3Y5oS_0 - title: "End to End Testing in the Future" - url: https://www.youtube.com/watch?v=p38bIMC-YOU sourceName: WeAreDevs Conference date: May 18, 2018 author: Gleb Bahmutov @@ -230,21 +209,18 @@ large: slides: https://slides.com/bahmutov/e2e-in-the-future - title: "Accélerez vos tests end to end avec Cypress" - url: https://www.youtube.com/watch?v=UpBfQ6mdb8U&=&feature=youtu.be sourceName: Devox France date: May 2, 2018 author: Rodolphe Bung youtubeId: UpBfQ6mdb8U - title: "Extracting a React Component with Cypress" - url: https://youtu.be/Sth0bGfFOMw sourceName: Big Nerd Ranch Webinar date: May 1, 2018 author: Josh Justice youtubeId: Sth0bGfFOMw - title: "VueJs Applied + Testing with Cypress.io" - url: https://www.youtube.com/watch?time_continue=29&v=dpB0YgnFyZQ sourceName: JavaScript Meetup - St. Louis sourceUrl: https://www.meetup.com/STL-JS-meetup/events/247430738/ date: Apr 19, 2018 @@ -252,7 +228,6 @@ large: youtubeId: dpB0YgnFyZQ - title: "Painless testing for React applications" - url: https://youtu.be/lgurVvQsOTY sourceName: ReactJS Boston sourceUrl: https://www.meetup.com/ReactJS-Boston/events/248512859/ date: Apr 3, 2018 @@ -261,7 +236,6 @@ large: slides: https://slides.com/bahmutov/painless-react-testing - title: "Speedy Testing with Cypress" - url: https://youtu.be/k-4pwQZRCN4 sourceName: DrupalCon sourceUrl: https://events.drupal.org/nashville2018 date: Apr 12, 2018 @@ -270,7 +244,6 @@ large: slides: https://drive.google.com/drive/folders/0B_MmuZNiBFDUdXotYmtlczl1VWs - title: "Effective React Testing" - url: https://youtu.be/Eakp29J38YA sourceName: Jeremy Fairbank's YouTube sourceUrl: https://www.youtube.com/channel/UCIF0e4G6TQ7RNqauicoy10g date: Apr 6, 2018 @@ -278,7 +251,6 @@ large: youtubeId: Eakp29J38YA - title: "End to End Testing: The Game Has Changed" - url: https://www.youtube.com/watch?v=C1D94jWy8uE sourceName: JSConf Iceland sourceUrl: https://2018.jsconf.is/ date: Mar 1, 2018 @@ -286,7 +258,6 @@ large: youtubeId: D-h3bhzauKo?start=189 - title: "Moving Around the Testing Pyramid" - url: https://www.youtube.com/watch?v=5FnalKRjpZk&t=0s&index=5&list=PLZ66c9_z3umNSrKSb5cmpxdXZcIPNvKGw sourceName: "Assert(js)" sourceUrl: https://www.youtube.com/playlist?list=PLZ66c9_z3umNSrKSb5cmpxdXZcIPNvKGw&mc_cid=ddf9309c22&mc_eid=c05d20b621 @@ -296,7 +267,6 @@ large: slides: https://slides.com/bahmutov/assertjs - title: "Cypress Best Practices" - url: https://www.youtube.com/watch?v=5XQOK0v_YRE&t=0s&index=4&list=PLZ66c9_z3umNSrKSb5cmpxdXZcIPNvKGw sourceName: "Assert(js)" sourceUrl: https://www.youtube.com/playlist?list=PLZ66c9_z3umNSrKSb5cmpxdXZcIPNvKGw&mc_cid=ddf9309c22&mc_eid=c05d20b621 date: Feb 22, 2018 @@ -305,7 +275,6 @@ large: slides: https://speakerdeck.com/brianmann/cypress-best-practices - title: "End to End Testing: The Game Has Changed" - url: https://www.youtube.com/watch?v=rICGz5qrYJU&feature=youtu.be&t=1h14m46s sourceName: ReactJS Denver sourceUrl: https://www.meetup.com/ReactJS-Denver/ date: Nov 14, 2017 @@ -313,7 +282,6 @@ large: youtubeId: rICGz5qrYJU - title: Modern Integration Testing for JavaScript Applications - url: https://www.youtube.com/watch?v=D20nX2zAypk&feature=youtu.be sourceName: BostonJS sourceUrl: https://www.meetup.com/boston_JS/ date: Oct 3, 2017 @@ -322,7 +290,6 @@ large: slides: https://slides.com/bahmutov/boston-js-testing - title: "Slaying Selenium with Cypress" - url: https://www.youtube.com/watch?v=bSpLEJ-CrGk sourceName: MelbCSS sourceUrl: https://www.meetup.com/MelbCSS/ date: Oct 3, 2017 @@ -346,7 +313,6 @@ large: img: /img/examples/js-monthly-london-norbert-de-langen-testing-made-easy-cypress.jpg - title: "Testing, the way it should be" - url: https://youtu.be/lK_ihqnQQEM sourceName: ReactiveConf sourceUrl: https://reactiveconf.com/ date: Oct 27, 2016 @@ -355,7 +321,6 @@ large: slides: https://speakerdeck.com/brianmann/enter-cypress-integration-testing-done-right - title: "Enter Cypress - Integration Testing Done Right" - url: https://www.youtube.com/watch?v=JWOjQrGIokw&feature=youtu.be sourceName: TestWorksConf sourceUrl: https://twc.amsterdam/ date: Oct 7, 2016 @@ -363,7 +328,6 @@ large: youtubeId: JWOjQrGIokw - title: "Testing, the way it should be" - url: https://youtu.be/yq99BvSe1AQ sourceName: Nodevember sourceUrl: https://twc.amsterdam/ date: Nov 15, 2015 diff --git a/themes/cypress/layout/media.swig b/themes/cypress/layout/media.swig index 717b681ed4..968036a596 100644 --- a/themes/cypress/layout/media.swig +++ b/themes/cypress/layout/media.swig @@ -63,7 +63,19 @@
{% for media in site.data[page.dataType].large %}
-

{{ media.title }}

+

+ {% if media.youtubeId or media.url %} + {% if media.youtubeId %} + + {% else %} + + {% endif %} + {{ media.title }} + + {% else %} + {{ media.title }} + {% endif %} +

{% if media.youtubeId %}