| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Since the function `mastodon-auth--handle-token-response' now calls
`mastodon-client-store-access-token' and
`mastodon-client-make-user-active', define mock and stub for them
respectively.
|
|
|
|
|
|
|
| |
Remove the tests `mastodon-auth--generate-token--no-storing-credentials'
and `mastodon-auth--generate-token--storing-credentials' as functions
with similar names no longer exist (due to implementation of the new
login mechanism)
|
|
|
|
|
|
|
|
| |
The test `mastodon-client--register' specifies that the
`mastodon-http--post' be called with a specific value. The value it
specified is outdated since mastodon.el's current website has changed.
So update the value with URL of the current website.
|
|
|
|
|
|
|
|
|
| |
Before tests start test/ert-helper.el file is loaded which in turn loads
other lisp/* files so that required functions and variables are defined
during tests.
Load lisp/mastodon.el file first before loading other files this solves
the complain during tests that `mastodon-active-user' is not defined.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|\ |
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | | |
When just loading the lisp and test files one can run `M-x ert` but
because things are subtly different we need to tweak a few more things
to make things pass in that mode.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- Add a header comment explicitly switching off lexical binding
- Harmonize naming (always start with module and double hyphen)
- Ensure all tests have at least a minimal doc string.
- Move tests from `mastodon-auth-test.el` to `mastodon-auth-tests.el`
|
| | |
| | |
| | |
| | |
| | | |
- Remove redundant let binding of vars
- Re-indent various things to better fit reasonably on a screen.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Instead let's catch the error and then assert the correct error text.
This is more specific and also looks nicer on a test run as there are
no `F` symbols for the (expected) failures.
|
| |/
| |
| |
| |
| | |
to handle adding property "type" to media, and to display in help-echo if not
an image.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Basically, in Emacs for each file: select all text and
`indent-region`.
- This also removes one redundant comment, and
- fixes an error with json decoding where the `json-read-from-string`
was actually not within the intended `unless` clause (which explains
the warning about "result of (string-equal "" json-string) will be
ignored" which I never understood.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
These needed a bit of tender love and care to get back into passing
state.
- Move the auth tests to the `test` directory. No idea what it was
doing in `lisp`.
- Image tests are mostly broken because with later Emacsen we no
longer need the `imagemagic` option on create-image.
- Some method signatures have changed and mocking calls needed to
follow suit.
|
|/ |
|
| |
|
| |
|
|
|
|
| |
* Use the email address of the current user as default
|
| |
|
|
|
|
|
|
|
|
| |
Instead of making it search the whole buffer every time to find images to load, give it a range where this work should be done.
We then call this immediately after inserting a single status, notification, ...
There should be no big noticible difference - images might load a tiny bit sooner although I doubt you can see that.
This should be more efficient on large buffers although Alex didn't notice any problems when testing streamed buffers.
We should still do it as it make things easier to understand. I was always worried about these global operations.
|
|
|
|
|
|
| |
* Adjusted mastodon-tl.el to open user profiles in emacs.
This also fixes an issue in user profiles where new statuses were insert at the above rather than below the user profile header.
|
|
|
|
|
|
| |
* User ids in the body are tab stops.
* Make user handles in byline also links to profile.
|
|
|
|
|
|
|
|
|
| |
* Use auth-source-search for fetching and saving password
This gives users the ability to save their password to either the gpg-encrypted ~/.authinfo.gpg or
~/.authinfo so that they don't have to provide username/password each time
* Add a new custom var to decide whether to use the auth-source package or not.
|
|
|
|
|
|
|
| |
- Can now handle notifications (follow reblog favourite and mention)
- Tests for each of the rendering functions are included
- Added keybinding N to mastodon.el for mastodon-notifications-get
- added mastodon-notifications to ert-helper.el
|
|
|
|
|
| |
This new functionality is bound to the 'c' key.
To help with this functionality this also changes the 'toot-json and 'toot-id properties. These are now applied to the whole toot not just the toot's byline.
|
|
|
|
|
|
|
|
| |
* Added generalizations needed for adding notifications #37
- Made generalizations to toot and bylines to enable notifications.
- Fixed tl tests to account for the new function arguments.
- fixed whitespace
|
|
|
|
| |
functionality instead.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When responding to toots the full acct for both local and federated accounts are now added to the new toot buffer.
Changes
- Added a function in mastodon.el to return the current user acct
- Added mastodon-toot--process-local, which takes an acct and appends the current server if it is local returns an empty string if the acct matches the current user and does only adds a prefix @ if the acct is federated
- mastodon-toot--mentions will return a formatted string of mentions or an empty string
- adds tests for mastodon-toot--mentions
- adds a missing , in mastodon-http--post
- `mastodon-toot--reply` now passes `mastodon-toot` a toot-id rather than the whole json
- 'mastodon-toot--reply-to-id is now a local var in a new toot
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#170)
* Allow user to navigate interesting things in a buffer via tabbing (tab to go forward, M-tab and S-Tab to go back).
This has always been possible while on a hyperlink but now works everywhere.
Currently only hyperlinks are tab stops but in the future we will want to support other things and there are already TODO comments in the code to note where we may want to do this.
* Add a new tab stop and link type: spoiler toggling.
This initially hides the spoiler in a toot and makes the "Content warning" a link and tab stop. The action taken is to toggle the visibility of the toot.
|
|
|
|
|
|
|
| |
forward, M-tab and S-Tab to go back).
This has always been possible while on a hyperlink but now works everywhere.
Currently only hyperlinks are tab stops but in the future we will want to support other things and there are already TODO comments in the code to note where we may want to do this.
|
|
|
|
|
|
|
|
|
|
|
| |
While testing out issue
149 (https://github.com/jdenen/mastodon.el/issues/149) I had problems
due to stale client information being cached.
With this change we store various pieces of information (the client
information in the plstore and the auth tokens) in alists keyed by the
instance url (and the plstore key contains the instance url as well to
allow us to store data per instance).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We now kill the http get request buffer once JSON has been extracted.
mastodon-tl--as-string was implemented and replaced any occurrence of number-to-string or int-to-string
Added variable mastodon-tl--display-media-p. By default it is 't but can be made a local buffer variable and set to nil. When nil rather than displaying the media it just provides a link Media::<link>
Fixed checking for faves and boosts, they should now render properly. The return from json-read-from-string for nil is :json-false which evaluates to 't in elisp.
Fixed the format string that gets printed when faving and boosting
Fixed mastodon-tl--thread updating and requesting and changed its behaviour such that it tries to open the original toot thread rather than the boosted thread.
Added tests for both the new mastodon-tl--as-string function and the mastodon-tl--toot-id utility.
enter mastodon mode before defining local buffer variable mastodon-tl--buffer-spec. This fixes some oddities with the local buffer variable.
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
For each buffer we add a timer that periodically checks all timestamps and updates them as needed.
The logic tries to be smart and
- only schedule an update when at least one timestamps display needs changing (although at the moment we update at least every 5 minutes), and
- only do a limited amount of work in each timer callback so as to not block Emacs's interactive work.
|
| |
| |
| |
| | |
This is still static, i.e. doesn't update as time progresses.
|
| |
| |
| |
| |
| | |
On Emacs24 I've been able to reliably fail url fetching which exposed issues in loading a timeline (it aborts the loading).
This catches any errors, marking the image load as failed so that we won't retry (retries are a TODO item I guess) and then succeeds the function so the rest of the timeline loading can proceed.
|
| |
| |
| |
| | |
mastodon-tl--more-json work as both strings and integers
|
|/
|
|
|
| |
On Emacs24 I've been able to reliably fail url fetching which exposed issues in loading a timeline (it aborts the loading).
This catches any errors, marking the image load as failed so that we won't retry (retries are a TODO item I guess) and then succeeds the function so the rest of the timeline loading can proceed.
|
|
|
|
|
|
|
| |
We do this by
- moving vars into the files where they are (mostly) used
- "declaring" vars used elsewhere with the (defvar <var-name>) pattern,
- declaring functions defined in others functions rather than loading the file via require.
|
|
|
|
|
|
|
|
|
|
| |
removed tests for previous version
documented mastodon-buffer-spec getters
moved mastodon-buffer-spec to mastodon.el
combined mastodon-tl--get and mastodon-tl--init, along with other cleanups
|
|
|
|
|
|
|
|
|
|
|
|
| |
changed more-json in mastodon-tl-tests to recieve an endpont
more evocative names and fixed whitespace
replaced remaining end eith endpoint-plist
added basic unit tests for endpoint selection
replaced equalp with equal in tests
|