Allinea le spec alla policy password e prepara i piani di test.
Senza questo la suite locale fallisce sulla complessità password e sui piani mancanti. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -5,7 +5,7 @@ RSpec.describe Match, "scheduling scopes" do
|
|||||||
Club.create!(name: "Sched Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff")
|
Club.create!(name: "Sched Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff")
|
||||||
end
|
end
|
||||||
let!(:team) { club.teams.create!(name: "U16", sport: "volleyball") }
|
let!(:team) { club.teams.create!(name: "U16", sport: "volleyball") }
|
||||||
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "Password123", role: "coach") }
|
||||||
|
|
||||||
it "scheduled_for_live esclude partite già passate oggi" do
|
it "scheduled_for_live esclude partite già passate oggi" do
|
||||||
past = team.matches.create!(opponent_name: "Past", scheduled_at: 2.hours.ago, sets_to_win: 3)
|
past = team.matches.create!(opponent_name: "Past", scheduled_at: 2.hours.ago, sets_to_win: 3)
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ require "rails_helper"
|
|||||||
RSpec.describe Recording do
|
RSpec.describe Recording do
|
||||||
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
||||||
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "Password123", role: "coach") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
||||||
let!(:session) do
|
let!(:session) do
|
||||||
StreamSession.create!(
|
StreamSession.create!(
|
||||||
|
|||||||
@@ -9,6 +9,10 @@ RSpec.configure do |config|
|
|||||||
config.infer_spec_type_from_file_location!
|
config.infer_spec_type_from_file_location!
|
||||||
config.filter_rails_from_backtrace!
|
config.filter_rails_from_backtrace!
|
||||||
|
|
||||||
|
config.before(:suite) do
|
||||||
|
load Rails.root.join("db/seeds/plans.rb")
|
||||||
|
end
|
||||||
|
|
||||||
config.before(:each, type: :request) do
|
config.before(:each, type: :request) do
|
||||||
host! "www.example.com"
|
host! "www.example.com"
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
require "rails_helper"
|
require "rails_helper"
|
||||||
|
|
||||||
RSpec.describe "Admin club replays", type: :request do
|
RSpec.describe "Admin club replays", type: :request do
|
||||||
let!(:admin) { AdminAccount.create!(username: "ops", password: "secret123") }
|
let!(:admin) { AdminAccount.create!(username: "ops", password: "Password123") }
|
||||||
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team) { club.teams.create!(name: "Tigers", sport: "volleyball") }
|
let!(:team) { club.teams.create!(name: "Tigers", sport: "volleyball") }
|
||||||
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "Password123", role: "coach") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.ago) }
|
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.ago) }
|
||||||
let!(:session) do
|
let!(:session) do
|
||||||
StreamSession.create!(match: match, user: user, platform: "matchlivetv", status: "ended", ended_at: 1.hour.ago)
|
StreamSession.create!(match: match, user: user, platform: "matchlivetv", status: "ended", ended_at: 1.hour.ago)
|
||||||
@@ -19,7 +19,7 @@ RSpec.describe "Admin club replays", type: :request do
|
|||||||
end
|
end
|
||||||
|
|
||||||
before do
|
before do
|
||||||
post admin_login_path, params: { username: "ops", password: "secret123" }
|
post admin_login_path, params: { username: "ops", password: "Password123" }
|
||||||
end
|
end
|
||||||
|
|
||||||
it "mostra l'archivio replay della società" do
|
it "mostra l'archivio replay della società" do
|
||||||
|
|||||||
@@ -3,10 +3,10 @@
|
|||||||
require "rails_helper"
|
require "rails_helper"
|
||||||
|
|
||||||
RSpec.describe "Api::V1::Sports", type: :request do
|
RSpec.describe "Api::V1::Sports", type: :request do
|
||||||
let!(:user) { User.create!(email: "s@example.com", password: "secret123", name: "U", role: "coach") }
|
let!(:user) { User.create!(email: "s@example.com", password: "Password123", name: "U", role: "coach") }
|
||||||
|
|
||||||
it "GET /api/v1/sports restituisce il catalogo" do
|
it "GET /api/v1/sports restituisce il catalogo" do
|
||||||
post "/api/v1/auth/login", params: { email: user.email, password: "secret123" }
|
post "/api/v1/auth/login", params: { email: user.email, password: "Password123" }
|
||||||
token = response.parsed_body["access_token"]
|
token = response.parsed_body["access_token"]
|
||||||
get "/api/v1/sports", headers: { "Authorization" => "Bearer #{token}" }
|
get "/api/v1/sports", headers: { "Authorization" => "Bearer #{token}" }
|
||||||
expect(response).to have_http_status(:ok)
|
expect(response).to have_http_status(:ok)
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ require "rails_helper"
|
|||||||
|
|
||||||
RSpec.describe "Public club billing", type: :request do
|
RSpec.describe "Public club billing", type: :request do
|
||||||
let!(:coach) do
|
let!(:coach) do
|
||||||
User.create!(email: "billing-coach@test.it", name: "Coach", password: "password123", role: "coach")
|
User.create!(email: "billing-coach@test.it", name: "Coach", password: "Password123", role: "coach")
|
||||||
end
|
end
|
||||||
let!(:club) do
|
let!(:club) do
|
||||||
c = Club.create!(name: "Billing HTTP Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff",
|
c = Club.create!(name: "Billing HTTP Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff",
|
||||||
@@ -17,7 +17,7 @@ RSpec.describe "Public club billing", type: :request do
|
|||||||
end
|
end
|
||||||
|
|
||||||
def login!
|
def login!
|
||||||
post public_login_path, params: { email: coach.email, password: "password123" }
|
post public_login_path, params: { email: coach.email, password: "Password123" }
|
||||||
end
|
end
|
||||||
|
|
||||||
it "mostra pagamenti e fatture in billing" do
|
it "mostra pagamenti e fatture in billing" do
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ end
|
|||||||
|
|
||||||
RSpec.describe "Public team directory", type: :request do
|
RSpec.describe "Public team directory", type: :request do
|
||||||
let(:club) { Club.create!(name: "ASD Eagles", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let(:club) { Club.create!(name: "ASD Eagles", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let(:user) { User.create!(email: "dir2@test.com", name: "Coach", password: "password123", role: "coach") }
|
let(:user) { User.create!(email: "dir2@test.com", name: "Coach", password: "Password123", role: "coach") }
|
||||||
let!(:team) { club.teams.create!(name: "Tigers Volley U17", sport_key: "pallavolo") }
|
let!(:team) { club.teams.create!(name: "Tigers Volley U17", sport_key: "pallavolo") }
|
||||||
|
|
||||||
before do
|
before do
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
require "rails_helper"
|
require "rails_helper"
|
||||||
|
|
||||||
RSpec.describe Billing::AdminCompedSubscription do
|
RSpec.describe Billing::AdminCompedSubscription do
|
||||||
let(:admin) { AdminAccount.create!(username: "ops", password: "secret123") }
|
let(:admin) { AdminAccount.create!(username: "ops", password: "Password123") }
|
||||||
let(:club) { Club.create!(name: "Sponsor FC", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let(:club) { Club.create!(name: "Sponsor FC", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
|
|
||||||
before do
|
before do
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
require "rails_helper"
|
require "rails_helper"
|
||||||
|
|
||||||
RSpec.describe Billing::Stripe::CheckoutSession do
|
RSpec.describe Billing::Stripe::CheckoutSession do
|
||||||
let(:user) { User.create!(email: "checkout@test.it", name: "Owner", password: "password123", role: "coach") }
|
let(:user) { User.create!(email: "checkout@test.it", name: "Owner", password: "Password123", role: "coach") }
|
||||||
let(:club) do
|
let(:club) do
|
||||||
Club.create!(
|
Club.create!(
|
||||||
name: "Checkout Club", sport: "volleyball",
|
name: "Checkout Club", sport: "volleyball",
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
require "rails_helper"
|
require "rails_helper"
|
||||||
|
|
||||||
RSpec.describe Billing::Stripe::EnsureCustomer do
|
RSpec.describe Billing::Stripe::EnsureCustomer do
|
||||||
let(:user) { User.create!(email: "ensure@test.it", name: "U", password: "password123", role: "coach") }
|
let(:user) { User.create!(email: "ensure@test.it", name: "U", password: "Password123", role: "coach") }
|
||||||
let(:club) do
|
let(:club) do
|
||||||
Club.create!(name: "Ensure Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff")
|
Club.create!(name: "Ensure Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff")
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ require "rails_helper"
|
|||||||
RSpec.describe Mediamtx::CleanupOrphanPaths do
|
RSpec.describe Mediamtx::CleanupOrphanPaths do
|
||||||
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
||||||
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "Password123", role: "coach") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
||||||
|
|
||||||
let(:client) { instance_double(Mediamtx::Client) }
|
let(:client) { instance_double(Mediamtx::Client) }
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ require "rails_helper"
|
|||||||
RSpec.describe Recordings::AccessPolicy do
|
RSpec.describe Recordings::AccessPolicy do
|
||||||
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
||||||
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "Password123", role: "coach") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
||||||
let!(:session) do
|
let!(:session) do
|
||||||
StreamSession.create!(match: match, user: user, platform: "matchlivetv", status: "ended")
|
StreamSession.create!(match: match, user: user, platform: "matchlivetv", status: "ended")
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ require "rails_helper"
|
|||||||
RSpec.describe Recordings::CleanupLocal do
|
RSpec.describe Recordings::CleanupLocal do
|
||||||
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
||||||
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "Password123", role: "coach") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
||||||
|
|
||||||
let(:recordings_root) { Rails.root.join("tmp/recordings_spec").to_s }
|
let(:recordings_root) { Rails.root.join("tmp/recordings_spec").to_s }
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ RSpec.describe Recordings::ClubArchive do
|
|||||||
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team_a) { club.teams.create!(name: "A", sport: "volleyball") }
|
let!(:team_a) { club.teams.create!(name: "A", sport: "volleyball") }
|
||||||
let!(:team_b) { club.teams.create!(name: "B", sport: "volleyball") }
|
let!(:team_b) { club.teams.create!(name: "B", sport: "volleyball") }
|
||||||
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "Password123", role: "coach") }
|
||||||
let!(:match_a) { team_a.matches.create!(opponent_name: "Rival A", scheduled_at: 1.day.ago) }
|
let!(:match_a) { team_a.matches.create!(opponent_name: "Rival A", scheduled_at: 1.day.ago) }
|
||||||
let!(:match_b) { team_b.matches.create!(opponent_name: "Rival B", scheduled_at: 1.day.ago) }
|
let!(:match_b) { team_b.matches.create!(opponent_name: "Rival B", scheduled_at: 1.day.ago) }
|
||||||
let!(:session_a) do
|
let!(:session_a) do
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ require "rails_helper"
|
|||||||
RSpec.describe Recordings::ClubStats do
|
RSpec.describe Recordings::ClubStats do
|
||||||
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
||||||
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "Password123", role: "coach") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
||||||
let!(:session) do
|
let!(:session) do
|
||||||
StreamSession.create!(match: match, user: user, platform: "matchlivetv", status: "ended")
|
StreamSession.create!(match: match, user: user, platform: "matchlivetv", status: "ended")
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ require "rails_helper"
|
|||||||
RSpec.describe Recordings::Delete do
|
RSpec.describe Recordings::Delete do
|
||||||
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
||||||
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "Password123", role: "coach") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
||||||
let!(:session) do
|
let!(:session) do
|
||||||
StreamSession.create!(match: match, user: user, platform: "youtube", status: "ended")
|
StreamSession.create!(match: match, user: user, platform: "youtube", status: "ended")
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ require "rails_helper"
|
|||||||
RSpec.describe Recordings::ExtendExpiry do
|
RSpec.describe Recordings::ExtendExpiry do
|
||||||
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team) { club.teams.create!(name: "Tigers", sport: "volleyball") }
|
let!(:team) { club.teams.create!(name: "Tigers", sport: "volleyball") }
|
||||||
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "Password123", role: "coach") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.ago) }
|
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.ago) }
|
||||||
let!(:session) do
|
let!(:session) do
|
||||||
StreamSession.create!(match: match, user: user, platform: "matchlivetv", status: "ended", ended_at: 1.hour.ago)
|
StreamSession.create!(match: match, user: user, platform: "matchlivetv", status: "ended", ended_at: 1.hour.ago)
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ require "rails_helper"
|
|||||||
RSpec.describe Recordings::FinalizeSession do
|
RSpec.describe Recordings::FinalizeSession do
|
||||||
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
||||||
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "Password123", role: "coach") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
||||||
let!(:session) do
|
let!(:session) do
|
||||||
StreamSession.create!(
|
StreamSession.create!(
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ require "rails_helper"
|
|||||||
RSpec.describe Recordings::IncrementViews do
|
RSpec.describe Recordings::IncrementViews do
|
||||||
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
||||||
let!(:user) { User.create!(email: "c@test.com", name: "C", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "c@test.com", name: "C", password: "Password123", role: "coach") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
||||||
let!(:session) { StreamSession.create!(match: match, user: user, platform: "matchlivetv", status: "ended") }
|
let!(:session) { StreamSession.create!(match: match, user: user, platform: "matchlivetv", status: "ended") }
|
||||||
let!(:recording) do
|
let!(:recording) do
|
||||||
|
|||||||
@@ -2,9 +2,9 @@ require "rails_helper"
|
|||||||
|
|
||||||
RSpec.describe Recordings::NotifyReady do
|
RSpec.describe Recordings::NotifyReady do
|
||||||
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:owner) { User.create!(email: "owner@test.com", name: "Owner", password: "password123", role: "coach") }
|
let!(:owner) { User.create!(email: "owner@test.com", name: "Owner", password: "Password123", role: "coach") }
|
||||||
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
||||||
let!(:user) { User.create!(email: "c@test.com", name: "C", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "c@test.com", name: "C", password: "Password123", role: "coach") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
||||||
let!(:session) { StreamSession.create!(match: match, user: user, platform: "matchlivetv", status: "ended") }
|
let!(:session) { StreamSession.create!(match: match, user: user, platform: "matchlivetv", status: "ended") }
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
require "rails_helper"
|
require "rails_helper"
|
||||||
|
|
||||||
RSpec.describe Scoring::ApplyAction do
|
RSpec.describe Scoring::ApplyAction do
|
||||||
let!(:user) { User.create!(email: "score@test.it", name: "U", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "score@test.it", name: "U", password: "Password123", role: "coach") }
|
||||||
let!(:club) { Club.create!(name: "C", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "C", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team) { club.teams.create!(name: "T", sport: "volleyball") }
|
let!(:team) { club.teams.create!(name: "T", sport: "volleyball") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Opp", sport: "volleyball", sets_to_win: 3) }
|
let!(:match) { team.matches.create!(opponent_name: "Opp", sport: "volleyball", sets_to_win: 3) }
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ RSpec.describe Scoring::Engines::GenericEngine do
|
|||||||
let!(:club) { Club.create!(name: "C", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "C", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team) { club.teams.create!(name: "T", sport: "altro") }
|
let!(:team) { club.teams.create!(name: "T", sport: "altro") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Opp", sport: "altro") }
|
let!(:match) { team.matches.create!(opponent_name: "Opp", sport: "altro") }
|
||||||
let!(:user) { User.create!(email: "g@example.com", password: "secret123", name: "Coach") }
|
let!(:user) { User.create!(email: "g@example.com", password: "Password123", name: "Coach") }
|
||||||
let!(:session) { StreamSession.create!(match: match, user: user, status: "live", platform: "matchlivetv") }
|
let!(:session) { StreamSession.create!(match: match, user: user, status: "live", platform: "matchlivetv") }
|
||||||
|
|
||||||
it "incrementa solo il contatore senza chiudere set" do
|
it "incrementa solo il contatore senza chiudere set" do
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ RSpec.describe Scoring::PeriodData do
|
|||||||
end
|
end
|
||||||
|
|
||||||
RSpec.describe "Basket advance_period con periodo corrotto" do
|
RSpec.describe "Basket advance_period con periodo corrotto" do
|
||||||
let!(:user) { User.create!(email: "period@test.it", name: "U", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "period@test.it", name: "U", password: "Password123", role: "coach") }
|
||||||
let!(:club) { Club.create!(name: "C", sport: "basket", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "C", sport: "basket", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team) { club.teams.create!(name: "U13", sport_key: "basket") }
|
let!(:team) { club.teams.create!(name: "U13", sport_key: "basket") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Opp", sport: "basket") }
|
let!(:match) { team.matches.create!(opponent_name: "Opp", sport: "basket") }
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
require "rails_helper"
|
require "rails_helper"
|
||||||
|
|
||||||
RSpec.describe Scoring::SyncState do
|
RSpec.describe Scoring::SyncState do
|
||||||
let!(:user) { User.create!(email: "sync@test.it", name: "U", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "sync@test.it", name: "U", password: "Password123", role: "coach") }
|
||||||
let!(:club) { Club.create!(name: "C", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "C", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team) { club.teams.create!(name: "T", sport: "volleyball") }
|
let!(:team) { club.teams.create!(name: "T", sport: "volleyball") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Opp", sport: "volleyball", sets_to_win: 3) }
|
let!(:match) { team.matches.create!(opponent_name: "Opp", sport: "volleyball", sets_to_win: 3) }
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
require "rails_helper"
|
require "rails_helper"
|
||||||
|
|
||||||
RSpec.describe "Volley close_set" do
|
RSpec.describe "Volley close_set" do
|
||||||
let!(:user) { User.create!(email: "volley-close@test.it", name: "U", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "volley-close@test.it", name: "U", password: "Password123", role: "coach") }
|
||||||
let!(:club) { Club.create!(name: "C", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "C", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team) { club.teams.create!(name: "T", sport: "volleyball") }
|
let!(:team) { club.teams.create!(name: "T", sport: "volleyball") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Opp", sport: "volleyball", sets_to_win: 3) }
|
let!(:match) { team.matches.create!(opponent_name: "Opp", sport: "volleyball", sets_to_win: 3) }
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ require "rails_helper"
|
|||||||
RSpec.describe Teams::Entitlements, "recordings" do
|
RSpec.describe Teams::Entitlements, "recordings" do
|
||||||
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let!(:club) { Club.create!(name: "Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
let!(:team) { club.teams.create!(name: "Team", sport: "volleyball") }
|
||||||
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "password123", role: "coach") }
|
let!(:user) { User.create!(email: "coach@test.com", name: "Coach", password: "Password123", role: "coach") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
let!(:match) { team.matches.create!(opponent_name: "Rival", scheduled_at: 1.day.from_now) }
|
||||||
let!(:session) do
|
let!(:session) do
|
||||||
StreamSession.create!(match: match, user: user, platform: "matchlivetv", status: "ended")
|
StreamSession.create!(match: match, user: user, platform: "matchlivetv", status: "ended")
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ RSpec.describe Teams::Entitlements do
|
|||||||
end
|
end
|
||||||
|
|
||||||
it "limits transmission invites on free plan" do
|
it "limits transmission invites on free plan" do
|
||||||
user = User.create!(email: "t1@test.com", name: "T1", password: "password123", role: "coach")
|
user = User.create!(email: "t1@test.com", name: "T1", password: "Password123", role: "coach")
|
||||||
UserTeam.create!(user: user, team: team, role: "member", staff_kind: "transmission")
|
UserTeam.create!(user: user, team: team, role: "member", staff_kind: "transmission")
|
||||||
ent = described_class.new(team)
|
ent = described_class.new(team)
|
||||||
expect { ent.assert_can_invite! }.to raise_error(Teams::EntitlementError, /trasmissione/)
|
expect { ent.assert_can_invite! }.to raise_error(Teams::EntitlementError, /trasmissione/)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
require "rails_helper"
|
require "rails_helper"
|
||||||
|
|
||||||
RSpec.describe Teams::PublicDirectory do
|
RSpec.describe Teams::PublicDirectory do
|
||||||
let(:user) { User.create!(email: "dir-#{SecureRandom.hex(4)}@test.com", name: "Dir", password: "password123", role: "coach") }
|
let(:user) { User.create!(email: "dir-#{SecureRandom.hex(4)}@test.com", name: "Dir", password: "Password123", role: "coach") }
|
||||||
let(:club) { Club.create!(name: "ASD Directory #{SecureRandom.hex(3)}", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let(:club) { Club.create!(name: "ASD Directory #{SecureRandom.hex(3)}", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let!(:team_live) { club.teams.create!(name: "Live Team", sport_key: "pallavolo") }
|
let!(:team_live) { club.teams.create!(name: "Live Team", sport_key: "pallavolo") }
|
||||||
let!(:team_replay) { club.teams.create!(name: "Replay Team", sport_key: "basket") }
|
let!(:team_replay) { club.teams.create!(name: "Replay Team", sport_key: "basket") }
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
require "rails_helper"
|
require "rails_helper"
|
||||||
|
|
||||||
RSpec.describe Webhooks::MediamtxHandler do
|
RSpec.describe Webhooks::MediamtxHandler do
|
||||||
let(:user) { User.create!(email: "c@test.com", name: "C", password: "password123", role: "coach") }
|
let(:user) { User.create!(email: "c@test.com", name: "C", password: "Password123", role: "coach") }
|
||||||
let(:club) { Club.create!(name: "MTX Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
let(:club) { Club.create!(name: "MTX Club", sport: "volleyball", primary_color: "#e53935", secondary_color: "#ffffff") }
|
||||||
let(:team) { club.teams.create!(name: "T", sport: "volleyball") }
|
let(:team) { club.teams.create!(name: "T", sport: "volleyball") }
|
||||||
let!(:match) { team.matches.create!(opponent_name: "Away") }
|
let!(:match) { team.matches.create!(opponent_name: "Away") }
|
||||||
@@ -12,6 +12,10 @@ RSpec.describe Webhooks::MediamtxHandler do
|
|||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
before do
|
||||||
|
allow_any_instance_of(Mediamtx::Client).to receive(:set_path_recording)
|
||||||
|
end
|
||||||
|
|
||||||
it "transitions to reconnecting on disconnect" do
|
it "transitions to reconnecting on disconnect" do
|
||||||
described_class.new(event: "disconnect", session_id: session.id).call
|
described_class.new(event: "disconnect", session_id: session.id).call
|
||||||
expect(session.reload.status).to eq("reconnecting")
|
expect(session.reload.status).to eq("reconnecting")
|
||||||
|
|||||||
Reference in New Issue
Block a user