Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 27 additions & 26 deletions features/db-search.feature
Original file line number Diff line number Diff line change
Expand Up @@ -679,19 +679,19 @@ Feature: Search through the database
:あいうえおかきくけこさしすせとたちつてと
"""

When I run `wp db search 'ppppp' --before_context=3 --after_context=4`
When I run `wp db search "ppppp" --before_context=3 --after_context=4`
Then STDOUT should contain:
"""
:ムnöppppp
"""

When I run `wp db search 'ppppp' --before_context=1 --after_context=1`
When I run `wp db search "ppppp" --before_context=1 --after_context=1`
Then STDOUT should contain:
"""
:öppppp
"""

When I run `wp db search 'ムn' --before_context=2 --after_context=1`
When I run `wp db search "ムn" --before_context=2 --after_context=1`
Then STDOUT should contain:
"""
:llムnö
Expand All @@ -701,7 +701,7 @@ Feature: Search through the database
:llムnöp
"""

When I run `wp db search 'ムn' --before_context=2 --after_context=2`
When I run `wp db search "ムn" --before_context=2 --after_context=2`
Then STDOUT should contain:
"""
:llムnöp
Expand All @@ -720,7 +720,7 @@ Feature: Search through the database
# Note ö is o with combining umlaut.
And I run `wp option update regextst_combining 'lllllムnöppppp'`

When I run `wp db search 'https?:\/\/example.c.m' --regex`
When I run `wp db search "https?:\/\/example.c.m" --regex`
Then STDOUT should contain:
"""
wp_options:option_value
Expand All @@ -731,10 +731,10 @@ Feature: Search through the database
[...]
"""

When I run `wp db search 'unfindable' --regex`
When I run `wp db search "unfindable" --regex`
Then STDOUT should be empty

When I try `wp db search 'unfindable' --regex --regex-flags='abcd'`
When I try `wp db search "unfindable" --regex --regex-flags="abcd"`
Then STDERR should contain:
"""
unfindable
Expand All @@ -745,42 +745,42 @@ Feature: Search through the database
"""
And the return code should be 1

When I try `wp db search 'unfindable' --regex --regex-delimiter='1'`
When I try `wp db search "unfindable" --regex --regex-delimiter="1"`
Then STDERR should be:
"""
Error: The regex '1unfindable1' fails.
"""
And the return code should be 1

When I try `wp db search 'regex error)' --regex`
When I try `wp db search "regex error)" --regex`
Then STDERR should be:
"""
Error: The regex pattern 'regex error)' with default delimiter 'chr(1)' and no flags fails.
"""
And the return code should be 1

When I try `wp db search 'regex error)' --regex --regex-flags=u`
When I try `wp db search "regex error)" --regex --regex-flags=u`
Then STDERR should be:
"""
Error: The regex pattern 'regex error)' with default delimiter 'chr(1)' and flags 'u' fails.
"""
And the return code should be 1

When I try `wp db search 'regex error)' --regex --regex-delimiter=/`
When I try `wp db search "regex error)" --regex --regex-delimiter=#`
Then STDERR should be:
"""
Error: The regex '/regex error)/' fails.
Error: The regex '#regex error)#' fails.
"""
And the return code should be 1

When I try `wp db search 'regex error)' --regex --regex-delimiter=/ --regex-flags=u`
When I try `wp db search "regex error)" --regex --regex-delimiter=# --regex-flags=u`
Then STDERR should be:
"""
Error: The regex '/regex error)/u' fails.
Error: The regex '#regex error)#u' fails.
"""
And the return code should be 1

When I run `wp db search '[0-9é]+?https:' --regex --regex-flags=u --before_context=0 --after_context=0`
When I run `wp db search "[0-9é]+?https:" --regex --regex-flags=u --before_context=0 --after_context=0`
Then STDOUT should contain:
"""
:1234567890123456789éhttps:
Expand All @@ -794,7 +794,7 @@ Feature: Search through the database
[...]
"""

When I run `wp db search 'htt(p(s):)\/\/' --regex --before_context=1 --after_context=3`
When I run `wp db search "htt(p(s):)\/\/" --regex --before_context=1 --after_context=3`
Then STDOUT should contain:
"""
:あhttps://reg [...] éhttps://reg
Expand All @@ -804,7 +804,7 @@ Feature: Search through the database
rege
"""

When I run `wp db search 'https://' --regex --regex-delimiter=# --before_context=9 --after_context=11`
When I run `wp db search "https://" --regex --regex-delimiter=# --before_context=9 --after_context=11`
Then STDOUT should contain:
"""
:2345é789あhttps://regextst.co [...] 23456789éhttps://regextst.co
Expand All @@ -814,10 +814,10 @@ Feature: Search through the database
regextst.com
"""

When I run `wp db search 'httPs://' --regex --regex-delimiter=# --before_context=3 --after_context=0`
When I run `wp db search "httPs://" --regex --regex-delimiter=# --before_context=3 --after_context=0`
Then STDOUT should be empty

When I run `wp db search 'httPs://' --regex --regex-flags=i --regex-delimiter=# --before_context=3 --after_context=0`
When I run `wp db search "httPs://" --regex --regex-flags=i --regex-delimiter=# --before_context=3 --after_context=0`
Then STDOUT should contain:
"""
:89あhttps:// [...] 89éhttps://
Expand All @@ -827,19 +827,19 @@ Feature: Search through the database
https://r
"""

