@@ -45,7 +45,7 @@ Notice that in the above example, before clicking the `:operations_environments_
...
@@ -45,7 +45,7 @@ Notice that in the above example, before clicking the `:operations_environments_
> We can create these methods as helpers to abstract multi-step navigation.
> We can create these methods as helpers to abstract multi-step navigation.
### Element naming convention
## Element naming convention
When adding new elements to a page, it's important that we have a uniform element naming convention.
When adding new elements to a page, it's important that we have a uniform element naming convention.
...
@@ -67,7 +67,7 @@ We follow a simple formula roughly based on hungarian notation.
...
@@ -67,7 +67,7 @@ We follow a simple formula roughly based on hungarian notation.
*Note: This list is a work in progress. This list will eventually be the end-all enumeration of all available types.
*Note: This list is a work in progress. This list will eventually be the end-all enumeration of all available types.
I.e., any element that does not end with something in this list is bad form.*
I.e., any element that does not end with something in this list is bad form.*
#### Examples
### Examples
**Good**
**Good**
...
@@ -98,3 +98,47 @@ view '...' do
...
@@ -98,3 +98,47 @@ view '...' do
element:ssh_clone_url
element:ssh_clone_url
end
end
```
```
## Block argument naming
To have a standard on how we call pages when using the `.perform` method, we use the name of page object being called, all lowercased, and separated by underscore, if needed (see good and bad examples below.) This also applies to resources. We chose not to simply use `page` because that would shadow the Capybara DSL, potentially leading to confusion and bugs.