public async Task Notebook_parser_server_can_handle_repeated_requests_with_different_newlines(string newline) { var request1 = new NotebookParseRequest( "the-id", serializationType: DocumentSerializationType.Dib, defaultLanguage: "csharp", rawData: Encoding.UTF8.GetBytes("#!csharp\nvar x = 1;")); var request2 = new NotebookSerializeRequest( "the-second-id", serializationType: DocumentSerializationType.Dib, defaultLanguage: "csharp", newLine: "\n", document: new InteractiveDocument(new List <InteractiveDocumentElement>() { new InteractiveDocumentElement("fsharp", "let y = 2") })); var fullRequestText = string.Concat( request1.ToJson(), newline, request2.ToJson(), newline); var asyncEnumerator = GetResponseObjectsEnumerable(fullRequestText).GetAsyncEnumerator(); var result1 = await asyncEnumerator.GetNextAsync(); result1 .Should() .BeOfType <NotebookParseResponse>() .Which .Id .Should() .Be("the-id"); var result2 = await asyncEnumerator.GetNextAsync(); result2 .Should() .BeOfType <NotebookSerializeResponse>() .Which .Id .Should() .Be("the-second-id"); }
public void Notebook_parser_server_can_serialize_file_based_on_document_type(DocumentSerializationType serializationType, string expected) { var request = new NotebookSerializeRequest( "the-id", serializationType, defaultLanguage: "csharp", newLine: "\n", document: new InteractiveDocument(new List <InteractiveDocumentElement>() { new InteractiveDocumentElement("csharp", "var x = 1;") }) ); var response = NotebookParserServer.HandleRequest(request); response .Should() .BeOfType <NotebookSerializeResponse>() .Which .RawData .AsUtf8String() .Should() .Contain(expected); }