When I run `wp db search 'ppppp' --regex --before_context=3 --after_context=4`
When I run `wp db search "ppppp" --regex --before_context=3 --after_context=4`
Then STDOUT should contain:
"""
:ムnöppppp
"""

When I run `wp db search 'ppppp' --regex --before_context=1 --after_context=1`
When I run `wp db search "ppppp" --regex --before_context=1 --after_context=1`
Then STDOUT should contain:
"""
:öppppp
"""

When I run `wp db search 'ムn' --before_context=2 --after_context=1`
When I run `wp db search "ムn" --before_context=2 --after_context=1`
Then STDOUT should contain:
"""
:llムnö
Expand All @@ -849,7 +849,7 @@ Feature: Search through the database
:llムnöp
"""

When I run `wp db search 'ムn' --regex --before_context=2 --after_context=2`
When I run `wp db search "ムn" --regex --before_context=2 --after_context=2`
Then STDOUT should contain:
"""
:llムnöp
Expand All @@ -859,7 +859,7 @@ Feature: Search through the database
:llムnöpp
"""

When I run `wp db search 't\.c' --regex --before_context=1 --after_context=1`
When I run `wp db search "t\.c" --regex --before_context=1 --after_context=1`
Then STDOUT should contain:
"""
:st.co [...] st.co [...] st.co [...] 0t.co
Expand All @@ -869,7 +869,7 @@ Feature: Search through the database
st.com
"""

When I run `wp db search 'https://' --regex`
When I run `wp db search "https://" --regex`
Then the return code should be 0

Scenario: Search with output options
Expand Down Expand Up @@ -982,6 +982,7 @@ Feature: Search through the database
And STDOUT should match /\d tables? skipped:.*wp_term_relationships/
And STDERR should be empty

@skip-windows
Scenario: Search with custom colors
Given a WP install

Expand Down Expand Up @@ -1060,7 +1061,7 @@ Feature: Search through the database
When I run `wp db query "SOURCE esc_sql_ident.sql;"`
Then STDERR should be empty

When I run `wp db search 'v_v' TABLE --all-tables`
When I run `wp db search "v_v" TABLE --all-tables`
Then STDOUT should be:
"""
TABLE:VALUES
Expand Down
8 changes: 8 additions & 0 deletions features/db-size.feature
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@ Feature: Display database size
B
"""

# On CI, SQLite on Windows is missing the dbstat extension.
@skip-windows
Scenario: Display only table sizes for a WordPress install
Given a WP install

Expand Down Expand Up @@ -81,6 +83,8 @@ Feature: Display database size
KB
"""

# On CI, SQLite on Windows is missing the dbstat extension.
@skip-windows
Scenario: Display only table sizes in a human readable format for a WordPress install
Given a WP install

Expand Down Expand Up @@ -222,6 +226,8 @@ Feature: Display database size

But STDOUT should not be a number

# On CI, SQLite on Windows is missing the dbstat extension.
@skip-windows
Scenario: Display all table sizes for a WordPress install
Given a WP install

Expand Down Expand Up @@ -282,6 +288,8 @@ Feature: Display database size
[{"Name":"wp_posts",
"""

# On CI, SQLite on Windows is missing the dbstat extension.
@skip-windows
Scenario: Display ordered table sizes for a WordPress install
Given a WP install

Expand Down
16 changes: 9 additions & 7 deletions features/db.feature
Original file line number Diff line number Diff line change
Expand Up @@ -256,7 +256,7 @@ Feature: Perform database operations
1
"""

When I run `wp db export /tmp/wp-cli-behat.sql`
When I run `wp db export wp-cli-behat.sql`
Then STDOUT should contain:
"""
Success: Exported
Expand All @@ -283,7 +283,7 @@ Feature: Perform database operations
When I try `wp post list --format=count`
Then STDERR should not be empty

When I run `wp db import /tmp/wp-cli-behat.sql`
When I run `wp db import wp-cli-behat.sql`
Then STDOUT should contain:
"""
Success: Imported
Expand Down Expand Up @@ -312,7 +312,7 @@ Feature: Perform database operations
When I run `wp db create`
Then STDOUT should not be empty

When I run `wp db export /tmp/wp-cli-behat.sql`
When I run `wp db export wp-cli-behat.sql`
Then STDOUT should contain:
"""
Success: Exported
Expand Down Expand Up @@ -383,7 +383,8 @@ Feature: Perform database operations
Query succeeded. Rows affected: 1
"""

@require-sqlite
@require-sqlite @skip-windows
# Skipped on Windows due to persistent file locking issues when run via Behat.
Scenario: SQLite DB CRUD operations
Given a WP install
And a session_yes file:
Expand Down Expand Up @@ -420,7 +421,8 @@ Feature: Perform database operations
total
"""

@require-sqlite
@require-sqlite @skip-windows
# Skipped on Windows due to persistent file locking issues when run via Behat.
Scenario: SQLite DB export/import
Given a WP install
And a session_yes file:
Expand All @@ -434,7 +436,7 @@ Feature: Perform database operations
1
"""

When I run `wp db export /tmp/wp-cli-sqlite-behat.sql`
When I run `wp db export wp-cli-sqlite-behat.sql`
Then STDOUT should contain:
"""
Success: Exported
Expand All @@ -446,7 +448,7 @@ Feature: Perform database operations
Success: Database reset
"""

When I run `wp db import /tmp/wp-cli-sqlite-behat.sql`
When I run `wp db import wp-cli-sqlite-behat.sql`
Then STDOUT should contain:
"""
Success: Imported
Expand Down
Loading
Loading