fix/testing #6

Merged
notazof merged 3 commits from fix/testing into main 2026-07-12 06:03:40 +01:00
3 changed files with 5 additions and 27 deletions
Showing only changes of commit 713f66f1a7 - Show all commits
Paul Schneider 2026-07-12 04:36:35 +01:00

View file

@ -18,11 +18,12 @@ namespace Yavsc.Org.Tests
[Fact] [Fact]
public async Task ObtainServiceToken() public async Task ObtainServiceToken()
{ {
var serverUrl = _serverFixture.Addresses.FirstOrDefault(u => u.StartsWith("https:")); var serverUrl = _serverFixture.SiteSettings.Authority;
if (string.IsNullOrEmpty(serverUrl)) if (string.IsNullOrEmpty(serverUrl))
throw new InvalidOperationException("No HTTPS server address found"); throw new InvalidOperationException("No HTTPS server address found");
HttpClient client = NewHttpClient(); HttpClient client = NewHttpClient();
var disco = await client.GetDiscoveryDocumentAsync(serverUrl); var disco = await client.GetDiscoveryDocumentAsync(serverUrl);
if (disco.IsError) throw new Exception(disco.Error); if (disco.IsError) throw new Exception(disco.Error);
@ -45,7 +46,7 @@ namespace Yavsc.Org.Tests
[Fact] [Fact]
public async Task ObtainResourceOwnerPasswordToken() public async Task ObtainResourceOwnerPasswordToken()
{ {
var serverUrl = _serverFixture.Addresses.FirstOrDefault(u => u.StartsWith("https:")); var serverUrl = _serverFixture.SiteSettings.Authority;
if (string.IsNullOrEmpty(serverUrl)) if (string.IsNullOrEmpty(serverUrl))
throw new InvalidOperationException("No HTTPS server address found"); throw new InvalidOperationException("No HTTPS server address found");

View file

@ -1,6 +1,6 @@
{ {
"Site": { "Site": {
"Authority": "https://mercure.pschneider.fr", "Authority": "https://localhost:5001",
"Title": "Yavsc dev", "Title": "Yavsc dev",
"Slogan": "Yavsc : WIP.", "Slogan": "Yavsc : WIP.",
"Banner": "/images/yavsc.png", "Banner": "/images/yavsc.png",
@ -63,5 +63,5 @@
"Password": "f/\\kePassw0rd" "Password": "f/\\kePassw0rd"
} }
} }
} }

View file

@ -10,29 +10,6 @@ namespace Yavsc.Migrations
/// <inheritdoc /> /// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder) protected override void Up(MigrationBuilder migrationBuilder)
{ {
// Assainir les orphelins AVANT d'enforcer la FK Restrict.
// En prod (Postgres), la migration aurait sinon planté
// sur des billets/commentaires dont l'AuthorId pointe
// vers un user déjà supprimé. La logique métier refuse
// désormais l'orphelin (cf. BlogSpotService.Details) — on
// aligne l'état de la base avec ce contrat.
migrationBuilder.Sql(@"
DO $$
DECLARE n_comments int;
n_posts int;
BEGIN
DELETE FROM ""Comment""
WHERE ""AuthorId"" NOT IN (SELECT ""Id"" FROM ""AspNetUsers"");
GET DIAGNOSTICS n_comments = ROW_COUNT;
DELETE FROM ""BlogSpot""
WHERE ""AuthorId"" NOT IN (SELECT ""Id"" FROM ""AspNetUsers"");
GET DIAGNOSTICS n_posts = ROW_COUNT;
RAISE NOTICE 'EnforceBlogAuthorFKs: % orphaned comments deleted, % orphaned blog posts deleted',
n_comments, n_posts;
END $$;
");
migrationBuilder.DropForeignKey( migrationBuilder.DropForeignKey(
name: "FK_BlogSpot_AspNetUsers_AuthorId", name: "FK_BlogSpot_AspNetUsers_AuthorId",