lint this, check todo
This commit is contained in:
@@ -48,7 +48,7 @@ class Admin::RequestsController < Admin::BaseController
|
||||
@entry = Entry.find(params[:id])
|
||||
@user = @entry.requested_by
|
||||
|
||||
entry_preview = [@entry.fi, @entry.en, @entry.sv, @entry.no, @entry.ru, @entry.de].compact.first || "Entry"
|
||||
entry_preview = [ @entry.fi, @entry.en, @entry.sv, @entry.no, @entry.ru, @entry.de ].compact.first || "Entry"
|
||||
|
||||
@entry.destroy!
|
||||
@user.destroy! if @user.requested_entries.count.zero?
|
||||
|
||||
+1
-1
@@ -51,7 +51,7 @@ class Entry < ApplicationRecord
|
||||
end
|
||||
|
||||
def at_least_one_translation
|
||||
if [fi, en, sv, no, ru, de].all?(&:blank?)
|
||||
if [ fi, en, sv, no, ru, de ].all?(&:blank?)
|
||||
errors.add(:base, "At least one language translation is required")
|
||||
end
|
||||
end
|
||||
|
||||
+1
-1
@@ -26,7 +26,7 @@ Rails.application.routes.draw do
|
||||
patch "invitations/:token/accept", to: "invitations#update", as: :accept_invitation
|
||||
|
||||
# Public entry request routes
|
||||
resources :requests, only: [:new, :create]
|
||||
resources :requests, only: [ :new, :create ]
|
||||
|
||||
# Admin namespace
|
||||
namespace :admin do
|
||||
|
||||
+1
-1
@@ -63,7 +63,7 @@
|
||||
- [ ] **Notifications** when suggestions are reviewed
|
||||
|
||||
### Comments & Discussion
|
||||
- [ ] **Add comment** form on entry view
|
||||
- [x] **Add comment** form on entry view
|
||||
- [ ] **Edit/delete own comments**
|
||||
- [ ] **Comment threading** (optional: replies to comments)
|
||||
- [ ] **Comment notifications** for entry contributors
|
||||
|
||||
@@ -25,7 +25,7 @@ class RequestsControllerTest < ActionDispatch::IntegrationTest
|
||||
end
|
||||
|
||||
test "should create entry request with valid data" do
|
||||
assert_difference(["User.count", "Entry.count"], 1) do
|
||||
assert_difference([ "User.count", "Entry.count" ], 1) do
|
||||
post requests_path, params: {
|
||||
entry: {
|
||||
name: "New Requester",
|
||||
@@ -52,7 +52,7 @@ class RequestsControllerTest < ActionDispatch::IntegrationTest
|
||||
end
|
||||
|
||||
test "should require at least one translation" do
|
||||
assert_no_difference(["User.count", "Entry.count"]) do
|
||||
assert_no_difference([ "User.count", "Entry.count" ]) do
|
||||
post requests_path, params: {
|
||||
entry: {
|
||||
name: "New Requester",
|
||||
@@ -70,7 +70,7 @@ class RequestsControllerTest < ActionDispatch::IntegrationTest
|
||||
test "should redirect to login if email already exists" do
|
||||
existing_user = users(:contributor_user)
|
||||
|
||||
assert_no_difference(["User.count", "Entry.count"]) do
|
||||
assert_no_difference([ "User.count", "Entry.count" ]) do
|
||||
post requests_path, params: {
|
||||
entry: {
|
||||
name: "Test User",
|
||||
@@ -96,7 +96,7 @@ class RequestsControllerTest < ActionDispatch::IntegrationTest
|
||||
end
|
||||
|
||||
test "should create entry with only one translation" do
|
||||
assert_difference(["User.count", "Entry.count"], 1) do
|
||||
assert_difference([ "User.count", "Entry.count" ], 1) do
|
||||
post requests_path, params: {
|
||||
entry: {
|
||||
name: "Single Translation",
|
||||
@@ -115,7 +115,7 @@ class RequestsControllerTest < ActionDispatch::IntegrationTest
|
||||
end
|
||||
|
||||
test "should create entry with multiple translations" do
|
||||
assert_difference(["User.count", "Entry.count"], 1) do
|
||||
assert_difference([ "User.count", "Entry.count" ], 1) do
|
||||
post requests_path, params: {
|
||||
entry: {
|
||||
name: "Multi Lingual",
|
||||
|
||||
@@ -3,7 +3,7 @@ require "test_helper"
|
||||
class EntryRequestFlowTest < ActionDispatch::IntegrationTest
|
||||
test "complete flow: request -> admin approve -> user accepts -> entry active" do
|
||||
# Step 1: Public user submits entry request
|
||||
assert_difference(["User.count", "Entry.count"], 1) do
|
||||
assert_difference([ "User.count", "Entry.count" ], 1) do
|
||||
post requests_path, params: {
|
||||
entry: {
|
||||
name: "Flow Test User",
|
||||
@@ -110,7 +110,7 @@ class EntryRequestFlowTest < ActionDispatch::IntegrationTest
|
||||
# Admin rejects it
|
||||
login_as(users(:admin_user))
|
||||
|
||||
assert_difference(["User.count", "Entry.count"], -1) do
|
||||
assert_difference([ "User.count", "Entry.count" ], -1) do
|
||||
delete reject_admin_request_path(entry)
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user