mirror of
https://github.com/eugene-serb/wavelovers.git
synced 2023-09-09 23:41:16 +03:00
commit
3b6e8422f9
@ -2,4 +2,3 @@
|
||||
last 2 versions
|
||||
not dead
|
||||
not ie 11
|
||||
|
||||
|
11
.eslintrc.js
11
.eslintrc.js
@ -15,4 +15,15 @@ module.exports = {
|
||||
'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
|
||||
'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
|
||||
},
|
||||
overrides: [
|
||||
{
|
||||
files: [
|
||||
'**/__tests__/*.{j,t}s?(x)',
|
||||
'**/tests/unit/**/*.spec.{j,t}s?(x)',
|
||||
],
|
||||
env: {
|
||||
jest: true,
|
||||
},
|
||||
},
|
||||
],
|
||||
};
|
||||
|
@ -4,13 +4,14 @@ Wavelovers links: **[[rep](https://github.com/eugene-serb/wavelovers/), [site](h
|
||||
This is Wavelovers, a gamepad vibration test tool that can also turn a gamepad into a vibrating massager. It has 16 free vibration patterns to play with, a pattern editor, and a manual mode.
|
||||
|
||||
Tech Stack:
|
||||
***Vue.js***, ***Vuex***, ***Vue Router***, ***Typescript***, ***Javascript***, ***HTML***, ***CSS***, ***SCSS***, ***ESLint***, ***Babel***.
|
||||
***Vue.js***, ***Vuex***, ***Vue Router***, ***Typescript***, ***Javascript***, ***HTML***, ***CSS***, ***SCSS***, ***Babel***, ***ESLint***, ***Jest***.
|
||||
|
||||
Commands:<br />
|
||||
* npm install – Project setup.<br />
|
||||
* npm run serve – Compiles and hot-reloads for development.<br />
|
||||
* npm run build – Compiles and minifies for production.<br />
|
||||
* npm run lint – Lints and fixes files.<br />
|
||||
* npm run test:unit – Run unit test.<br />
|
||||
|
||||
Catalogs structure:<br />
|
||||
***/docs/*** – production build. <br />
|
||||
|
@ -4,13 +4,14 @@ Wavelovers links: **[[rep](https://github.com/eugene-serb/wavelovers/), [site](h
|
||||
This is Wavelovers, a gamepad vibration test tool that can also turn a gamepad into a vibrating massager. It has 16 free vibration patterns to play with, a pattern editor, and a manual mode.
|
||||
|
||||
Tech Stack:
|
||||
***Vue.js***, ***Vuex***, ***Vue Router***, ***Typescript***, ***Javascript***, ***HTML***, ***CSS***, ***SCSS***, ***ESLint***, ***Babel***.
|
||||
***Vue.js***, ***Vuex***, ***Vue Router***, ***Typescript***, ***Javascript***, ***HTML***, ***CSS***, ***SCSS***, ***Babel***, ***ESLint***, ***Jest***.
|
||||
|
||||
Commands:<br />
|
||||
* npm install – Project setup.<br />
|
||||
* npm run serve – Compiles and hot-reloads for development.<br />
|
||||
* npm run build – Compiles and minifies for production.<br />
|
||||
* npm run lint – Lints and fixes files.<br />
|
||||
* npm run test:unit – Run unit test.<br />
|
||||
|
||||
Catalogs structure:<br />
|
||||
***/docs/*** – production build. <br />
|
||||
|
3
jest.config.js
Normal file
3
jest.config.js
Normal file
@ -0,0 +1,3 @@
|
||||
module.exports = {
|
||||
preset: '@vue/cli-plugin-unit-jest/presets/typescript-and-babel',
|
||||
};
|
14025
package-lock.json
generated
14025
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
15
package.json
15
package.json
@ -4,10 +4,11 @@
|
||||
"keywords": [
|
||||
"wavelovers",
|
||||
"gamepad-vibrator",
|
||||
"gamepad-test-tool",
|
||||
"gamepad-vibration-test-tool"
|
||||
"gamepad-vibration-test-tool",
|
||||
"gamepad-tester",
|
||||
"gamepad-test-tool"
|
||||
],
|
||||
"version": "1.3.0",
|
||||
"version": "1.3.1",
|
||||
"license": "GNU GPL v3",
|
||||
"homepage": "https://wavelovers.ru/",
|
||||
"author": {
|
||||
@ -26,6 +27,7 @@
|
||||
"scripts": {
|
||||
"serve": "vue-cli-service serve",
|
||||
"build": "vue-cli-service build",
|
||||
"test:unit": "vue-cli-service test:unit",
|
||||
"lint": "vue-cli-service lint"
|
||||
},
|
||||
"dependencies": {
|
||||
@ -37,19 +39,26 @@
|
||||
"vuex": "^4.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/jest": "^27.0.1",
|
||||
"@typescript-eslint/eslint-plugin": "^5.4.0",
|
||||
"@typescript-eslint/parser": "^5.4.0",
|
||||
"@vue/cli-plugin-babel": "~5.0.0",
|
||||
"@vue/cli-plugin-eslint": "~5.0.0",
|
||||
"@vue/cli-plugin-router": "~5.0.0",
|
||||
"@vue/cli-plugin-typescript": "~5.0.0",
|
||||
"@vue/cli-plugin-unit-jest": "~5.0.0",
|
||||
"@vue/cli-plugin-vuex": "~5.0.0",
|
||||
"@vue/cli-service": "~5.0.0",
|
||||
"@vue/eslint-config-typescript": "^9.1.0",
|
||||
"@vue/test-utils": "^2.0.0-0",
|
||||
"@vue/vue3-jest": "^27.0.0-alpha.1",
|
||||
"babel-jest": "^27.0.6",
|
||||
"eslint": "^7.32.0",
|
||||
"eslint-plugin-vue": "^8.0.3",
|
||||
"jest": "^27.0.5",
|
||||
"sass": "^1.32.7",
|
||||
"sass-loader": "^12.0.0",
|
||||
"ts-jest": "^27.0.4",
|
||||
"typescript": "~4.5.5"
|
||||
}
|
||||
}
|
||||
|
@ -4,13 +4,14 @@ Wavelovers links: **[[rep](https://github.com/eugene-serb/wavelovers/), [site](h
|
||||
This is Wavelovers, a gamepad vibration test tool that can also turn a gamepad into a vibrating massager. It has 16 free vibration patterns to play with, a pattern editor, and a manual mode.
|
||||
|
||||
Tech Stack:
|
||||
***Vue.js***, ***Vuex***, ***Vue Router***, ***Typescript***, ***Javascript***, ***HTML***, ***CSS***, ***SCSS***, ***ESLint***, ***Babel***.
|
||||
***Vue.js***, ***Vuex***, ***Vue Router***, ***Typescript***, ***Javascript***, ***HTML***, ***CSS***, ***SCSS***, ***Babel***, ***ESLint***, ***Jest***.
|
||||
|
||||
Commands:<br />
|
||||
* npm install – Project setup.<br />
|
||||
* npm run serve – Compiles and hot-reloads for development.<br />
|
||||
* npm run build – Compiles and minifies for production.<br />
|
||||
* npm run lint – Lints and fixes files.<br />
|
||||
* npm run test:unit – Run unit test.<br />
|
||||
|
||||
Catalogs structure:<br />
|
||||
***/docs/*** – production build. <br />
|
||||
|
9
tests/unit/FooterItem.spec.ts
Normal file
9
tests/unit/FooterItem.spec.ts
Normal file
@ -0,0 +1,9 @@
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
import FooterItem from '@/components/FooterItem.vue';
|
||||
|
||||
describe('FooterItem.vue', () => {
|
||||
it('renders slots when passed', () => {
|
||||
const wrapper = shallowMount(FooterItem);
|
||||
expect(wrapper.html()).toContain('Wavelovers');
|
||||
});
|
||||
});
|
23
tests/unit/HeaderItem.spec.ts
Normal file
23
tests/unit/HeaderItem.spec.ts
Normal file
@ -0,0 +1,23 @@
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
import { createRouter, createWebHistory } from 'vue-router'
|
||||
import routes from '@/router/assets/routes'
|
||||
import HeaderItem from '@/components/HeaderItem.vue';
|
||||
|
||||
const router = createRouter({
|
||||
history: createWebHistory(),
|
||||
routes: routes,
|
||||
})
|
||||
|
||||
describe('HeaderItem.vue', () => {
|
||||
it('renders slots when passed', () => {
|
||||
const wrapper = shallowMount(
|
||||
HeaderItem,
|
||||
{
|
||||
global: {
|
||||
plugins: [router]
|
||||
}
|
||||
}
|
||||
);
|
||||
expect(wrapper.html()).toContain('Wavelovers');
|
||||
});
|
||||
});
|
17
tests/unit/MessageItem.spec.ts
Normal file
17
tests/unit/MessageItem.spec.ts
Normal file
@ -0,0 +1,17 @@
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
import MessageItem from '@/components/MessageItem.vue';
|
||||
|
||||
describe('MessageItem.vue', () => {
|
||||
it('renders slots when passed', () => {
|
||||
const msg = 'new message';
|
||||
const wrapper = shallowMount(
|
||||
MessageItem,
|
||||
{
|
||||
slots: {
|
||||
default: msg,
|
||||
},
|
||||
}
|
||||
);
|
||||
expect(wrapper.html()).toContain(msg);
|
||||
});
|
||||
});
|
@ -13,7 +13,8 @@
|
||||
"sourceMap": true,
|
||||
"baseUrl": ".",
|
||||
"types": [
|
||||
"webpack-env"
|
||||
"webpack-env",
|
||||
"jest"
|
||||
],
|
||||
"paths": {
|
||||
"@/*": [
|
||||
|
Loading…
Reference in New Issue
Block a user