Add the post author to the return result (#208)
All checks were successful
Stage / build (push) Successful in 8s
Stage / rsync (push) Successful in 6s

- Add the post author to the return result
- Update tests to accommodate for this change
- Update the documentation for this change

#110

Reviewed-on: #208
Reviewed-by: VylpesTester <tester@vylpes.com>
Co-authored-by: Ethan Lane <ethan@vylpes.com>
Co-committed-by: Ethan Lane <ethan@vylpes.com>
This commit is contained in:
Ethan Lane 2024-08-02 17:47:47 +01:00 committed by Vylpes
parent d85c812fbb
commit 50e4790fbf
9 changed files with 21 additions and 2 deletions

View file

@ -25,6 +25,7 @@ By default, the command will fetch a random image from `r/rabbits` and return it
$ random-bunny $ random-bunny
Archived = false Archived = false
Author = Rabbit_Owner
Downvotes = 0 Downvotes = 0
Hidden = false Hidden = false
Permalink = /r/Rabbits/comments/1av1rg9/cute_baby_bun/ Permalink = /r/Rabbits/comments/1av1rg9/cute_baby_bun/
@ -72,7 +73,7 @@ $ random-bunny --json
$ randon-bunny -j $ randon-bunny -j
{"Archived":false,"Downs":0,"Hidden":false,"Permalink":"/r/Rabbits/comments/1av1rg9/cute_baby_bun/","Subreddit":"Rabbits","SubredditSubscribers":486085,"Title":"Cute baby bun","Ups":210,"Url":"https://i.redd.it/sfz0srdrimjc1.png"} {"Archived":false,"Author":"Rabbit_Owner","Downs":0,"Hidden":false,"Permalink":"/r/Rabbits/comments/1av1rg9/cute_baby_bun/","Subreddit":"Rabbits","SubredditSubscribers":486085,"Title":"Cute baby bun","Ups":210,"Url":"https://i.redd.it/sfz0srdrimjc1.png"}
``` ```
## Sort ## Sort

View file

@ -37,6 +37,7 @@ Returns a `json string` for a random post. Accepts 3 arguments: `subreddit`, `so
The json string which gets returned consists of: The json string which gets returned consists of:
- archived - archived
- author
- downs - downs
- hidden - hidden
- permalink - permalink

View file

@ -1,6 +1,7 @@
export default interface IFetchResult { export default interface IFetchResult {
data: { data: {
archived: boolean, archived: boolean,
author: string,
downs: number, downs: number,
hidden: boolean, hidden: boolean,
permalink: string, permalink: string,

View file

@ -1,5 +1,6 @@
export default interface IRedditResult { export default interface IRedditResult {
Archived: boolean, Archived: boolean,
Author: string,
Downs: number, Downs: number,
Hidden: boolean, Hidden: boolean,
Permalink: string, Permalink: string,

View file

@ -12,6 +12,7 @@ export default class OutputHelper {
} }
outputLines.push(`Archived = ${result.Archived}`); outputLines.push(`Archived = ${result.Archived}`);
outputLines.push(`Author = ${result.Author}`);
outputLines.push(`Downvotes = ${result.Downs}`); outputLines.push(`Downvotes = ${result.Downs}`);
outputLines.push(`Hidden = ${result.Hidden}`); outputLines.push(`Hidden = ${result.Hidden}`);
outputLines.push(`Permalink = ${result.Permalink}`); outputLines.push(`Permalink = ${result.Permalink}`);

View file

@ -118,6 +118,7 @@ export default async function randomBunny(subreddit: string, sortBy: "new" | "ho
} }
const redditResult: IRedditResult = { const redditResult: IRedditResult = {
Author: randomData['author'],
Archived: randomData['archived'], Archived: randomData['archived'],
Downs: randomData['downs'], Downs: randomData['downs'],
Hidden: randomData['hidden'], Hidden: randomData['hidden'],

View file

@ -2,6 +2,7 @@
exports[`GenerateOutput EXPECT standout output to be returned 1`] = ` exports[`GenerateOutput EXPECT standout output to be returned 1`] = `
"Archived = false "Archived = false
Author = author
Downvotes = 0 Downvotes = 0
Hidden = false Hidden = false
Permalink = /r/Rabbits/comments/1dj8pbt/this_is_my_ms_bear/ Permalink = /r/Rabbits/comments/1dj8pbt/this_is_my_ms_bear/
@ -12,10 +13,11 @@ Upvotes = 17
Url = https://preview.redd.it/d5yno653zf7d1.jpg?width=640&crop=smart&auto=webp&s=5064d1caec3c12ac2855eb57ff131d0b313d5e9d" Url = https://preview.redd.it/d5yno653zf7d1.jpg?width=640&crop=smart&auto=webp&s=5064d1caec3c12ac2855eb57ff131d0b313d5e9d"
`; `;
exports[`GenerateOutput GIVEN options.json is true, EXPECT output to be returned as JSON 1`] = `"{"Archived":false,"Downs":0,"Hidden":false,"Permalink":"/r/Rabbits/comments/1dj8pbt/this_is_my_ms_bear/","Subreddit":"Rabbits","SubredditSubscribers":654751,"Title":"This is my Ms Bear!","Ups":17,"Url":"https://preview.redd.it/d5yno653zf7d1.jpg?width=640&crop=smart&auto=webp&s=5064d1caec3c12ac2855eb57ff131d0b313d5e9d"}"`; exports[`GenerateOutput GIVEN options.json is true, EXPECT output to be returned as JSON 1`] = `"{"Archived":false,"Author":"author","Downs":0,"Hidden":false,"Permalink":"/r/Rabbits/comments/1dj8pbt/this_is_my_ms_bear/","Subreddit":"Rabbits","SubredditSubscribers":654751,"Title":"This is my Ms Bear!","Ups":17,"Url":"https://preview.redd.it/d5yno653zf7d1.jpg?width=640&crop=smart&auto=webp&s=5064d1caec3c12ac2855eb57ff131d0b313d5e9d"}"`;
exports[`GenerateOutput GIVEN options.queryMetadata is supplied, EXPECT query metadata to be added 1`] = ` exports[`GenerateOutput GIVEN options.queryMetadata is supplied, EXPECT query metadata to be added 1`] = `
"Archived = false "Archived = false
Author = author
Downvotes = 0 Downvotes = 0
Hidden = false Hidden = false
Permalink = /r/Rabbits/comments/1dj8pbt/this_is_my_ms_bear/ Permalink = /r/Rabbits/comments/1dj8pbt/this_is_my_ms_bear/

View file

@ -14,6 +14,7 @@ describe("GenerateOutput", () => {
}, },
Result: { Result: {
Archived: false, Archived: false,
Author: 'author',
Downs: 0, Downs: 0,
Hidden: false, Hidden: false,
Permalink: "/r/Rabbits/comments/1dj8pbt/this_is_my_ms_bear/", Permalink: "/r/Rabbits/comments/1dj8pbt/this_is_my_ms_bear/",
@ -45,6 +46,7 @@ describe("GenerateOutput", () => {
}, },
Result: { Result: {
Archived: false, Archived: false,
Author: 'author',
Downs: 0, Downs: 0,
Hidden: false, Hidden: false,
Permalink: "/r/Rabbits/comments/1dj8pbt/this_is_my_ms_bear/", Permalink: "/r/Rabbits/comments/1dj8pbt/this_is_my_ms_bear/",
@ -78,6 +80,7 @@ describe("GenerateOutput", () => {
}, },
Result: { Result: {
Archived: false, Archived: false,
Author: 'author',
Downs: 0, Downs: 0,
Hidden: false, Hidden: false,
Permalink: "/r/Rabbits/comments/1dj8pbt/this_is_my_ms_bear/", Permalink: "/r/Rabbits/comments/1dj8pbt/this_is_my_ms_bear/",

View file

@ -20,6 +20,7 @@ describe('randomBunny', () => {
{ {
data: { data: {
archived: false, archived: false,
author: 'author',
downs: 0, downs: 0,
hidden: false, hidden: false,
permalink: '/r/Rabbits/comments/12pa5te/someone_told_pickles_its_monday_internal_fury/', permalink: '/r/Rabbits/comments/12pa5te/someone_told_pickles_its_monday_internal_fury/',
@ -52,6 +53,7 @@ describe('randomBunny', () => {
{ {
data: { data: {
archived: false, archived: false,
author: 'author',
downs: 0, downs: 0,
hidden: false, hidden: false,
permalink: '/r/Rabbits/comments/12pa5te/someone_told_pickles_its_monday_internal_fury/', permalink: '/r/Rabbits/comments/12pa5te/someone_told_pickles_its_monday_internal_fury/',
@ -137,6 +139,7 @@ describe('randomBunny', () => {
{ {
data: { data: {
archived: false, archived: false,
author: 'author',
downs: 0, downs: 0,
hidden: false, hidden: false,
permalink: '/r/Rabbits/comments/12pa5te/someone_told_pickles_its_monday_internal_fury/', permalink: '/r/Rabbits/comments/12pa5te/someone_told_pickles_its_monday_internal_fury/',
@ -173,6 +176,7 @@ describe('randomBunny', () => {
{ {
data: { data: {
archived: false, archived: false,
author: 'author',
downs: 0, downs: 0,
hidden: false, hidden: false,
permalink: '/r/Rabbits/comments/12pa5te/someone_told_pickles_its_monday_internal_fury/', permalink: '/r/Rabbits/comments/12pa5te/someone_told_pickles_its_monday_internal_fury/',
@ -209,6 +213,7 @@ describe('randomBunny', () => {
{ {
data: { data: {
archived: false, archived: false,
author: 'author',
downs: 0, downs: 0,
hidden: false, hidden: false,
permalink: '/r/Rabbits/comments/12pa5te/someone_told_pickles_its_monday_internal_fury/', permalink: '/r/Rabbits/comments/12pa5te/someone_told_pickles_its_monday_internal_fury/',
@ -244,6 +249,7 @@ describe('randomBunny', () => {
{ {
data: { data: {
archived: false, archived: false,
author: 'author',
downs: 0, downs: 0,
hidden: false, hidden: false,
permalink: '/r/Rabbits/comments/12pa5te/someone_told_pickles_its_monday_internal_fury/', permalink: '/r/Rabbits/comments/12pa5te/someone_told_pickles_its_monday_internal_fury/',
@ -276,6 +282,7 @@ describe('randomBunny', () => {
{ {
data: { data: {
archived: false, archived: false,
author: 'author',
downs: 0, downs: 0,
hidden: false, hidden: false,
permalink: '/r/Rabbits/comments/12pa5te/someone_told_pickles_its_monday_internal_fury/', permalink: '/r/Rabbits/comments/12pa5te/someone_told_pickles_its_monday_internal_fury/',
@ -311,6 +318,7 @@ describe('randomBunny', () => {
{ {
data: { data: {
archived: false, archived: false,
author: 'author',
downs: 0, downs: 0,
hidden: false, hidden: false,
permalink: '/r/Rabbits/comments/12pa5te/someone_told_pickles_its_monday_internal_fury/', permalink: '/r/Rabbits/comments/12pa5te/someone_told_pickles_its_monday_internal_fury/',