Skip to content

Commit

Permalink
feat(integration-test): further test plan
Browse files Browse the repository at this point in the history
  • Loading branch information
Sayan751 committed Oct 8, 2019
1 parent 2dce7d0 commit 709ad73
Showing 1 changed file with 84 additions and 8 deletions.
92 changes: 84 additions & 8 deletions packages/__tests__/integration/test-plan.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,30 @@
### `@aurelia/runtime`

#### call-binding
- `call-binding`

Assigns the result of the method call to the attribute.
Assigns the result of the method call to the attribute.

```html
<el attr="func()"></el>
```
```html
<el attr="func()"></el>
```
- `interpolation-binding`

Evaluates interpolation expression.
- `let-binding`

Local variable evaluated on runtime (new property added to VM).
- `property-binding`

Binds evaluated source expression to the VM properties or DOM attributes.

#### interpolation-binding
Modes:
- one time
- to view
- from view
- two way
- `ref-binding`

Evaluates interpolation expression.
Captures the reference to DOM elements, CE, and CE VMs.

### Test plan

Expand All @@ -37,9 +51,27 @@ ${value}
- call-binding (with the help of a higher-level CE that binds the value using a method call)
- i18n (maybe later)

##### Text input

**Usage:**

```html
<text-input value.bind="val-expr"></text-input>
```

**Definition:**

```html
<input value.bind="value" >
```

**Potential coverage targets**

- `two-way` binding mode

#### Molecules

##### Greetings
##### Greeting

**Usage:**

Expand All @@ -56,3 +88,47 @@ ${value}
**Potential coverage targets**

- call-binding
- property-binding

##### User control

Displays the currently logged in user information.
User object can be bound to the CE using `one-time` binding mode.
Uses `greeting` CE to display greeting to the user using `to-view` binding mode.

**Potential coverage targets**

- `one-time` binding mode
- `to-view` binding mode

##### Boolean AND, OR demonstrator

Though this is not a real-life CE, this is ideal for demonstrating `let-binding`.
There can be 2 boolean properties say, `A`, and `B`, and there can be 2 `let` bindings `A AND B`, and `A OR B`.
Then on change, the change can be asserted.

**Potential coverage targets**

- let-binding

##### Data-grid

Shows a collection of objects in a table (read-only).
Q: what is the `@processContent` equivalent in vNext?

**Potential coverage targets**

- iterator
- `to-view` binding
- `ref` binding
- DOM element: to HTML table to mark selection of rows (CSS class is added to row)
- View-model: to Grid view model to programmatically select rows (this needs to be done in client code)

##### Pagination

Simplest pagination control; mockup: "Page n of N Previous page Next page"
Populates the current page (for data-grid).

**Potential coverage targets**

- `from-view` binding mode (in the client code) for the current page.

0 comments on commit 709ad73

Please sign in to comment.