Stufe 4c (#764): Bezeichner auf Englisch - Typen, Methoden, Felder, Parameter, Locals, Testnamen
Mit Roslyn umbenannt (Verweise folgen, Zeichenketten bleiben unberuehrt). Nicht umbenannt, weil gespeichert oder ueber die API gebunden (Stufe 4e): Properties, Record-Parameter, Enum-Member sowie die Parameter der Endpunkt-Handler (Routen-/Query-Bindung ueber den Namen). Die JSON-Felder anonymer Objekte bleiben ausdruecklich benannt (JsonFilter: pfad). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
837a634a22
commit
77062facc9
@@ -15,16 +15,16 @@ namespace ClawdDotNet.Web.Tests;
|
||||
public sealed class SecretMaskingTests
|
||||
{
|
||||
[Fact]
|
||||
public void Ein_Passwort_kommt_nicht_heraus()
|
||||
public void A_password_does_not_come_out()
|
||||
{
|
||||
var einstellungen = new Dictionary<string, object?>
|
||||
var settings = new Dictionary<string, object?>
|
||||
{
|
||||
["host"] = "mail.example",
|
||||
["port"] = 993,
|
||||
["password"] = "sehr-geheim"
|
||||
};
|
||||
|
||||
var dto = Mapping.ToDto("Mail", einstellungen);
|
||||
var dto = Mapping.ToDto("Mail", settings);
|
||||
|
||||
// Keys.ShouldContain instead of ShouldContainKey: the DTOs hand out
|
||||
// IReadOnlyDictionary, and Shouldly's dictionary extensions sit
|
||||
@@ -39,7 +39,7 @@ public sealed class SecretMaskingTests
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Ein_leeres_Geheimnis_gilt_als_nicht_gesetzt()
|
||||
public void An_empty_secret_counts_as_not_set()
|
||||
{
|
||||
var dto = Mapping.ToDto("Mail", new Dictionary<string, object?>
|
||||
{
|
||||
@@ -63,25 +63,25 @@ public sealed class SecretMaskingTests
|
||||
[InlineData("connectionString")]
|
||||
[InlineData("apiHash")]
|
||||
[InlineData("webUiToken")]
|
||||
public void Jeder_bekannte_Geheimnisname_wird_maskiert(string schluessel)
|
||||
public void Every_known_secret_name_is_masked(string key)
|
||||
{
|
||||
// The list comes from ConfigSecrets and not from a second one here: a
|
||||
// second would be the one forgotten with the next new tool.
|
||||
ConfigSecrets.IsSecretKey(schluessel).ShouldBeTrue();
|
||||
ConfigSecrets.IsSecretKey(key).ShouldBeTrue();
|
||||
|
||||
Mapping.ToDto("X", new Dictionary<string, object?> { [schluessel] = "geheim" })
|
||||
.Values.Keys.ShouldNotContain(schluessel);
|
||||
Mapping.ToDto("X", new Dictionary<string, object?> { [key] = "geheim" })
|
||||
.Values.Keys.ShouldNotContain(key);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Die_Schreibweise_des_Schluessels_spielt_keine_Rolle()
|
||||
public void The_spelling_of_the_key_does_not_matter()
|
||||
{
|
||||
Mapping.ToDto("X", new Dictionary<string, object?> { ["PASSWORD"] = "geheim" })
|
||||
.Values.ShouldBeEmpty();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Ein_serialisiertes_DTO_enthaelt_das_Geheimnis_nicht()
|
||||
public void A_serialised_DTO_does_not_contain_the_secret()
|
||||
{
|
||||
// The test that really counts: not the structure, but what goes over the
|
||||
// line.
|
||||
|
||||
Reference in New Issue
Block a user