Giter VIP home page Giter VIP logo

test-plugin's Introduction

Test Plugin

This is a UI test plugin for OctoberCMS. Extract this archive to /plugins/october/test and click on Playground in the back-end area. If the backend dashboard is open already, you have to sign out and sign in again for the plugin tables to be created.

The following sections are explored, tested and demonstrated along with a list of the features used:

Test 1: People

A Person "Has One" Phone (One to one relationship)

  1. Relation Controller
  2. Record Finder
  3. Proxy Form fields
  4. Date pickers
  5. Context-based Form fields
  6. List search policies @todo

Test 2: Posts

A Post "Has Many" Comments (One to many relationship)

  1. Relation Controller
  2. Popup-based Form fields
  3. Rich Editor
  4. Dual Form Controller and List Controller
  5. HTML in comments
  6. Custom Delete workflow
  7. Repeater fields in comments popup

Test 3: Users

User "Belongs To Many" Roles (Many to many relationship)

  1. Relation Controller (Standard, Pivot data, Pivot model)
  2. Image Uploaders (Single, Multi, File, Image)
  3. Number field
  4. No click list column
  5. Custom File model
  6. Form field partial
  7. Tag List in relation mode

Test 4: Countries

A Country "Has Many" Posts "Through" a User (Has many through relationship)

  1. Checkbox list
  2. Default form field values
  3. Field dependency and filtering
  4. Repeater fields
  5. Tabs empty with no fields

Test 5: Reviews

  1. Reviews "Morph To" Plugins and Themes as Product (Polymorphic relationships)
  2. Meta "Morph To" Plugins and Themes as Product (Polymorphic relationships)
  3. Plugins and Themes "Morph Many" Reviews
  4. Plugins and Themes "Morph One" Meta
  5. Plugins should not create when Meta validation fails.

Test 6: Galleries

  1. Galleries are "Morphed By Many" Posts
  2. Posts "Morph To Many" Galleries

Test 7: Trees

  1. A Member uses a simple tree (parent-child) structure.
  2. A Category uses a simple tree structure, with sorting.
  3. A Channel uses a nested set tree structure.

Test 8: Attributes

An Attribute is a single generic model with many relationship types.

  1. Posts "Belong To" (Attribute) Status (general.status).
  2. Countries "Belong To Many" (Attribute) Types (general.types).

Tests that need attention

  • An attach relation when required inside a tab does not make the tab active.

  • Proxy fields throw a nasty error when the relation is non existant.

  • Record Finder does not incorporate deferred bindings.

  • HasOne relations acting as HasMany will break the list completely.

  • Pivot model with required field doesn't show the asterisk on the form.

Incorporating functional tests

  • All relation controllers

  • Test that input preset API works on fields

  • Test that trigger API works on fields

test-plugin's People

Contributors

almusamim avatar arekusei avatar bennothommo avatar blubcow avatar canthis avatar daftspunk avatar gergo85 avatar herlevsen avatar jimcottrell avatar luketowers avatar meysammahfouzi avatar mjauvin avatar munxar avatar rubenvanerk avatar scottbedard avatar seanthepottingshed avatar ternavsky avatar tobias-kuendig avatar vicrly avatar

Watchers

 avatar

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.