-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
cd215fd
commit c72fa8f
Showing
7 changed files
with
310 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
name: Bug Report | ||
description: File a bug report | ||
title: "[Bug]: " | ||
labels: ["bug"] | ||
assignees: [] | ||
body: | ||
- type: markdown | ||
attributes: | ||
value: | | ||
Thanks for taking the time to fill out this bug report! | ||
- type: textarea | ||
id: what-happened | ||
attributes: | ||
label: What happened? | ||
description: Also tell us, what did you expect to happen? | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: reproduction | ||
attributes: | ||
label: How can we reproduce the bug? | ||
description: If you can make the bug happen again, please share the steps involved. If possible please also include a screenshot or a screen recording to help us better understand and resolve the issue. | ||
validations: | ||
required: false | ||
- type: dropdown | ||
id: browsers | ||
attributes: | ||
label: What browsers are you seeing the problem on? | ||
multiple: true | ||
options: | ||
- Firefox | ||
- Chrome | ||
- Safari | ||
- Microsoft Edge |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
name: Feature request | ||
description: File a feature request | ||
title: "[Feature]: " | ||
labels: ["enhancement"] | ||
assignees: [] | ||
body: | ||
- type: markdown | ||
attributes: | ||
value: | | ||
Have an idea for a feature or change? | ||
- type: textarea | ||
id: description | ||
attributes: | ||
label: What's the feature? | ||
description: Describe the feature, who it would help, and link to any examples from other apps. | ||
validations: | ||
required: true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
name: CI | ||
on: | ||
pull_request: | ||
push: | ||
branches: | ||
- main | ||
|
||
jobs: | ||
prettier: | ||
name: Prettier | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v2 | ||
with: | ||
ref: ${{ github.head_ref }} | ||
- uses: actions/setup-node@v1 | ||
with: | ||
node-version: "18.x" | ||
- run: npm ci | ||
- run: npm run fmt | ||
- name: Commit changes | ||
uses: stefanzweifel/[email protected] | ||
with: | ||
commit_message: Apply formatting changes | ||
branch: ${{ github.head_ref }} | ||
playwright-tests: | ||
name: Playwright tests | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: actions/setup-node@v3 | ||
with: | ||
node-version: "18.x" | ||
cache: "npm" | ||
- uses: actions/cache@v3 | ||
id: playwright-cache | ||
with: | ||
path: | | ||
~/.cache/ms-playwright | ||
key: ${{ runner.os }}-playwright-${{ hashFiles('**/package-lock.json') }} | ||
- name: Install dependencies | ||
run: npm ci | ||
- name: Install dependencies | ||
run: | | ||
npx playwright install-deps | ||
npx playwright install | ||
if: steps.playwright-cache.outputs.cache-hit != 'true' | ||
- name: Run tests | ||
run: | | ||
npx playwright test |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. | ||
|
||
# dependencies | ||
/node_modules | ||
/.pnp | ||
.pnp.js | ||
.yarn/install-state.gz | ||
/.unlighthouse | ||
|
||
# testing | ||
/coverage | ||
|
||
# next.js | ||
/.next/ | ||
/out/ | ||
|
||
# production | ||
/build | ||
|
||
# misc | ||
.DS_Store | ||
*.pem | ||
|
||
# debug | ||
npm-debug.log* | ||
yarn-debug.log* | ||
yarn-error.log* | ||
|
||
# local env files | ||
.env*.local | ||
|
||
# vercel | ||
.vercel | ||
|
||
# typescript | ||
*.tsbuildinfo | ||
next-env.d.ts | ||
/test-results/ | ||
/playwright-report/ | ||
/blob-report/ | ||
/playwright/.cache/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
# Contributing Guide | ||
|
||
Thank you for considering contributing to this project! Here are some guidelines to help you get started. | ||
|
||
## Getting Started | ||
|
||
To contribute to this project, follow these steps: | ||
|
||
1. Fork the repository on GitHub. | ||
2. Clone your forked repository to your local machine. | ||
3. Make your changes locally. | ||
4. Test your changes to ensure they work as expected. | ||
5. Commit your changes with descriptive commit messages. We like [Semantic Commit Messages](https://gist.github.com/joshbuchea/6f47e86d2510bce28f8e7f42ae84c716). | ||
6. Push your changes to your fork on GitHub. | ||
7. Create a pull request to the main repository. | ||
|
||
## Code Style | ||
|
||
Please follow the existing code style and conventions used in the project. | ||
|
||
## Testing | ||
|
||
This repository uses playwright tests, which can be found in [/playwright-tests](./playwright-tests/). Ensure that your changes include appropriate tests and that existing tests pass. | ||
|
||
## Submitting Issues | ||
|
||
If you encounter any issues or have feature requests, please submit them through GitHub issues. Include as much detail as possible to help us understand and address the problem efficiently. | ||
|
||
Thank you for your interest in contributing to this project! Your contributions are greatly appreciated. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
<!-- markdownlint-disable MD014 --> | ||
<!-- markdownlint-disable MD033 --> | ||
<!-- markdownlint-disable MD041 --> | ||
<!-- markdownlint-disable MD029 --> | ||
|
||
<div align="center"> | ||
|
||
<h1 style="font-size: 2.5rem; font-weight: bold;">Project Title</h1> | ||
|
||
<p> | ||
<strong>This is a basic project template for new Build DAO projects</strong> | ||
</p> | ||
|
||
</div> | ||
|
||
<details> | ||
<summary>Table of Contents</summary> | ||
|
||
- [Getting Started](#getting-started) | ||
- [Installing dependencies](#installing-dependencies) | ||
- [Running the app](#running-the-app) | ||
- [Building for production](#building-for-production) | ||
- [Running tests](#running-tests) | ||
- [Contributing](#contributing) | ||
|
||
</details> | ||
|
||
## Getting Started | ||
|
||
### Installing dependencies | ||
|
||
```bash | ||
npm install | ||
``` | ||
|
||
### Running the app | ||
|
||
First, run the development server: | ||
|
||
```bash | ||
npm run dev | ||
``` | ||
|
||
Open [http://localhost:3000](http://localhost:3000) in your browser to see the result. | ||
|
||
### Building for production | ||
|
||
```bash | ||
npm run build | ||
``` | ||
|
||
### Running tests | ||
|
||
```bash | ||
npm run test | ||
``` | ||
|
||
See the full [testing guide](./playwright-tests/README.md). | ||
|
||
## Contributing | ||
|
||
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**. | ||
|
||
If you're interested in contributing to this project, please read the [contribution guide](./CONTRIBUTING). | ||
|
||
<div align="right"> | ||
<a href="https://nearbuilders.org" target="_blank"> | ||
<img | ||
src="https://builders.mypinata.cloud/ipfs/QmWt1Nm47rypXFEamgeuadkvZendaUvAkcgJ3vtYf1rBFj" | ||
alt="Near Builders" | ||
height="40" | ||
/> | ||
</a> | ||
</div> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
# Testing Guide | ||
|
||
This project uses [playwright](https://playwright.dev/) for end-to-end testing. Please become familiar with this documentation. | ||
|
||
## Writing tests | ||
|
||
Tests should be written for each change or addition to the codebase. | ||
If a new feature is introduced, tests should be written to validate its functionality. If a bug is fixed, tests should be written to prevent regression. Writing tests not only safeguards against future breaks by other developers but also accelerates development by minimizing manual coding and browser interactions. | ||
|
||
When writing tests, remember to: | ||
|
||
- Test user-visible behavior | ||
- Make tests as isolated as possible | ||
- Avoid testing third-party dependencies | ||
|
||
> **[LEARN BEST PRACTICES](https://playwright.dev/docs/best-practices)** | ||
See the [cookbook](#cookbook) for help in covering scenerios. It is possible to [generate tests](https://playwright.dev/docs/codegen) via the [VS Code Extension](https://marketplace.visualstudio.com/items?itemName=ms-playwright.playwright). | ||
|
||
## Running tests | ||
|
||
To run the tests, you may do so through the command line: | ||
|
||
```cmd | ||
npm run test | ||
``` | ||
|
||
With playwright's interactive testing UI: | ||
|
||
```cmd | ||
npm run test:ui | ||
``` | ||
|
||
Or through VS Code, see [Getting started - VS Code](https://playwright.dev/docs/getting-started-vscode). | ||
|
||
## Recording video | ||
|
||
You may automatically record video with your tests by setting | ||
|
||
``` | ||
use: { | ||
video: "on" | ||
} | ||
``` | ||
|
||
in the [playwright.config.js](../playwright.config.js). After running tests, you will find the output as a `.webm` in `./test-results`. Then, [convert to MP4](https://video.online-convert.com/convert/webm-to-mp4) and share. | ||
|
||
It is encouraged to include video in pull requests in order to demonstrate functionality and prove thorough testing. | ||
|
||
## Cookbook | ||
|
||
### Mocking fetch requests | ||
|
||
If you are testing a component that makes fetch requests, you can mock them using the [fetch](https://playwright.dev/docs/api/class-fetch) API. | ||
|
||
```javascript | ||
await page.route("**/api/hello", (route) => { | ||
return route.fulfill({ | ||
status: 200, | ||
body: "Hello, World!", | ||
}); | ||
}); | ||
``` | ||
|
||
Currently, we add this to the `beforeEach` hook in the test file. This way we do not have to mock the requests for every test. |