Git Product home page Git Product logo

generator-xl-release-plugin's People

Contributors

byaminov avatar hilic avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

jdewinne

generator-xl-release-plugin's Issues

Create E2E tests for the plugin development process

There should be tests for the whole plugin development process. They should create a new XLR plugin, add new tiles/tasks, start the XL Release server through the Gradle plugin and test if everything works as expected.

Review comments

Documentation

  • The generator does not generate a README file in the sample-plugin which would contain instructions on how to build and run the developed plugin inside XLR (there are no explicit instructions on needing to have a local xlr installation, setting gradle properties etc). The generator-xl-release-plugin README could then have a note pointing to this README or in worst case, contain the same content.
  • Usage of grgit plugin is not documented anywhere
  • Bonus points: add a dir ls of a full generated module with all the bells and whistles and comments what is what and what goes where

Generator

xl-release-plugin

  • Generated karma.conf doesn't support writing tests in ES6 (template does)
  • Running jython tests expects having jython binary on path, maybe we could give a try to something like https://github.com/rzabini/gradle-jython
  • Running gradle test does not run the karma tests
  • Replace prompts 'Generate additional extensions XMLs?' and 'Which test frameworks to use?' with a more general prompt like ''What do you plan to develop as part of this plugin?" o Tiles o Custom REST endpoints that should add the necessary testing frameworks and extension XMLs based on the response (Tiles = Karma + xl-ui-plugins.xml, Custom REST endpoints = xl-rest-endpoints.xml). Always generate Jython unittest configuration

xl-release-plugin:task

  • Subgenerator is asking for Tile namespace instead of Task prefix\namespace. Usually, that is only a single word, e.g. xlrelease, jira, sample etc.
  • Generated py script doesn't contain any sample code (template project does)
  • Generated synthetic doesn't contain any sample properties (template project does)
  • No py tests are generated for the generated py script
  • Place namespace prompt before name prompt

xl-release-plugin:tile

  • Subgenerator doesn't use the provided Tile label in the synthetic.xml
  • There is no option to generate a Tile just using the default controller
  • Generated controller structure and registration differs from the current standards present in xlr and the template - there you have only a single sample-tile.js file, controller fn is assigned to var, the controller resides in the xlrelease module and the controller name is prefixed - there is no seperate module for the tile (n.b. this is open to discussion so please start it once you are here)
  • Generated controller is not representative, e.g. it does not showcase using the XlrDefaultTileService
  • Generated karma test is not representative, e.g. it does not showcase injecting controller, scope etc into test case and mocking external service calls
  • Generated tile synthetic is not representative, e.g. it does not contain any configuration properties which would be displayed on the configuration modal and/or used in py script
  • Place namespace prompt before name prompt
  • If there's no xl-ui-plugins.xml, create it as part of this generator (not sure if this is possible because Yeoman uses an in-memory file system that commits at the end, and editing the content is still a manual operations)

Note: Testing if the generated code performs valid REST calls, that the CSS is taken into account and etc. will be tested after the generator is updated.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.