public static void Verify(IExecutableQuery query) { Verify( WriterFactory.CreateTextWriter(query.GetQuery()), GetDefaultNamer(), new ExecutableQueryFailure(query, GetReporter())); }
public void PacketsDocumentation() { var builder = new StringBuilder(); builder.AppendLine("# NosCore.Packets's Documentation"); builder.AppendLine("## ClientPackets :"); foreach (IGrouping <string, Type> packetGroup in GetPacketsWithinNamespace("ClientPackets")) { builder.AppendLine(); builder.AppendLine($"### {packetGroup.Key}"); foreach (Type packet in GetPackets(packetGroup)) { builder.AppendLine($"- [{packet.GetCustomAttribute<PacketHeaderAttribute>()!.Identification}](src/NosCore.Packets/ClientPackets/{packetGroup.Key}/{packet}.cs)"); } } builder.AppendLine(); builder.AppendLine("## ServerPackets :"); foreach (IGrouping <string, Type> packetGroup in GetPacketsWithinNamespace("ServerPackets")) { builder.AppendLine(); builder.AppendLine($"### {packetGroup.Key}"); foreach (Type packet in GetPackets(packetGroup)) { builder.AppendLine($"- [{packet.GetCustomAttribute<PacketHeaderAttribute>()!.Identification}](src/NosCore.Packets/ServerPackets/{packetGroup.Key}/{packet}.cs)"); } } Approvals.Verify(WriterFactory.CreateTextWriter(builder.ToString(), "md")); }
public static void VerifyScrubbed(MailMessage email, Func <string, string> scrubber) { var emailText = CreateEmail(email); emailText = scrubber.Invoke(emailText); Approvals.Verify(WriterFactory.CreateTextWriter(emailText, "eml")); }
public void TemplateHasCorrectSymbols() { using (ApprovalResults.ForScenario(Suffix)) { var text = Decompiler.Decompile(afterAssemblyPath, "Costura.AssemblyLoader"); Approvals.Verify(WriterFactory.CreateTextWriter(text), new CustomNamer(), Approvals.GetReporter()); } }
public static void Verify(string text, Func <string, string> scrubber = null) { if (scrubber == null) { scrubber = ScrubberUtils.NO_SCRUBBER; } Verify(WriterFactory.CreateTextWriter(scrubber(text))); }
public void CustomNamerShouldNotDependOnSetCallerTest() { var approvalText = "CustomNamerShouldBeSubstitutable"; var writer = WriterFactory.CreateTextWriter(approvalText); var namer = new CustomNamer(); var reporter = new MethodLevelReporter(); Approvals.Verify(writer, namer, reporter); }
public static void VerifyScrubbed(MailMessage email, params Func <string, string>[] scrubbers) { var emailText = CreateEmail(email); foreach (var scrubber in scrubbers) { emailText = scrubber.Invoke(emailText); } Approvals.Verify(WriterFactory.CreateTextWriter(emailText, "eml")); }
/// <summary> /// Throws exception if Xml is incorrectly formatted /// </summary> public static void VerifyText(string text, string fileExtensionWithoutDot = "xml", bool safely = false, Func <string, string> scrubber = null) { if (scrubber == null) { scrubber = ScrubberUtils.NO_SCRUBBER; } text = XmlUtils.FormatXml(scrubber.Invoke(text), safe: safely); Approvals.Verify(WriterFactory.CreateTextWriter(text, fileExtensionWithoutDot)); }
public static void VerifyWithExtension(string text, string fileExtensionWithDot, Func <string, string> scrubber = null) { if (scrubber == null) { scrubber = ScrubberUtils.NO_SCRUBBER; } var fileExtensionWithoutDot = fileExtensionWithDot.TrimStart('.'); Verify(WriterFactory.CreateTextWriter(scrubber(text), fileExtensionWithoutDot)); }
public static void VerifyOrderedXml(string text, Func <string, string> scrubber = null) { if (scrubber == null) { scrubber = ScrubberUtils.NO_SCRUBBER; } text = XmlUtils.FormatXmlWithOrderedAttributes(scrubber.Invoke(text)); Approvals.Verify(WriterFactory.CreateTextWriter(text, "xml")); }
// ReSharper disable once UnusedParameter.Local static void MyApprove(string text, object IGNORE_PAST_THIS = null, [CallerFilePath] string filepath = null, [CallerMemberName] string membername = null) { var writer = WriterFactory.CreateTextWriter(text); var filename = Path.GetFileNameWithoutExtension(filepath); var filedir = Path.GetDirectoryName(filepath); var namer = new SaneNamer { Name = filename + "." + membername, SourcePath = filedir }; var reporter = new DiffReporter(); Approver.Verify(new FileApprover(writer, namer, true), reporter); }
public static void VerifyXml(string text, [CallerFilePath] string filepath = null, [CallerMemberName] string membername = null) { var writer = WriterFactory.CreateTextWriter(text, ".xml"); var filename = Path.GetFileNameWithoutExtension(filepath); var filedir = Path.Combine(Path.GetDirectoryName(filepath), "Result"); var namer = new SaneNamer { Name = filename + "." + membername, SourcePath = filedir }; var reporter = new DiffReporter(); Approver.Verify(new FileApprover(writer, namer, true), reporter); }
public void SpeedDocumentation() { var speedService = new SpeedService.SpeedService(); var resultBuilder = new StringBuilder("# Speed Table"); resultBuilder.AppendLine(); foreach (var @class in Enum.GetValues(typeof(CharacterClassType)).Cast <CharacterClassType>()) { resultBuilder.AppendLine($"- {@class} : {speedService.GetSpeed(@class)}"); } Approvals.Verify(WriterFactory.CreateTextWriter(resultBuilder.ToString(), "md")); }
public void HeroExperienceDocumentation() { var heroExperienceService = new HeroExperienceService.HeroExperienceService(); var resultBuilder = new StringBuilder("# Hero Experience Table"); resultBuilder.AppendLine(); for (byte level = 1; level < 61; level++) { resultBuilder.AppendLine( $"- Level {level,2} - XP: {heroExperienceService.GetHeroExperience(level)}"); } Approvals.Verify(WriterFactory.CreateTextWriter(resultBuilder.ToString(), "md")); }
public void FairyExperienceDocumentation() { var experienceService = new FairyExperienceService.FairyExperienceService(); var resultBuilder = new StringBuilder("# Fairy Experience Table"); resultBuilder.AppendLine(); for (byte level = 0; level < 80; level++) { resultBuilder.AppendLine( $"- {level,2}% -> {level + 1,2}% - XP: {experienceService.GetFairyExperience(level)}"); } Approvals.Verify(WriterFactory.CreateTextWriter(resultBuilder.ToString(), "md")); }
public void DignityDocumentation() { var dignityService = new DignityService.DignityService(); var resultBuilder = new StringBuilder("# Dignity Table"); resultBuilder.AppendLine(); foreach (var dignity in Enum.GetValues(typeof(DignityType)).Cast <DignityType>()) { var result = dignityService.GetDignity(dignity); resultBuilder.AppendLine($"- {(byte)dignity,2} {dignity.ToString().PadRight(11)} - Max: {result.Item1} Min: {result.Item2}"); Assert.AreEqual(dignity, dignityService.GetLevelFromDignity(result.Item1)); Assert.AreEqual(dignity, dignityService.GetLevelFromDignity(result.Item2)); } Approvals.Verify(WriterFactory.CreateTextWriter(resultBuilder.ToString(), "md")); }
public void DamageDocumentation() { var damageService = new DamageService.DamageService(); var resultBuilder = new StringBuilder("# Damage Table"); foreach (var @class in Enum.GetValues(typeof(CharacterClassType)).Cast <CharacterClassType>()) { resultBuilder.AppendLine(); resultBuilder.AppendLine($"## Class {@class}"); for (byte level = 1; level < 100; level++) { resultBuilder.AppendLine( $"- Level {level,2} - Damage Min: {damageService.GetMinDamage(@class, level)} Damage Max: {damageService.GetMaxDamage(@class, level)}"); } } Approvals.Verify(WriterFactory.CreateTextWriter(resultBuilder.ToString(), "md")); }
public void SecondaryHitRateDocumentation() { var secondaryHitRateService = new SecondaryHitRateService.SecondaryHitRateService(); var resultBuilder = new StringBuilder("# Secondary HitRate Table"); foreach (var @class in Enum.GetValues(typeof(CharacterClassType)).Cast <CharacterClassType>()) { resultBuilder.AppendLine(); resultBuilder.AppendLine($"## Class {@class}"); for (byte level = 1; level < 100; level++) { resultBuilder.AppendLine( $"- Level {level,2} - HitRate: {secondaryHitRateService.GetSecondaryHitRate(@class, level)}"); } } Approvals.Verify(WriterFactory.CreateTextWriter(resultBuilder.ToString(), "md")); }
public void JobExperienceDocumentation() { var jobExperienceService = new JobExperienceService.JobExperienceService(); var resultBuilder = new StringBuilder("# Job Experience Table"); foreach (var @class in Enum.GetValues(typeof(CharacterClassType)).Cast <CharacterClassType>()) { resultBuilder.AppendLine(); resultBuilder.AppendLine($"## Class {@class}"); for (byte level = 1; level < (@class == CharacterClassType.Adventurer ? 21 : 81); level++) { resultBuilder.AppendLine( $"- Level {level,2} - XP: {jobExperienceService.GetJobExperience(@class, level)}"); } } Approvals.Verify(WriterFactory.CreateTextWriter(resultBuilder.ToString(), "md")); }
public void SpExperienceDocumentation() { var experienceService = new SpExperienceService.SpExperienceService(); var resultBuilder = new StringBuilder("# SP Experience Table"); for (var i = 0; i < 2; i++) { resultBuilder.AppendLine(); resultBuilder.AppendLine($"## {(i == 0 ? "Primary" : "Secondary")} SP"); for (byte level = 1; level < 100; level++) { resultBuilder.AppendLine( $"- Level {level,2} - XP: {experienceService.GetSpExperience(level, i == 1)}"); } } Approvals.Verify(WriterFactory.CreateTextWriter(resultBuilder.ToString(), "md")); }
public void HpDocumentation() { var experienceService = new HpService.HpService(); var resultBuilder = new StringBuilder("# HP Table"); foreach (var @class in Enum.GetValues(typeof(CharacterClassType)).Cast <CharacterClassType>()) { resultBuilder.AppendLine(); resultBuilder.AppendLine($"## Class {@class}"); for (byte level = 1; level < 100; level++) { resultBuilder.AppendLine( $"- Level {level,2} - HP: {experienceService.GetHp(@class, level)}"); } } Approvals.Verify(WriterFactory.CreateTextWriter(resultBuilder.ToString(), "md")); }
public void ApproveApi(string frameworkVersion) { string codeBase = Assembly.GetExecutingAssembly().CodeBase !; UriBuilder uri = new UriBuilder(new Uri(codeBase)); string assemblyPath = Uri.UnescapeDataString(uri.Path); var containingDirectory = Path.GetDirectoryName(assemblyPath); var configurationName = new DirectoryInfo(containingDirectory).Parent.Name; var assemblyFile = Path.GetFullPath( Path.Combine( GetSourceDirectory(), $"../../src/{ProjectName}/bin/{configurationName}/{frameworkVersion}/{ProjectName}.dll")); var assembly = Assembly.LoadFile(Path.GetFullPath(assemblyFile)); var publicApi = ApiGenerator.GeneratePublicApi(assembly, options: null); Approvals.Verify( WriterFactory.CreateTextWriter(publicApi), new ApprovalNamer(ProjectName, frameworkVersion), Approvals.GetReporter()); }
public void ReputationDocumentation() { var reputationService = new ReputationService.ReputationService(); var resultBuilder = new StringBuilder("# Reputation Table"); resultBuilder.AppendLine(); foreach (var reput in Enum.GetValues(typeof(ReputationType)).Cast <ReputationType>()) { var result = reputationService.GetReputation(reput); resultBuilder.AppendLine($"- {(byte)reput,2} {reput.ToString().PadRight(16)} - Min: {result.Item1} Max: {result.Item2}"); if (reput < ReputationType.GreenLegend) { Assert.AreEqual(reput, reputationService.GetLevelFromReputation(result.Item1)); Assert.AreEqual(reput, reputationService.GetLevelFromReputation(result.Item2)); } } Approvals.Verify(WriterFactory.CreateTextWriter(resultBuilder.ToString(), "md")); }
public static void VerifyFile(string linearPathfinderPng, Bitmap bitmap, List <Color> listPixel, string desc) { var filepath = Path.GetFullPath($"../../../../../documentation/{linearPathfinderPng}"); bitmap.Save(filepath, ImageFormat.Png); var builder = new StringBuilder(); builder.AppendLine("# NosCore.Pathfinder's Documentation"); builder.AppendLine($"## {desc}"); builder.AppendLine($"- Filename: {linearPathfinderPng}"); var pixels = string.Join("", listPixel.SelectMany(s => s.Name)); var checksum = string.Join("", SHA256.Create() .ComputeHash(Encoding.UTF8.GetBytes(pixels)).Select(s => s.ToString("x2"))); builder.AppendLine($"- Checksum: {checksum}"); builder.AppendLine($"![brushfire](./{linearPathfinderPng})"); Approvals.Verify(WriterFactory.CreateTextWriter(builder.ToString(), "md")); }
public static void Verify(object text) { Verify(WriterFactory.CreateTextWriter("" + text)); }
public static void VerifyJson(string json) { Verify(WriterFactory.CreateTextWriter(json.FormatJson(), "json")); }
public static void Verify(string text) { Verify(WriterFactory.CreateTextWriter(text)); }
public static void Verify(object text) { Verify(WriterFactory.CreateTextWriter(text.ToString())); }
protected void Verify(string name, string value) { Approvals.Verify(WriterFactory.CreateTextWriter(value), new Namer(name), Approvals.GetReporter()); }
public static void Verify(string text, Func <string, string> scrubber) { Verify(WriterFactory.CreateTextWriter(scrubber(text))); }