Refactor board.js to Vue single file component
What does this MR do?
This MR is a refactor spun up from the jestodous work, in particular the issue #27258 (closed)
This MR includes:
- Adds a new feature flag to conditionally load the new
board_colum.vue
SFC component - Adds a new component
board_column
which is a refactor ofapp/assets/javascripts/boards/components/board.js
from HAML to SFC - Adds a new jest test for the new
board_column
component - Adds a new
ee/board_column component
that extends is CE version - Add some new props to the HAML loading the vue components to compensate for the lack of
render_if
Note
This work started in a jestodous pair programming session that included: @pslaughter @jboyson @cwoolley-gitlab @leipert and @nmezzopera it was then continued by @leipert and finalized in another pair programming session with @leipert @nmezzopera and @markrian
Pinning Tests
Here is the log of the recently ran pinning test for bfe73017 on 2020-03-27T0600Z
To run the pinning tests locally, checkout this MR's branch and run locally:
git revert --no-commit $(git log -1 --grep="Remove pinning tests for boards" --pretty=format:"%H") && ./scripts/pin_boards.sh
This script:
- Reverts the commit which removes the pinning test
- Runs the pinning test
The test oracles can be updated by:
- Start an interactive rebase and editing the
Setup pinning tests
commit - Make any changes to the
boards_pin_spec.rb
file or the pinning scripts - Run
PIN_TYPE=oracle ./scripts/pin_boards.sh
to recreate the oracle pins
Screenshots
No Visual changes
Does this MR meet the acceptance criteria?
Conformity
- [-] Changelog entry
- [-] Documentation (if required)
-
Code review guidelines -
Merge request performance guidelines -
Style guides - [-] Database guides
-
Separation of EE specific content
Availability and Testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. - [-] Tested in all supported browsers
- [-] Informed Infrastructure department of a default or new setting change, if applicable per definition of done
Security
If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:
- [-] Label as security and @ mention
@gitlab-com/gl-security/appsec
- [-] The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
- [-] Security reports checked/validated by a reviewer from the AppSec team