167 lines
4.9 KiB
Gherkin
167 lines
4.9 KiB
Gherkin
Feature: 20201123
|
|
|
|
@refresh_token
|
|
Scenario: Do not know how to betamax initial oauth handshake
|
|
When begin recording "refresh_token"
|
|
Given gnus start
|
|
Then end recording "refresh_token"
|
|
|
|
@random
|
|
Scenario: random subreddit
|
|
When begin recording "random"
|
|
Given gnus start
|
|
And rpc "random_subreddit" returns "preppers"
|
|
Then end recording "random"
|
|
|
|
@subscribe
|
|
Scenario: subscribe and unsubscribe
|
|
When begin recording "subscribe"
|
|
Given gnus start
|
|
And I goto group "test"
|
|
And I press "q"
|
|
Then I should be in buffer "*Group*"
|
|
And I go to word "test"
|
|
And I press "u"
|
|
And I open latest "log/test_py"
|
|
Then I wait for buffer to say "('action', 'sub')"
|
|
And I switch to buffer "*Group*"
|
|
And I go to word "test"
|
|
And I press "u"
|
|
And I open latest "log/test_py"
|
|
Then I wait for buffer to say "('action', 'unsub')"
|
|
Then end recording "subscribe"
|
|
|
|
@scan
|
|
Scenario: selecting group does not rescan, but M-g does
|
|
Given gnus stop
|
|
When begin recording "scan"
|
|
Given gnus start
|
|
And I clear buffer "*Messages*"
|
|
And I go to word "emacs"
|
|
And I press "M-g"
|
|
And I switch to buffer "*Messages*"
|
|
And I should see pattern "nnreddit-request-scan: emacs"
|
|
And I switch to buffer "*Group*"
|
|
And I clear buffer "*Messages*"
|
|
And I go to word "emacs"
|
|
And I press "RET"
|
|
And I should be in buffer "*Summary nnreddit:emacs*"
|
|
And I switch to buffer "*Messages*"
|
|
And I should not see pattern "nnreddit-request-scan: emacs"
|
|
And I switch to buffer "*Group*"
|
|
And I go to word "orgmode"
|
|
And I press "RET"
|
|
And I should be in buffer "*Summary nnreddit:orgmode*"
|
|
And I switch to buffer "*Messages*"
|
|
And I should not see pattern "nnreddit-request-scan: orgmode"
|
|
Then end recording "scan"
|
|
|
|
@vote
|
|
Scenario: Voting from summary and article buffers
|
|
Given gnus stop
|
|
When begin recording "vote"
|
|
Given gnus start
|
|
And I go to word "PostPreview"
|
|
And I press "RET"
|
|
And I should be in buffer "*Summary nnreddit:PostPreview*"
|
|
And I go to word "Plasky"
|
|
And I press "R ="
|
|
Then protected see message "Open the article before voting"
|
|
And I press "RET"
|
|
And I press "R ="
|
|
And I switch to buffer "*Article nnreddit:PostPreview*"
|
|
And I should see "Score: 2 +1"
|
|
And I press "R -"
|
|
And I should see "Score: 2 -1"
|
|
Then end recording "vote"
|
|
|
|
@post
|
|
Scenario: message-send-and-exit
|
|
When begin recording "post"
|
|
Given gnus start
|
|
And I go to word "PostPreview"
|
|
And I press "RET"
|
|
And I should be in buffer "*Summary nnreddit:PostPreview*"
|
|
And emacs26 cannot do action chain "a t"
|
|
Then I should be in buffer "*unsent posting on PostPreview*"
|
|
And I type "test baby test baby 123"
|
|
And I press "M->"
|
|
And I type "this is a test"
|
|
And I press "C-c C-c"
|
|
And I should be in buffer "*Summary nnreddit:PostPreview*"
|
|
Then end recording "post"
|
|
|
|
@loose
|
|
Scenario: Reply to a loose thread
|
|
Given gnus stop
|
|
When begin recording "loose"
|
|
Given gnus start
|
|
And I go to word "PostPreview"
|
|
And I press "RET"
|
|
And I should be in buffer "*Summary nnreddit:PostPreview*"
|
|
And I go to string "Re: Testing inline image links"
|
|
And emacs26 cannot do action chain "f r"
|
|
Then I should be in buffer like "*unsent followup"
|
|
And I should see "Reply-Root: yes"
|
|
And I press "M->"
|
|
And I type "this is a test"
|
|
And I press "C-c C-c"
|
|
And I should be in buffer "*Summary nnreddit:PostPreview*"
|
|
Then end recording "loose"
|
|
|
|
@cancel
|
|
Scenario: cancel post
|
|
When begin recording "cancel"
|
|
Given gnus start
|
|
And I go to word "PostPreview"
|
|
And I press "RET"
|
|
And I should be in buffer "*Summary nnreddit:PostPreview*"
|
|
And I go to string "Re: Testing inline image links"
|
|
And I press "C-n"
|
|
And I press "S c"
|
|
And I open latest "log/test_py"
|
|
And I wait for buffer to say "api/del"
|
|
And I wait for buffer to say "('id', 't1_eqwoano')"
|
|
Then end recording "cancel"
|
|
|
|
@supersede
|
|
Scenario: supersede post
|
|
Given gnus stop
|
|
When begin recording "supersede"
|
|
Given gnus start
|
|
And I go to word "PostPreview"
|
|
And I press "RET"
|
|
And I should be in buffer "*Summary nnreddit:PostPreview*"
|
|
And I go to word "aegisninja"
|
|
And I press "C-n"
|
|
And I press "S s"
|
|
Then I should be in buffer "*unsent supersede*"
|
|
And I type "edit: "
|
|
And I press "C-c C-c"
|
|
And I open latest "log/test_py"
|
|
And I wait for buffer to say "api/editusertext"
|
|
And I wait for buffer to say "('thing_id', 't1_eqwe7dx')"
|
|
Then end recording "supersede"
|
|
|
|
@canonical
|
|
Scenario: Going to hongkong make me really go to HongKong
|
|
Given gnus stop
|
|
When begin recording "canonical"
|
|
Given gnus start
|
|
And eval "(setq minibuffer-history nil)"
|
|
And I goto group "hongkong"
|
|
And I press "q"
|
|
Then I should be in buffer "*Group*"
|
|
And I should see "HongKong"
|
|
Then end recording "canonical"
|
|
|
|
@browser
|
|
Scenario: Verify user message if no refresh token present
|
|
Given gnus stop
|
|
And I hide tokens
|
|
And gnus try start
|
|
And I switch to buffer "*Messages*"
|
|
Then I should see "nnreddit-default: Please check your browser."
|
|
And I unhide tokens
|
|
And I kill all rpc processes
|