From 103b2d5d9bbc969bb2eb48f3238ef764858248b8 Mon Sep 17 00:00:00 2001 From: marty hiatt Date: Sat, 27 Aug 2022 10:30:31 +0200 Subject: masto notifs tests filename correct --- test/mastodon-notifications-test.el | 217 ----------------------------------- test/mastodon-notifications-tests.el | 217 +++++++++++++++++++++++++++++++++++ 2 files changed, 217 insertions(+), 217 deletions(-) delete mode 100644 test/mastodon-notifications-test.el create mode 100644 test/mastodon-notifications-tests.el (limited to 'test') diff --git a/test/mastodon-notifications-test.el b/test/mastodon-notifications-test.el deleted file mode 100644 index 4804e10..0000000 --- a/test/mastodon-notifications-test.el +++ /dev/null @@ -1,217 +0,0 @@ -;;; mastodon-notifications-test.el --- Tests for mastodon-notifications.el -*- lexical-binding: nil -*- - -(require 'cl-lib) -(require 'cl-macs) -(require 'el-mock) - -(defconst mastodon-notifications--test-base-mentioned - '((id . "1234") - (type . "mention") - (created_at . "2018-03-06T04:27:21.288Z" ) - (account (id . 42) - (username . "acct42") - (acct . "acct42@example.space") - (display_name . "Account 42") - (locked . :json-false) - (created_at . "2017-04-01T00:00:00.000Z") - (followers_count . 99) - (following_count . 13) - (statuses_count . 101) - (note . "E")) - (status (id . 61208) - (created_at . "2017-04-24T19:01:02.000Z") - (in_reply_to_id) - (in_reply_to_account_id) - (sensitive . :json-false) - (spoiler_text . "") - (visibility . "public") - (account (id . 42) - (username . "acct42") - (acct . "acct42@example.space") - (display_name . "Account 42") - (locked . :json-false) - (created_at . "2017-04-01T00:00:00.000Z") - (followers_count . 99) - (following_count . 13) - (statuses_count . 101) - (note . "E")) - (media_attachments . []) - (mentions . []) - (tags . []) - (uri . "tag:example.space,2017-04-24:objectId=654321:objectType=Status") - (url . "https://example.space/users/acct42/updates/123456789") - (content . "

Just some text

") - (reblogs_count . 0) - (favourites_count . 0) - (reblog)))) - -(defconst mastodon-notifications--test-base-favourite - '((id . "1234") - (type . "favourite") - (created_at . "2018-03-06T04:27:21.288Z" ) - (account (id . 42) - (username . "acct42") - (acct . "acct42@example.space") - (display_name . "Account 42") - (locked . :json-false) - (created_at . "2017-04-01T00:00:00.000Z") - (followers_count . 99) - (following_count . 13) - (statuses_count . 101) - (note . "E")) - (status (id . 61208) - (created_at . "2017-04-24T19:01:02.000Z") - (in_reply_to_id) - (in_reply_to_account_id) - (sensitive . :json-false) - (spoiler_text . "") - (visibility . "public") - (account (id . 42) - (username . "acct42") - (acct . "acct42@example.space") - (display_name . "Account 42") - (locked . :json-false) - (created_at . "2017-04-01T00:00:00.000Z") - (followers_count . 99) - (following_count . 13) - (statuses_count . 101) - (note . "E")) - (media_attachments . []) - (mentions . []) - (tags . []) - (uri . "tag:example.space,2017-04-24:objectId=654321:objectType=Status") - (url . "https://example.space/users/acct42/updates/123456789") - (content . "

Just some text

") - (reblogs_count . 0) - (favourites_count . 0) - (reblog)))) - -(defconst mastodon-notifications--test-base-boosted - '((id . "1234") - (type . "reblog") - (created_at . "2018-03-06T04:27:21.288Z" ) - (account (id . 42) - (username . "acct42") - (acct . "acct42@example.space") - (display_name . "Account 42") - (locked . :json-false) - (created_at . "2017-04-01T00:00:00.000Z") - (followers_count . 99) - (following_count . 13) - (statuses_count . 101) - (note . "E")) - (status (id . 61208) - (created_at . "2017-04-24T19:01:02.000Z") - (in_reply_to_id) - (in_reply_to_account_id) - (sensitive . :json-false) - (spoiler_text . "") - (visibility . "public") - (account (id . 42) - (username . "acct42") - (acct . "acct42@example.space") - (display_name . "Account 42") - (locked . :json-false) - (created_at . "2017-04-01T00:00:00.000Z") - (followers_count . 99) - (following_count . 13) - (statuses_count . 101) - (note . "E")) - (media_attachments . []) - (mentions . []) - (tags . []) - (uri . "tag:example.space,2017-04-24:objectId=654321:objectType=Status") - (url . "https://example.space/users/acct42/updates/123456789") - (content . "

Just some text

") - (reblogs_count . 0) - (favourites_count . 0) - (reblog)))) - -(defconst mastodon-notifications--test-base-followed - '((id . "1234") - (type . "follow") - (created_at . "2018-03-06T04:27:21.288Z" ) - (account (id . 42) - (username . "acct42") - (acct . "acct42@example.space") - (display_name . "Account 42") - (locked . :json-false) - (created_at . "2017-04-01T00:00:00.000Z") - (followers_count . 99) - (following_count . 13) - (statuses_count . 101) - (note . "E")) - (status (id . 61208) - (created_at . "2017-04-24T19:01:02.000Z") - (in_reply_to_id) - (in_reply_to_account_id) - (sensitive . :json-false) - (spoiler_text . "") - (visibility . "public") - (account (id . 42) - (username . "acct42") - (acct . "acct42@example.space") - (display_name . "Account 42") - (locked . :json-false) - (created_at . "2017-04-01T00:00:00.000Z") - (followers_count . 99) - (following_count . 13) - (statuses_count . 101) - (note . "E")) - (media_attachments . []) - (mentions . []) - (tags . []) - (uri . "tag:example.space,2017-04-24:objectId=654321:objectType=Status") - (url . "https://example.space/users/acct42/updates/123456789") - (content . "

Just some text

") - (reblogs_count . 0) - (favourites_count . 0) - (reblog)))) - -(defconst mastodon-notifications--test-base-favourite - '((id . "1234") - (type . "mention") - (created_at . "2018-03-06T04:27:21.288Z" ) - (account (id . 42) - (username . "acct42") - (acct . "acct42@example.space") - (display_name . "Account 42") - (locked . :json-false) - (created_at . "2017-04-01T00:00:00.000Z") - (followers_count . 99) - (following_count . 13) - (statuses_count . 101) - (note . "E")))) - -(ert-deftest mastodon-notifications--notification-get () - "Ensure get request format for notifictions is accurate." - (let ((mastodon-instance-url "https://instance.url")) - (with-mock - (mock (mastodon-http--get-json "https://instance.url/api/v1/notifications" )) - (mastodon-notifications--get)))) - -(defun mastodon-notifications--test-type (fun sample) - "Test notification draw functions. - -FUN is the notificiation function to be called and SAMPLE is the -notification to be tested." - (let ((mastodon-tl--show-avatars-p nil) - (timestamp (cdr (assoc 'created_at sample)))) - (with-temp-buffer (funcall fun sample) - (buffer-substring-no-properties (point-min) (point-max))))) - -(ert-deftest mastodon-notifications--test-byline-concat () - "Ensure proper suffix is appended to action." - (should (and - (string= " Mentioned you" - (mastodon-notifications--byline-concat "Mentioned")) - (string= " Followed you" - (mastodon-notifications--byline-concat "Followed")) - (string= " Favourited your status from" - (mastodon-notifications--byline-concat "Favourited")) - (string= " Boosted your status from" - (mastodon-notifications--byline-concat "Boosted")) - (string= " Posted a post" - (mastodon-notifications--byline-concat "Posted"))))) - - diff --git a/test/mastodon-notifications-tests.el b/test/mastodon-notifications-tests.el new file mode 100644 index 0000000..f5cc4c5 --- /dev/null +++ b/test/mastodon-notifications-tests.el @@ -0,0 +1,217 @@ +;;; mastodon-notifications-tests.el --- Tests for mastodon-notifications.el -*- lexical-binding: nil -*- + +(require 'cl-lib) +(require 'cl-macs) +(require 'el-mock) + +(defconst mastodon-notifications--test-base-mentioned + '((id . "1234") + (type . "mention") + (created_at . "2018-03-06T04:27:21.288Z" ) + (account (id . 42) + (username . "acct42") + (acct . "acct42@example.space") + (display_name . "Account 42") + (locked . :json-false) + (created_at . "2017-04-01T00:00:00.000Z") + (followers_count . 99) + (following_count . 13) + (statuses_count . 101) + (note . "E")) + (status (id . 61208) + (created_at . "2017-04-24T19:01:02.000Z") + (in_reply_to_id) + (in_reply_to_account_id) + (sensitive . :json-false) + (spoiler_text . "") + (visibility . "public") + (account (id . 42) + (username . "acct42") + (acct . "acct42@example.space") + (display_name . "Account 42") + (locked . :json-false) + (created_at . "2017-04-01T00:00:00.000Z") + (followers_count . 99) + (following_count . 13) + (statuses_count . 101) + (note . "E")) + (media_attachments . []) + (mentions . []) + (tags . []) + (uri . "tag:example.space,2017-04-24:objectId=654321:objectType=Status") + (url . "https://example.space/users/acct42/updates/123456789") + (content . "

Just some text

") + (reblogs_count . 0) + (favourites_count . 0) + (reblog)))) + +(defconst mastodon-notifications--test-base-favourite + '((id . "1234") + (type . "favourite") + (created_at . "2018-03-06T04:27:21.288Z" ) + (account (id . 42) + (username . "acct42") + (acct . "acct42@example.space") + (display_name . "Account 42") + (locked . :json-false) + (created_at . "2017-04-01T00:00:00.000Z") + (followers_count . 99) + (following_count . 13) + (statuses_count . 101) + (note . "E")) + (status (id . 61208) + (created_at . "2017-04-24T19:01:02.000Z") + (in_reply_to_id) + (in_reply_to_account_id) + (sensitive . :json-false) + (spoiler_text . "") + (visibility . "public") + (account (id . 42) + (username . "acct42") + (acct . "acct42@example.space") + (display_name . "Account 42") + (locked . :json-false) + (created_at . "2017-04-01T00:00:00.000Z") + (followers_count . 99) + (following_count . 13) + (statuses_count . 101) + (note . "E")) + (media_attachments . []) + (mentions . []) + (tags . []) + (uri . "tag:example.space,2017-04-24:objectId=654321:objectType=Status") + (url . "https://example.space/users/acct42/updates/123456789") + (content . "

Just some text

") + (reblogs_count . 0) + (favourites_count . 0) + (reblog)))) + +(defconst mastodon-notifications--test-base-boosted + '((id . "1234") + (type . "reblog") + (created_at . "2018-03-06T04:27:21.288Z" ) + (account (id . 42) + (username . "acct42") + (acct . "acct42@example.space") + (display_name . "Account 42") + (locked . :json-false) + (created_at . "2017-04-01T00:00:00.000Z") + (followers_count . 99) + (following_count . 13) + (statuses_count . 101) + (note . "E")) + (status (id . 61208) + (created_at . "2017-04-24T19:01:02.000Z") + (in_reply_to_id) + (in_reply_to_account_id) + (sensitive . :json-false) + (spoiler_text . "") + (visibility . "public") + (account (id . 42) + (username . "acct42") + (acct . "acct42@example.space") + (display_name . "Account 42") + (locked . :json-false) + (created_at . "2017-04-01T00:00:00.000Z") + (followers_count . 99) + (following_count . 13) + (statuses_count . 101) + (note . "E")) + (media_attachments . []) + (mentions . []) + (tags . []) + (uri . "tag:example.space,2017-04-24:objectId=654321:objectType=Status") + (url . "https://example.space/users/acct42/updates/123456789") + (content . "

Just some text

") + (reblogs_count . 0) + (favourites_count . 0) + (reblog)))) + +(defconst mastodon-notifications--test-base-followed + '((id . "1234") + (type . "follow") + (created_at . "2018-03-06T04:27:21.288Z" ) + (account (id . 42) + (username . "acct42") + (acct . "acct42@example.space") + (display_name . "Account 42") + (locked . :json-false) + (created_at . "2017-04-01T00:00:00.000Z") + (followers_count . 99) + (following_count . 13) + (statuses_count . 101) + (note . "E")) + (status (id . 61208) + (created_at . "2017-04-24T19:01:02.000Z") + (in_reply_to_id) + (in_reply_to_account_id) + (sensitive . :json-false) + (spoiler_text . "") + (visibility . "public") + (account (id . 42) + (username . "acct42") + (acct . "acct42@example.space") + (display_name . "Account 42") + (locked . :json-false) + (created_at . "2017-04-01T00:00:00.000Z") + (followers_count . 99) + (following_count . 13) + (statuses_count . 101) + (note . "E")) + (media_attachments . []) + (mentions . []) + (tags . []) + (uri . "tag:example.space,2017-04-24:objectId=654321:objectType=Status") + (url . "https://example.space/users/acct42/updates/123456789") + (content . "

Just some text

") + (reblogs_count . 0) + (favourites_count . 0) + (reblog)))) + +(defconst mastodon-notifications--test-base-favourite + '((id . "1234") + (type . "mention") + (created_at . "2018-03-06T04:27:21.288Z" ) + (account (id . 42) + (username . "acct42") + (acct . "acct42@example.space") + (display_name . "Account 42") + (locked . :json-false) + (created_at . "2017-04-01T00:00:00.000Z") + (followers_count . 99) + (following_count . 13) + (statuses_count . 101) + (note . "E")))) + +(ert-deftest mastodon-notifications--notification-get () + "Ensure get request format for notifictions is accurate." + (let ((mastodon-instance-url "https://instance.url")) + (with-mock + (mock (mastodon-http--get-json "https://instance.url/api/v1/notifications" )) + (mastodon-notifications--get)))) + +(defun mastodon-notifications--test-type (fun sample) + "Test notification draw functions. + +FUN is the notificiation function to be called and SAMPLE is the +notification to be tested." + (let ((mastodon-tl--show-avatars-p nil) + (timestamp (cdr (assoc 'created_at sample)))) + (with-temp-buffer (funcall fun sample) + (buffer-substring-no-properties (point-min) (point-max))))) + +(ert-deftest mastodon-notifications--test-byline-concat () + "Ensure proper suffix is appended to action." + (should (and + (string= " Mentioned you" + (mastodon-notifications--byline-concat "Mentioned")) + (string= " Followed you" + (mastodon-notifications--byline-concat "Followed")) + (string= " Favourited your status from" + (mastodon-notifications--byline-concat "Favourited")) + (string= " Boosted your status from" + (mastodon-notifications--byline-concat "Boosted")) + (string= " Posted a post" + (mastodon-notifications--byline-concat "Posted"))))) + + -- cgit v1.2.3 From 1a66ec50e5a85910a55a83a827998d66bc3a96eb Mon Sep 17 00:00:00 2001 From: marty hiatt Date: Sat, 27 Aug 2022 10:30:47 +0200 Subject: update ert-helper to load all tests files --- .woodpecker.yml | 2 +- test/ert-helper.el | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) (limited to 'test') diff --git a/.woodpecker.yml b/.woodpecker.yml index 26dc9d7..53952ec 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -3,5 +3,5 @@ pipeline: image: silex/emacs:cask commands: - cask install - - cask emacs -batch -l test/ert-helper.el -l test/*-tests.el -f ert-run-tests-batch-and-exit + - cask emacs -batch -l test/ert-helper.el -f ert-run-tests-batch-and-exit diff --git a/test/ert-helper.el b/test/ert-helper.el index f65649f..140425b 100644 --- a/test/ert-helper.el +++ b/test/ert-helper.el @@ -13,3 +13,11 @@ (load-file "lisp/mastodon-search.el") (load-file "lisp/mastodon-tl.el") (load-file "lisp/mastodon-toot.el") + +;; load tests in bulk to avoid using deprecated `cask exec' +(let ((tests (cl-remove-if-not (lambda (x) + (string-suffix-p "-tests.el" x)) + (directory-files "test/." t directory-files-no-dot-files-regexp)))) + (mapc #'load-file tests)) + + -- cgit v1.2.3 From 29e6750c606333b3fe06f55c99cfdffc2e04a3ff Mon Sep 17 00:00:00 2001 From: marty hiatt Date: Sat, 27 Aug 2022 10:53:04 +0200 Subject: test profile buffer for - change time stamp for woodpecker --- test/mastodon-profile-tests.el | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'test') diff --git a/test/mastodon-profile-tests.el b/test/mastodon-profile-tests.el index ca323ea..817e386 100644 --- a/test/mastodon-profile-tests.el +++ b/test/mastodon-profile-tests.el @@ -272,12 +272,12 @@ content generation in the function under test." " ------------\n" "\n" "

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.

\n" - " Eugen (@Gargron) 2021-11-11 12:11:11\n" + " Eugen (@Gargron) 2021-11-11 11:11:11\n" " ------------\n" "\n" "\n" "

@CCC At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

\n" - " Eugen (@Gargron) 2021-11-11 01:00:00\n" + " Eugen (@Gargron) 2021-11-11 00:00:00\n" " ------------\n" "\n" ))) -- cgit v1.2.3