researchgate / gemini-react Goto Github PK
View Code? Open in Web Editor NEWPlugin, which simplifies writing gemini tests for react components
Home Page: https://github.com/researchgate/gemini-react
License: MIT License
Plugin, which simplifies writing gemini tests for react components
Home Page: https://github.com/researchgate/gemini-react
License: MIT License
I write tests with gemini-react.
When the number of tests grows, I need to increase httpTimeout
in gemini config because of timeout errors.
It seems that first requests to gemini-react server runs before webpack build is finished.
Can it be possible?
If so, can it be fixed?
If so, can you give a direction, where to start hacking?
Branch | Build failing π¨ |
---|---|
Dependency | react |
Current Version | 15.6.1 |
Type | devDependency |
This version is covered by your current version range and after updating it in your project the build failed.
As react is βonlyβ a devDependency of this project it might not break production or downstream projects, but βonlyβ your build or test tools β preventing new deploys or publishes.
I recommend you give this issue a high priority. Iβm sure you can resolve this πͺ
There is a collection of frequently asked questions and of course you may always ask my humans.
Your Greenkeeper Bot π΄
Right now plugin expects that webpack is used. Using other bundlers is not possible, and non-js imports need to be stubbed to avoid the errors inside express server.
One possible way to solve this is making bundler customizable.
Another one is removing bundling from project at all and expect tests to be built before gemini is executed. Runtime wrapping on client and server can be replaced by AOT compiltion in this case.
To see what happens to your code in Node.js 10, Greenkeeper has created a branch with the following changes:
.travis.yml
If youβre interested in upgrading this repo to Node.js 10, you can open a PR with these changes. Please note that this issue is just intended as a friendly reminder and the PR as a possible starting point for getting your code running on Node.js 10.
Greenkeeper has checked the engines
key in any package.json
file, the .nvmrc
file, and the .travis.yml
file, if present.
engines
was only updated if it defined a single version, not a range..nvmrc
was updated to Node.js 10.travis.yml
was only changed if there was a root-level node_js
that didnβt already include Node.js 10, such as node
or lts/*
. In this case, the new version was appended to the list. We didnβt touch job or matrix configurations because these tend to be quite specific and complex, and itβs difficult to infer what the intentions were.For many simpler .travis.yml
configurations, this PR should suffice as-is, but depending on what youβre doing it may require additional work or may not be applicable at all. Weβre also aware that you may have good reasons to not update to Node.js 10, which is why this was sent as an issue and not a pull request. Feel free to delete it without comment, Iβm a humble robot and wonβt feel rejected π€
There is a collection of frequently asked questions. If those donβt help, you can always ask the humans behind Greenkeeper.
Your Greenkeeper Bot π΄
Branch | Build failing π¨ |
---|---|
Dependency | sinon |
Current Version | 2.3.6 |
Type | devDependency |
This version is covered by your current version range and after updating it in your project the build failed.
As sinon is βonlyβ a devDependency of this project it might not break production or downstream projects, but βonlyβ your build or test tools β preventing new deploys or publishes.
I recommend you give this issue a high priority. Iβm sure you can resolve this πͺ
The new version differs by 13 commits.
9365d49
Update docs/changelog.md and set new release id in docs/_config.yml
7399b99
Add release documentation for v2.3.7
21b4588
2.3.7
169ac9d
Update Changelog.txt and AUTHORS for new release
1108117
Merge pull request #1480 from fearphage/lint-staged
9ecd56a
moved from dependencies to dev dependencies [ci skip]
0a85f21
improved linting for staged files [ci skip]
079925b
Merge pull request #1478 from takasmiley/issues/#1476
40efa6f
Cleanup a few test codes
1ff2b9b
Add spy.getCall tests with combination of withArgs arguments
c280916
Fix #1476: spy.withArgs(args...).firstCall is broken
8ad2ed7
Merge pull request #1477 from mroderick/add-documentation-for-getcalls
fea23b0
Add missing documentation for spy.getCalls()
See the full diff
There is a collection of frequently asked questions and of course you may always ask my humans.
Your Greenkeeper Bot π΄
Branch | Build failing π¨ |
---|---|
Dependency | rimraf |
Current Version | 2.6.1 |
Type | dependency |
This version is covered by your current version range and after updating it in your project the build failed.
rimraf is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you itβs very likely also breaking them.
I recommend you give this issue a very high priority. Iβm sure you can resolve this πͺ
There is a collection of frequently asked questions and of course you may always ask my humans.
Your Greenkeeper Bot π΄
Branch | Build failing π¨ |
---|---|
Dependency | react-dom |
Current Version | 15.6.1 |
Type | devDependency |
This version is covered by your current version range and after updating it in your project the build failed.
As react-dom is βonlyβ a devDependency of this project it might not break production or downstream projects, but βonlyβ your build or test tools β preventing new deploys or publishes.
I recommend you give this issue a high priority. Iβm sure you can resolve this πͺ
There is a collection of frequently asked questions and of course you may always ask my humans.
Your Greenkeeper Bot π΄
Hi!
Thanks for your plugin! I know, it's not production-ready, but I'm interested in such functionality and I checked if I'll be able to use it with popular RSK
It seems that there is an error in gemini-babel or gemini-react:
$ ./node_modules/.bin/gemini update
Critical error:
SyntaxError: Unexpected token import
/Users/savin/PhpstormProjects/react-starter-kit/tools/webpack.config.js:10
import path from 'path';
^^^^^^
You can easily reproduce it using this code
Hi there! Thanks for the great plugin!
I have performance issue. My screenshots tests take a very long time. I started digging it and I found out the reason. The plugin has middleware that renders HTML pages for test. It has a call webpackStats.toJson()
that takes in my case around 1s.
We need only assetsByChunkName
information in stats for render html. webpackStats.toJson(options)
provide passing settings: docs. With this paramswebpackStats.toJson({ chunk: false, modules: false })
the call takes no time.
I've created PR with this changes
Branch | Build failing π¨ |
---|---|
Dependency | mocha |
Current Version | 3.4.2 |
Type | devDependency |
This version is covered by your current version range and after updating it in your project the build failed.
As mocha is βonlyβ a devDependency of this project it might not break production or downstream projects, but βonlyβ your build or test tools β preventing new deploys or publishes.
I recommend you give this issue a high priority. Iβm sure you can resolve this πͺ
--forbid-only
and --forbid-pending
flags. Use these in CI or hooks to ensure tests aren't accidentally being skipped! (@charlierudolph)--napi-modules
flag (@jupp0r)The new version differs by 34 commits.
82d879f
Release v3.5.0
bf687ce
update mocha.js for v3.5.0
ec73c9a
update date for release of v3.5.0 in CHANGELOG [ci skip]
1ba2cfc
update CHANGELOG.md for v3.5.0 [ci skip]
065e14e
remove custom install script from travis (no longer needed)
4e87046
update karma-sauce-launcher URL for npm@5
6886ccc
increase timeout for slow-grepping test
2408d90
Make dependencies use older version of readable-stream to work around incompatibilities introduced by 2.3.0 on June 19th
68a1466
Try not clearing the env for debug in the integration test and see if that fixes Node 0.10 on AppVeyor; if need be, some other fix/workaround can be applied to handle whatever was up with debug without causing this issue
958fbb4
Update new tests to work in browser per test hierarchy reorganization
1df7c94
Merge pull request #2704 from seppevs/increase_test_coverage_of_mocha_js
1f270cd
Stop timing out (#2889)
27c7496
upgrade to [email protected]; closes #2859 (#2860)
50fc47d
fix CI; closes #2867 (#2868)
1b1377c
Add test for ignoreLeaks and fix descriptions
There are 34 commits in total.
See the full diff
There is a collection of frequently asked questions and of course you may always ask my humans.
Your Greenkeeper Bot π΄
Branch | Build failing π¨ |
---|---|
Dependency | eslint-config-gemini-testing |
Current Version | 2.4.0 |
Type | devDependency |
This version is covered by your current version range and after updating it in your project the build failed.
As eslint-config-gemini-testing is βonlyβ a devDependency of this project it might not break production or downstream projects, but βonlyβ your build or test tools β preventing new deploys or publishes.
I recommend you give this issue a high priority. Iβm sure you can resolve this πͺ
The new version differs by 4 commits.
2189eac
2.4.1
07fa45e
Merge pull request #14 from gemini-testing/fix/no-multiple-empty-lines
5cfac7a
fix: 'no-multiple-empty-lines' rule
ee239bf
chore: add 'npm' and 'git' ignore files
See the full diff
There is a collection of frequently asked questions and of course you may always ask my humans.
Your Greenkeeper Bot π΄
Hello!
Trying your plugin and faced trouble. My test file looks like:
import React from 'react';
geminiReact.suite('my react test', suite => {
suite.render(<div>Hello world</div>).capture('initial');
});
And problem after running update:
node_modules/.bin/gemini update
(node:60437) DeprecationWarning: os.tmpDir() is deprecated. Use os.tmpdir() instead.
β my react test initial [chrome]
Could not find element with css selector specified in setCaptureElements: [data-gemini-react] > *
Total: 1 Passed: 0 Failed: 1 Skipped: 0 Retries: 0
Browser opened blank page and closed it immediately.
I assume, that component not mounted at all :(
What can be wrong? Webpack config or missed babel-presets?
Right now, users need to know the url of the example, they want to view.
Will be nice to have some sort of index page, served at /
.
Hi, @SevInf, and thanx for this plugin.
I'm trying to integrate gemini
with one ui library based on React
and stuck with some issues. One I corrected in this PR. Another question is about styles requirement inside imported components in gemini tests. How to deal with this?
I created example repo for this case: https://github.com/teryaew/gemini-react-example
Remove babel-plugin-transform-require-ignore
line in .babelrc
and Babel will crash testing:
Critical error:
SyntaxError: /Users/teryaew/Projects/common/gemini-react-example/src/button/button.css: Unexpected token (1:0)
> 1 | .button {
| ^
Also there is issue with importing React
for every gemini test or using babel-plugin-react-require
. You can reproduce it in repo too. Maybe there some solution other than that?
P.S.: My node -v
is v6.5.0
.
gemini
v4.11.0 release is breaking this plugin:
Critical error:
ReferenceError: geminiReact is not defined
at Object.<anonymous> (/Users/teryaew/Projects/common/gemini-react-example/gemini/button.gemini.js:3:1)
at Module._compile (module.js:556:32)
at loader (/Users/teryaew/Projects/common/gemini-react-example/node_modules/babel-register/lib/node.js:146:5)
at Object.require.extensions.(anonymous function) [as .js] (/Users/teryaew/Projects/common/gemini-react-example/node_modules/babel-register/lib/node.js:156:7)
at Module.load (module.js:473:32)
at tryModuleLoad (module.js:432:12)
at Function.Module._load (module.js:424:3)
at Module.require (module.js:483:17)
at require (internal/module.js:20:19)
at Object.exports.requireWithNoCache (/Users/teryaew/Projects/common/gemini-react-example/node_modules/gemini/lib/utils.js:5:12)
at sets.forEachFile (/Users/teryaew/Projects/common/gemini-react-example/node_modules/gemini/lib/test-reader/index.js:22:15)
at _getFiles.forEach (/Users/teryaew/Projects/common/gemini-react-example/node_modules/gemini/lib/test-reader/set-collection.js:65:44)
at Array.forEach (native)
at SetCollection.forEachFile (/Users/teryaew/Projects/common/gemini-react-example/node_modules/gemini/lib/test-reader/set-collection.js:65:26)
at loadSuites (/Users/teryaew/Projects/common/gemini-react-example/node_modules/gemini/lib/test-reader/index.js:18:10)
at q.all.spread (/Users/teryaew/Projects/common/gemini-react-example/node_modules/gemini/lib/test-reader/index.js:49:16)
ERROR: "gemini:test" exited with 1.
The project has a warning in README:
Right now plugin is pretty much at the proof-of-concept stage, do not use in production.
Could you please add in README a list of things to do (or create issues with some tag) before release 1.0?
It's a feature request.
It would be great to have possibility to provide a wrapper component for all components in all tests.
Consider this example. I need App
with context
around all components that use css modules - literally all components that I want to test.
I can help with implementation, if you think the idea is ok.
Branch | Build failing π¨ |
---|---|
Dependency | debug |
Current Version | 3.1.0 |
Type | dependency |
This version is covered by your current version range and after updating it in your project the build failed.
debug is a direct dependency of this project, and it is very likely causing it to break. If other packages depend on yours, this update is probably also breaking those in turn.
A long-awaited release to debug
is available now: 3.2.0
.
chrome.storage
(or make the storage backend pluggable): 71d2aa7supports-color@5
: 285dfe1enable()
(#517): ab5083fHuge thanks to @DanielRuf, @EirikBirkeland, @KyleStay, @Qix-, @abenhamdine, @alexey-pelykh, @DiegoRBaquero, @febbraro, @kwolfy, and @TooTallNate for their help!
The new version differs by 25 commits.
dec4b15
3.2.0
3ca2331
clean up builds
9f4f8f5
remove needless command aliases in makefile
623c08e
no longer checking for BROWSER=1
57cde56
fix tests
62822f1
clean up makefile
833b6f8
fix tests
ba8a424
move to XO (closes #397)
2d2509e
add .editorconfig
853853f
bump vulnerable packages
7e1d5d9
add yarn-error.log to .gitignore
e43e5fe
add instance extends feature (#524)
207a6a2
Fix nwjs support (#569)
05b0ceb
add Node.js 10, remove Node.js 4 (#583)
02b9ea9
Add TVMLKit support (#579)
There are 25 commits in total.
See the full diff
There is a collection of frequently asked questions. If those donβt help, you can always ask the humans behind Greenkeeper.
Your Greenkeeper Bot π΄
Branch | Build failing π¨ |
---|---|
Dependency | debug |
Current Version | 2.3.3 |
Type | dependency |
This version is covered by your current version range and after updating it in your project the build failed.
As debug is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you itβs very likely also breaking them.
I recommend you give this issue a very high priority. Iβm sure you can resolve this πͺ
The new version differs by 7 commits .
b82d4e6
release 2.4.0
41002f1
Update bower.json (#342)
e58d54b
Node: configurable util.inspect()
options (#327)
00f3046
Node: %O
(big O) pretty-prints the object (#322)
bd9faa1
allow colours in workers (#335)
501521f
Use same color for same namespace. (#338)
e2a1955
Revert "handle regex special characters"
See the full diff.
There is a collection of frequently asked questions and of course you may always ask my humans.
Your Greenkeeper Bot π΄
A declarative, efficient, and flexible JavaScript library for building user interfaces.
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. πππ
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google β€οΈ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.