108 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			108 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
# PolyGerrit
 | 
						|
 | 
						|
## Installing [Node.js](https://nodejs.org/en/download/)
 | 
						|
 | 
						|
```sh
 | 
						|
# Debian/Ubuntu
 | 
						|
sudo apt-get install nodejs-legacy
 | 
						|
 | 
						|
# OS X with Homebrew
 | 
						|
brew install node
 | 
						|
```
 | 
						|
 | 
						|
All other platforms: [download from
 | 
						|
nodejs.org](https://nodejs.org/en/download/).
 | 
						|
 | 
						|
## Optional: installing [go](https://golang.org/)
 | 
						|
 | 
						|
This is only required for running the ```run-server.sh``` script for testing. See below.
 | 
						|
 | 
						|
```sh
 | 
						|
# Debian/Ubuntu
 | 
						|
sudo apt-get install golang
 | 
						|
 | 
						|
# OS X with Homebrew
 | 
						|
brew install go
 | 
						|
```
 | 
						|
 | 
						|
All other platforms: [download from golang.org](https//golang.org/)
 | 
						|
 | 
						|
# Add [go] to your path
 | 
						|
 | 
						|
```
 | 
						|
PATH=$PATH:/usr/local/go/bin
 | 
						|
```
 | 
						|
 | 
						|
## Local UI, Production Data
 | 
						|
 | 
						|
To test the local UI against gerrit-review.googlesource.com:
 | 
						|
 | 
						|
```sh
 | 
						|
./polygerrit-ui/run-server.sh
 | 
						|
```
 | 
						|
 | 
						|
Then visit http://localhost:8081
 | 
						|
 | 
						|
## Local UI, Test Data
 | 
						|
 | 
						|
One-time setup:
 | 
						|
 | 
						|
1. [Install Buck](https://gerrit-review.googlesource.com/Documentation/dev-buck.html#_installation)
 | 
						|
   for building Gerrit.
 | 
						|
2. [Build Gerrit](https://gerrit-review.googlesource.com/Documentation/dev-buck.html#_gerrit_development_war_file)
 | 
						|
   and set up a local test site. Docs
 | 
						|
   [here](https://gerrit-review.googlesource.com/Documentation/install-quick.html) and
 | 
						|
   [here](https://gerrit-review.googlesource.com/Documentation/dev-readme.html#init).
 | 
						|
 | 
						|
When your project is set up and works using the classic UI, run a test server
 | 
						|
that serves PolyGerrit:
 | 
						|
 | 
						|
```sh
 | 
						|
buck build polygerrit && \
 | 
						|
java -jar buck-out/gen/polygerrit/polygerrit.war daemon --polygerrit-dev \
 | 
						|
-d ../gerrit_testsite --console-log --show-stack-trace
 | 
						|
```
 | 
						|
 | 
						|
## Running Tests
 | 
						|
 | 
						|
One-time setup:
 | 
						|
 | 
						|
```sh
 | 
						|
# Debian/Ubuntu
 | 
						|
sudo apt-get install npm
 | 
						|
 | 
						|
# OS X with Homebrew
 | 
						|
brew install npm
 | 
						|
 | 
						|
# All platforms (including those above)
 | 
						|
sudo npm install -g web-component-tester
 | 
						|
```
 | 
						|
 | 
						|
Run all web tests:
 | 
						|
 | 
						|
```sh
 | 
						|
buck test --no-results-cache --include web
 | 
						|
```
 | 
						|
 | 
						|
The `--no-results-cache` flag prevents flaky test failures from being
 | 
						|
cached.
 | 
						|
 | 
						|
If you need to pass additional arguments to `wct`:
 | 
						|
 | 
						|
```sh
 | 
						|
WCT_ARGS='-p --some-flag="foo bar"' buck test --no-results-cache --include web
 | 
						|
```
 | 
						|
 | 
						|
For interactively working on a single test file, do the following:
 | 
						|
 | 
						|
```sh
 | 
						|
./polygerrit-ui/run-server.sh
 | 
						|
```
 | 
						|
 | 
						|
Then visit http://localhost:8081/elements/foo/bar_test.html
 | 
						|
 | 
						|
## Style guide
 | 
						|
 | 
						|
We follow the [Google JavaScript Style Guide](https://google.github.io/styleguide/javascriptguide.xml)
 | 
						|
with a few exceptions. When in doubt, remain consistent with the code around you.
 |