public void Output_Success_ApproveApiSurface() { // Arrange var output = new GetEventListOutput( new List <GetEventListOutput.EventRow> { new GetEventListOutput.EventRow( new Guid("C76468FE-86AE-43EC-B2D5-28FC61DA04AA"), new DateTime(2019, 10, 5, 19, 0, 0), null, "The Title", "The Location", "The MeetingPoint" ) }); // Act presenter.Output(output); var jsonObject = presenter.GetJsonObject(); // Assert var json = JsonConvert.SerializeObject(jsonObject); Approvals.VerifyJson(json); }
public void TryParseRevision_test(string testName, bool expectedReturn, bool serialThrows = false) { using (ApprovalResults.ForScenario(testName.Replace(' ', '_'))) { string path = Path.Combine(TestContext.CurrentContext.TestDirectory, "TestData/RevisionReader", testName + ".bin"); ArraySegment <byte> chunk = File.ReadAllBytes(path); RevisionReader.TestAccessor.TryParseRevision(chunk, _getEncodingByGitName, _logOutputEncoding, _sixMonths, out GitRevision rev) .Should().Be(expectedReturn); // No LocalTime for the time stamps JsonSerializerSettings timeZoneSettings = new() { DateTimeZoneHandling = DateTimeZoneHandling.Utc }; if (serialThrows) { Action act = () => JsonConvert.SerializeObject(rev); act.Should().Throw <JsonSerializationException>(); } else if (expectedReturn) { Approvals.VerifyJson(JsonConvert.SerializeObject(rev, timeZoneSettings)); } } } }
public void Can_Apply(string scenario, string globalJson) { using (ApprovalResults.ForScenario(scenario)) { // arrange var upgradeActions = new List <ISolutionUpgradeAction>(); var testFileUpgradeContext = new TestSolutionUpgradeContext(globalJson); // updates the sdk version in global json. var runtimeUpgradeAction = new UpdateSdkVersion("1.0.0-preview1-002702"); upgradeActions.Add(runtimeUpgradeAction); // Apply these actions to the global.json file. foreach (var upgradeAction in upgradeActions) { upgradeAction.Apply(testFileUpgradeContext); } // save the changes. testFileUpgradeContext.SaveChanges(); // assert. var modifiedContents = testFileUpgradeContext.ModifiedJsonContents; Approvals.VerifyJson(modifiedContents); } }
public void Parses_Sets_Of_Rules() { var input = Resources.GetResourceLines(this, "day7.sample.txt"); var rules = ParseRules(input); Approvals.VerifyJson(SerializeObject(rules)); }
public async Task should_be_able_to_fetch_new_user_v2() { // Setup application var applicationFactory = new SampleApplicationFactory(); await applicationFactory.Install(); var apiClient = applicationFactory.CreateClient(); // Create new users var createResponse = await apiClient.PostAsJsonAsync("/user/", new CreateUserDTO { FirstName = "John", LastName = "Doe", Email = "*****@*****.**" }); var createResult = await createResponse.Content.ReadAsAsync <EntityCreatedResult>(); // Fetch newly created user var getUserResponsePayload = await apiClient.GetStringAsync("/user/" + createResult.Id); // Verify the expectations Approvals.VerifyJson(getUserResponsePayload.WithIgnores("$.id")); }
public static void Model_Serialization() { var sut = new Model("Test"); sut.Fields.Add(new Field("Field1")); var idx = new Index("UX_Field1"); idx.Fields.Add(new IndexField("Field1")); sut.Indexes.Add(idx); var rel = new Relationship() { PrincipalModel = new Name("Test"), PrincipalType = RelationshipTypes.One, DependantModel = new Name("OtherModel"), DependantType = RelationshipTypes.Many }; rel.PrincipalFields.Add(new Name("Field1")); rel.DependantFields.Add(new Name("OtherField")); sut.Relationships.Add(rel); var json = sut.ToJson(); Approvals.VerifyJson(json); var actual = json.FromJson <Model>(); actual.Should().BeEquivalentTo(sut); }
public async Task Get_companies_paging() { await startTask; var after = 1; var query = @" query { companiesConnection(first:2, after:""" + after + @""") { edges { cursor node { id } } pageInfo { endCursor hasNextPage } } }"; using var response = await ClientQueryExecutor.ExecuteGet(client, query); response.EnsureSuccessStatusCode(); Approvals.VerifyJson(await response.Content.ReadAsStringAsync()); }
public void GivenAProject_WhenSerialised_ReturnsJsonModel() { var module = RcmsModuleBuilders.CreateProject(); var json = module.ToJson(); Approvals.VerifyJson(json); }
public void Execute(string inputFileName) { var seqServer = new StubSeqEndpoint(); var result = new Importer(seqServer) .Import(TestHelper.GetFilePath(inputFileName)); result.ShouldBeSuccessful(); Approvals.VerifyJson(seqServer.LogsAsJson); }
public void Parses_Rule_With_No_Content() { var input = Resources.GetResourceLines(this, "day7.sample.txt"); var rawRules = input.Skip(7).Take(1).ToArray(); var rules = ParseRules(rawRules); Approvals.VerifyJson(SerializeObject(rules)); }
public void ReadSampleAppMef2Test() { var assembly = typeof(SampleApp.MainWindow).Assembly; var result = MetadataReader.Read(assembly); var data = Serialize(result); Approvals.VerifyJson(data); }
private bool VerifyContentType(IContentType obj) { var jsonable = Mapper.Map <DocumentTypeDisplay>(obj); jsonable.Key = new Guid("2BFEC211-884B-4E70-A8BD-6992C0DC687C"); jsonable.Udi = new GuidUdi("document-type", jsonable.Key); Approvals.VerifyJson(jsonable.ToJson()); return(true); }
public void ReadThisAssemblyTest() { var assembly = GetType().Assembly; var result = MetadataReader.Read(assembly); var data = Serialize(result); Approvals.VerifyJson(data); }
public void Orders_Dependent_Types_Later_Than_Their_Dependencies() { /* * Setup * * Alias Parent AllowedChildren Compositions Dependencies Indirect All * d-1-1 d-1; cmp-1-1; cmp-2; d-1; cmp-1-1; cmp-2; cmp-1; d-1; cmp-1-1; cmp-2; cmp-1; * cmp-1-1 cmp-1; cmp-1; cmp-1; * cmp-2 * d-2 d-1; d-1-1; d-1; d-1-1; d-1; cmp-1-1; cmp-2; cmp-1; d-1; d-1-1; d-1; cmp-1-1; cmp-2; cmp-1; * cmp-1 * d-1-2 d-1; d-1; cmp-1; d-1; cmp-1; * d-1 cmp-1; cmp-1; cmp-1; * * Expectation * cmp-1 * cmp-2 * cmp-1-1 * d-1 * d-1-1 * d-1-2 * d-2 * */ Config.DocumentType("d-1-1") .Parent("d-1") .Compositions("cmp-1-1", "cmp-2"); Config.DocumentType("cmp-1-1") .Compositions("cmp-1"); Config.DocumentType("cmp-2"); Config.DocumentType("d-2") .AllowedAsRoot(true) .AllowedChildren("d-1", "d-1-1"); Config.DocumentType("cmp-1"); Config.DocumentType("d-1-2") .Parent("d-1"); Config.DocumentType("d-1") .Compositions("cmp-1"); //.AllowedChildren("d-1-1"); // dammit! - what about circular references? (parent/allowedchildren) - rare UC? // See prevents circular reference test. var diff = Config.Compare(); var orderedTypes = DependencyComparer.OrderByDependencies(diff.DocumentTypes.Values); var aliases = orderedTypes.Select(t => t.Key); Approvals.VerifyJson(aliases.ToJson(Formatting.None)); }
public void CustomerContract_VerifyTheCustomerContract_ApproveTheCurrentVersion() { using (var server = TestServer.Create <Startup>()) { server.BaseAddress = new Uri("http://localhost:4000/swagger/docs/v1"); var response = server.HttpClient.GetAsync(server.BaseAddress) .Result.Content.ReadAsStringAsync(); Approvals.VerifyJson(response.Result); } }
public async Task SwaggerContract() { // Arrange // Act var json = await _httpClient.GetStringAsync("/internal/swagger/v1/swagger.json"); // Assert Approvals.VerifyJson(json); }
public void Read(FileInfo lessonFile) { using (ApprovalResults.ForScenario(lessonFile.Name)) { var reader = new LessonDocumentReader(); var lesson = reader.Read(lessonFile.FullName); var json = JsonConvert.SerializeObject(lesson, Formatting.Indented); Approvals.VerifyJson(json); } }
public void ApprovalsComplexObjectJson() { // assign var p = Student.Default(); // act // assert Approvals.VerifyJson(JsonConvert.SerializeObject(p)); }
public void AddItem_should_returnAnObjectThatOnlyIteratesOverItsOwnChildren_and_doesNotMutatePreviousChildStates() { var list = new AppendOnlyList <Cat>(); var list1 = list.AddItem(new Cat("frodo", 10)); var list2 = list1.AddItem(new Cat("Gandalf", 25)); var list3 = list2.AddItem(new Cat("Buttons", 13)); var json = new[] { list, list1, list2, list3 }.ToJsons(); Approvals.VerifyJson(json); }
public void Validate(List <string> warmup, List <string> movements, Lesson lesson, string scenarioName) { using (ApprovalResults.ForScenario(scenarioName)) { var validator = new LessonValidator(); var validationResult = validator.Validate(warmup, movements, lesson); var json = JsonConvert.SerializeObject(validationResult, Formatting.Indented); Approvals.VerifyJson(json); } }
public void Output_Success_ApproveApiSurface() { // Arrange GetEventDetailsOutput output = new GetEventDetailsOutput( new Guid("9F3C4AB1-C27A-4A6A-B95A-D83A9251F961"), "The Title", new Guid("0A3D24CE-FC83-4355-91EF-E593D168FC1A"), "John Doe", "The Location", "The MeetingPoint", "The description", new DateTime(2019, 10, 5, 19, 0, 0), new DateTime(2019, 10, 5, 22, 0, 0), false, false, new List <ParticipantOutput> { new ParticipantOutput( "Name", "Email", "AvatarId", "Team 1", ParticipantStatus.Accepted, 1, "The Note") }, new List <CommentOutput> { new CommentOutput( new Guid("93F4FAD3-425C-4447-89DE-AEB25E862E02"), new Guid("4F969046-7899-4FBE-8C54-1482C2BF24D0"), "John Doe", "*****@*****.**", "avatarId", new DateTime(2019, 10, 3, 12, 42, 0), new DateTime(2019, 10, 4, 13, 42, 0), "The comment text", true, true) }, true, ParticipantStatus.Accepted, "The current Note", "Current Team 1", 1); // Act presenter.Output(output); var jsonObject = presenter.GetJsonObject(); // Assert var json = JsonConvert.SerializeObject(jsonObject); Approvals.VerifyJson(json); }
public void Nexu_Relation_Udi_Should_Match_Id() { // act var result = new NexuRelation { Id = new Guid("9a935375-6c89-4dda-ae83-b9207e19a3ee") }; // assert Approvals.VerifyJson(JsonConvert.SerializeObject(result)); }
public void ReturnCustomersInAlphabeticalOrderByLastName() { var vipCustomers = new VipCustomers(); vipCustomers.Add(new Customer("Albert", "Thomson")); vipCustomers.Add(new Customer("Mandy", "Harris")); vipCustomers.Add(new Customer("John", "Smith")); var orderedVipCustomers = vipCustomers.InAlphabeticalOrderByLastName(); Approvals.VerifyJson(JsonConvert.SerializeObject(orderedVipCustomers)); }
public void TestGetStatusChangedFilesFromString(string testName, string statusString) { // TODO produce a valid working directory var module = new GitModule(Path.GetTempPath()); using (ApprovalResults.ForScenario(testName.Replace(' ', '_'))) { // git status --porcelain=2 --untracked-files=no -z var statuses = GitCommandHelpers.GetStatusChangedFilesFromString(module, statusString); Approvals.VerifyJson(JsonConvert.SerializeObject(statuses)); } }
public void TestGetDiffChangedFilesFromString(string testName, StagedStatus stagedStatus, string statusString) { // TODO produce a valid working directory var module = new GitModule(Path.GetTempPath()); using (ApprovalResults.ForScenario(testName.Replace(' ', '_'))) { // git diff -M -C -z --name-status var statuses = GitCommandHelpers.GetDiffChangedFilesFromString(module, statusString, stagedStatus); Approvals.VerifyJson(JsonConvert.SerializeObject(statuses)); } }
public void GetDiffChangedFilesFromString(string testName, StagedStatus stagedStatus, string statusString) { // TODO produce a valid working directory GitModule module = new(Path.GetTempPath()); using (ApprovalResults.ForScenario(testName.Replace(' ', '_'))) { // git diff --find-renames --find-copies -z --name-status var statuses = module.GetTestAccessor().GetDiffChangedFilesFromString(statusString, stagedStatus); Approvals.VerifyJson(JsonConvert.SerializeObject(statuses)); } }
public void ExtractFromMovements(string lessonNumber) { using (ApprovalResults.ForScenario(lessonNumber)) { var xlsxFile = TestDataDirectory.GetOrCreateSubDirectory("InputData") .GetFiles() .First(x => x.Name == "Movements.xlsx"); var document = new XlsxDocumentReader().Read(xlsxFile.FullName); var movements = new LessonMovementsExtractor().Extract(document, lessonNumber); var json = JsonConvert.SerializeObject(movements, Formatting.Indented); Approvals.VerifyJson(json); } }
public void Output_Success() { // Arrange var output = CreateUserProfileOutput(); // Act presenter.Output(output); var viewModel = presenter.GetViewModel(); // Arrange viewModel.Should().NotBeNull(); Approvals.VerifyJson(JsonConvert.SerializeObject(viewModel)); }
public void TestGetStatusChangedFilesFromString(string testName, string statusString) { // TODO produce a valid working directory GitModule module = new(Path.GetTempPath()); GetAllChangedFilesOutputParser getAllChangedFilesOutputParser = new(() => module); using (ApprovalResults.ForScenario(testName.Replace(' ', '_'))) { // git status --porcelain=2 --untracked-files=no -z var statuses = getAllChangedFilesOutputParser.Parse(statusString); Approvals.VerifyJson(JsonConvert.SerializeObject(statuses)); } }
public void GetAListOfFilteredByFatalCyclingAccidentsAndSortedByIdDescending() { var actual = _subject.Get(filter => filter.Severity == Severity.Fatal && filter.Casualties.Any(casualty => casualty.Mode.Equals("PedalCycle") && casualty.Severity == Severity.Fatal), OrderBy(x => x.AccidentStatisticId, false)) .GetAwaiter() .GetResult(); Approvals.VerifyJson(actual.ToJson()); }