diff --git a/app/controllers/listings_controller.rb b/app/controllers/listings_controller.rb index 1238234b8..4aee5ab30 100644 --- a/app/controllers/listings_controller.rb +++ b/app/controllers/listings_controller.rb @@ -7,7 +7,8 @@ class ListingsController < ApplicationController title processed_html tag_list category id user_id slug contact_via_connect location ], include: { - author: { only: %i[username name], methods: %i[username profile_image_90] } + author: { only: %i[username name], methods: %i[username profile_image_90] }, + user: { only: %i[username], methods: %i[username] } } }.freeze diff --git a/app/javascript/listings/__tests__/AllListings.test.jsx b/app/javascript/listings/__tests__/AllListings.test.jsx index c5193671c..1e3923e22 100644 --- a/app/javascript/listings/__tests__/AllListings.test.jsx +++ b/app/javascript/listings/__tests__/AllListings.test.jsx @@ -14,11 +14,14 @@ const firstListing = { tags: ['go', 'git'], user_id: 1, author: { - name: 'Mrs. Yoko Christiansen', - username: 'mrschristiansenyoko', + name: 'Evil Corp Org', + username: 'evil_corp_org', profile_image_90: '/uploads/user/profile_image/7/4b1c980a-beb0-4a5f-b3f2-acc91adc503c.png', }, + user: { + username: 'mrschristiansenyoko', + }, }; const secondListing = { @@ -37,6 +40,9 @@ const secondListing = { profile_image_90: '/uploads/user/profile_image/7/4b1c980a-beb0-4a5f-b3f2-acc91adc503c.png', }, + user: { + username: 'fred', + }, }; const thirdListing = { @@ -55,6 +61,9 @@ const thirdListing = { profile_image_90: '/uploads/user/profile_image/7/4b1c980a-beb0-4a5f-b3f2-acc91adc503c.png', }, + user: { + username: 'mrsjohnmack', + }, }; const listings = [firstListing, secondListing, thirdListing]; @@ -121,11 +130,11 @@ describe('', () => { expect(gitTag.getAttribute('href')).toEqual('/listings?t=git'); // listing author - const listing1Author = getByText('Mrs. Yoko Christiansen', { + const listing1Author = getByText('Evil Corp Org', { selector: '[data-testid="single-listing-20"] a', }); - expect(listing1Author.getAttribute('href')).toEqual('/mrschristiansenyoko'); + expect(listing1Author.getAttribute('href')).toEqual('/evil_corp_org'); // 2nd listing getByTestId('single-listing-21'); diff --git a/app/javascript/listings/listings.jsx b/app/javascript/listings/listings.jsx index 25594e973..6d7d01b73 100644 --- a/app/javascript/listings/listings.jsx +++ b/app/javascript/listings/listings.jsx @@ -178,7 +178,7 @@ export class Listings extends Component { formData.append('message', `**re: ${openedListing.title}** ${message}`); formData.append('controller', 'chat_channels'); - const destination = `/connect/@${openedListing.author.username}`; + const destination = `/connect/@${openedListing.user.username}`; const metaTag = document.querySelector("meta[name='csrf-token']"); window .fetch('/chat_channels/create_chat', {