From f41428ac316f43b164366c357459af3014558e95 Mon Sep 17 00:00:00 2001 From: atthaboons Date: Fri, 21 Aug 2020 16:27:48 +0700 Subject: [PATCH 1/4] Change package name to generator-robotframework --- README.md | 27 ++++++++++++++++++++++++--- package-lock.json | 4 ++-- package.json | 10 +++++----- 3 files changed, 31 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 33c8704..3e1a708 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,31 @@ [![Gitpod ready-to-code](https://img.shields.io/badge/Gitpod-ready--to--code-blue?logo=gitpod)](https://gitpod.io/#https://github.com/qahive/generator-robotframework) -# Yeoman Generator for Robot Framework +# The Robot Fraemwork Test Project Generator -## Local setup +## Usage + +Install `yo` and `generator-robotframework`: + +```text +npm install -g yo generator-robotframework +``` + +Generate test project: + + yo robotframework + + +## Supported Configurations + +**General** +* Test library: `Selenium`, `Puppeteer`, `Appium` (Default `Puppeteer`) +* Page object pattern: `Yes`, `No` (Default `Yes`) +* ATDD/BDD style: `Yes`, `No` (Default `No`) + + +## Manual Setup Run following command npm install -g . cd tmp - yo robotframework-puppeteer + yo robotframework \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index b747f0f..9516e05 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { - "name": "generator-robotframework-puppeteer", - "version": "0.1.0", + "name": "generator-robotframework", + "version": "0.1.2", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 99f9556..dcc6c49 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { - "name": "generator-robotframework-puppeteer", + "name": "generator-robotframework", "version": "0.1.2", - "description": "Yeoman generator to create a robotframework puppeteer project", + "description": "Yeoman generator to create a robotframework test project", "files": [ "generators" ], @@ -11,15 +11,15 @@ "puppeteer", "robotframework-puppeteer" ], - "homepage": "https://github.com/qahive/generator-robotframework-puppeteer", + "homepage": "https://github.com/qahive/generator-robotframework", "author": "Atthaboon Sanurt ", - "contributors":[ + "contributors": [ "Atthaboon Sanurt ", "Penploy Sribumrungwong " ], "repository": { "type": "git", - "url": "git://github.com/qahive/generator-robotframework-puppeteer.git" + "url": "git://github.com/qahive/generator-robotframework.git" }, "dependencies": { "chalk": "^4.1.0", From 7efe4ff0e678468ad7ce3b8c8c833900424fc0b2 Mon Sep 17 00:00:00 2001 From: atthaboons Date: Fri, 21 Aug 2020 16:39:35 +0700 Subject: [PATCH 2/4] Update package name --- README.md | 8 ++--- generators/app/index.js | 65 +++++++++++++++++++++++------------------ 2 files changed, 40 insertions(+), 33 deletions(-) diff --git a/README.md b/README.md index 3e1a708..add665e 100644 --- a/README.md +++ b/README.md @@ -18,9 +18,9 @@ Generate test project: ## Supported Configurations **General** -* Test library: `Selenium`, `Puppeteer`, `Appium` (Default `Puppeteer`) -* Page object pattern: `Yes`, `No` (Default `Yes`) -* ATDD/BDD style: `Yes`, `No` (Default `No`) +* Test library: `Puppeteer`, `Selenium`, `Appium` (Default `Puppeteer`) +* Page object pattern: `true`, `false` (Default `true`) +* ATDD/BDD style: `true`, `false` (Default `false`) ## Manual Setup @@ -28,4 +28,4 @@ Run following command npm install -g . cd tmp - yo robotframework \ No newline at end of file + yo robotframework diff --git a/generators/app/index.js b/generators/app/index.js index 39b672f..a68fccf 100644 --- a/generators/app/index.js +++ b/generators/app/index.js @@ -14,35 +14,42 @@ module.exports = class extends Generator { "I'll walk you through the installation." )); - return this.prompt([{ - type: "input", - name: "isPageObject", - message: "Would you like to use Page object pattern?", - default: true - }, { - type: "input", - name: "isAtdd", - message: "Would you like to use ATDD/BDD style?", - default: false - }/*, { - type: "input", - name: "isPdf", - message: "Would you like to include PDF reader?", - default: true - }, { - type: "input", - name: "zxing", - message: "Would you like to include QRCode reader?", - default: true - }, { - type: "input", - name: "percy", - message: "Would you like to include Visual Testing?", - default: true - } */ ]).then(answers => { - this.args = answers; - this.config.set(this.args); - }); + return this.prompt([ + { + type: "input", + name: "testLibrary", + message: "Please select test library (Puppeteer)", + default: 'Puppeteer' + }, + { + type: "input", + name: "isPageObject", + message: "Would you like to use Page object pattern?", + default: true + }, { + type: "input", + name: "isAtdd", + message: "Would you like to use ATDD/BDD style?", + default: false + }/*, { + type: "input", + name: "isPdf", + message: "Would you like to include PDF reader?", + default: true + }, { + type: "input", + name: "zxing", + message: "Would you like to include QRCode reader?", + default: true + }, { + type: "input", + name: "percy", + message: "Would you like to include Visual Testing?", + default: true + } */ ]).then(answers => { + this.args = answers; + this.config.set(this.args); + }); } writing() { From 86e46f00b993019195912598115dcda3d9247f7e Mon Sep 17 00:00:00 2001 From: atthaboons Date: Fri, 21 Aug 2020 16:54:49 +0700 Subject: [PATCH 3/4] Update default option --- README.md | 4 ++-- generators/app/index.js | 21 +++++++++++++++------ 2 files changed, 17 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index add665e..a871981 100644 --- a/README.md +++ b/README.md @@ -19,8 +19,8 @@ Generate test project: **General** * Test library: `Puppeteer`, `Selenium`, `Appium` (Default `Puppeteer`) -* Page object pattern: `true`, `false` (Default `true`) -* ATDD/BDD style: `true`, `false` (Default `false`) +* Page object pattern: `Yes`, `No` (Default `Yes`) +* ATDD/BDD style: `Yes`, `No` (Default `No`) ## Manual Setup diff --git a/generators/app/index.js b/generators/app/index.js index a68fccf..e6056ac 100644 --- a/generators/app/index.js +++ b/generators/app/index.js @@ -18,19 +18,28 @@ module.exports = class extends Generator { { type: "input", name: "testLibrary", - message: "Please select test library (Puppeteer)", - default: 'Puppeteer' + message: "Please select test library. (Puppeteer)", + default: 'Puppeteer', + validate: function (input) { + return ['puppeteer'].includes(input.toLowerCase()); + } }, { type: "input", name: "isPageObject", - message: "Would you like to use Page object pattern?", - default: true + message: "Would you like to use Page object pattern? (Yes/No)", + default: 'Yes', + validate: function (input) { + return ['yes', 'no'].includes(input.toLowerCase()); + } }, { type: "input", name: "isAtdd", - message: "Would you like to use ATDD/BDD style?", - default: false + message: "Would you like to use ATDD/BDD style? (Yes/No)", + default: 'No', + validate: function (input) { + return ['yes', 'no'].includes(input.toLowerCase()); + } }/*, { type: "input", name: "isPdf", From 0a3ea8275cc3b17eb4a313324a984b2911039506 Mon Sep 17 00:00:00 2001 From: atthaboons Date: Fri, 21 Aug 2020 16:57:52 +0700 Subject: [PATCH 4/4] Update README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index a871981..60dd634 100644 --- a/README.md +++ b/README.md @@ -18,10 +18,11 @@ Generate test project: ## Supported Configurations **General** -* Test library: `Puppeteer`, `Selenium`, `Appium` (Default `Puppeteer`) +* Test library: `Puppeteer` (Default `Puppeteer`) * Page object pattern: `Yes`, `No` (Default `Yes`) * ATDD/BDD style: `Yes`, `No` (Default `No`) +FYI: Test library: `Selenium` and `Appium` will support soon. ## Manual Setup Run following command