[ 
https://issues.apache.org/jira/browse/AVRO-3424?focusedWorklogId=738856&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-738856
 ]

ASF GitHub Bot logged work on AVRO-3424:
----------------------------------------

                Author: ASF GitHub Bot
            Created on: 09/Mar/22 15:42
            Start Date: 09/Mar/22 15:42
    Worklog Time Spent: 10m 
      Work Description: zcsizmadia commented on a change in pull request #1571:
URL: https://github.com/apache/avro/pull/1571#discussion_r822792182



##########
File path: lang/csharp/src/apache/test/Schema/SchemaTests.cs
##########
@@ -439,5 +439,57 @@ public void TestUnionSchemaWithoutTypeProperty(string 
schemaJson, string expecte
             var schema = Schema.Parse(schemaJson);
             Assert.AreEqual(schema.ToString(), expectedSchemaJson);
         }
+
+        [TestFixture]
+        public class SchemaTypeExtensionsTests
+        {
+            [TestCase("null", Schema.Type.Null)]
+            [TestCase("boolean", Schema.Type.Boolean)]
+            [TestCase("int", Schema.Type.Int)]
+            [TestCase("long", Schema.Type.Long)]
+            [TestCase("float", Schema.Type.Float)]
+            [TestCase("double", Schema.Type.Double)]
+            [TestCase("bytes", Schema.Type.Bytes)]
+            [TestCase("string", Schema.Type.String)]
+            [TestCase("record", Schema.Type.Record)]
+            [TestCase("enumeration", Schema.Type.Enumeration)]
+            [TestCase("array", Schema.Type.Array)]
+            [TestCase("map", Schema.Type.Map)]
+            [TestCase("union", Schema.Type.Union)]
+            [TestCase("fixed", Schema.Type.Fixed)]
+            [TestCase("error", Schema.Type.Error)]
+            [TestCase("logical", Schema.Type.Logical)]
+            [TestCase("Logical", null)]
+            [TestCase("InvalidValue", null)]
+            [TestCase("\"null\"", null)]
+            [TestCase("", null)]
+            [TestCase(null, null)]
+            public void ParseTypeTest(string value, object expectedResult)

Review comment:
       The same as below

##########
File path: lang/csharp/src/apache/test/Schema/SchemaTests.cs
##########
@@ -439,5 +439,57 @@ public void TestUnionSchemaWithoutTypeProperty(string 
schemaJson, string expecte
             var schema = Schema.Parse(schemaJson);
             Assert.AreEqual(schema.ToString(), expectedSchemaJson);
         }
+
+        [TestFixture]
+        public class SchemaTypeExtensionsTests
+        {
+            [TestCase("null", Schema.Type.Null)]
+            [TestCase("boolean", Schema.Type.Boolean)]
+            [TestCase("int", Schema.Type.Int)]
+            [TestCase("long", Schema.Type.Long)]
+            [TestCase("float", Schema.Type.Float)]
+            [TestCase("double", Schema.Type.Double)]
+            [TestCase("bytes", Schema.Type.Bytes)]
+            [TestCase("string", Schema.Type.String)]
+            [TestCase("record", Schema.Type.Record)]
+            [TestCase("enumeration", Schema.Type.Enumeration)]
+            [TestCase("array", Schema.Type.Array)]
+            [TestCase("map", Schema.Type.Map)]
+            [TestCase("union", Schema.Type.Union)]
+            [TestCase("fixed", Schema.Type.Fixed)]
+            [TestCase("error", Schema.Type.Error)]
+            [TestCase("logical", Schema.Type.Logical)]
+            [TestCase("Logical", null)]
+            [TestCase("InvalidValue", null)]
+            [TestCase("\"null\"", null)]
+            [TestCase("", null)]
+            [TestCase(null, null)]
+            public void ParseTypeTest(string value, object expectedResult)
+            {
+                if (expectedResult is Schema.Type expectedType)
+                {
+                    Assert.AreEqual(Schema.ParseType(value), expectedType);
+                }
+                else
+                {
+                    Assert.AreEqual(Schema.ParseType(value), expectedResult);
+                }
+            }
+
+            [TestCase("\"null\"", Schema.Type.Null)]
+            [TestCase("\"nu\"ll\"", null)]
+            [TestCase("\"\"", null)]
+            public void ParseTypeRemoveQuotesTest(string value, object 
expectedResult)

Review comment:
       In this case keeping previous patterns dont really matter. The test code 
iotself seems to me over complicated. I really do prefer to use good patterns 
where it can live side by side with existing code patterns




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Issue Time Tracking
-------------------

    Worklog Id:     (was: 738856)
    Time Spent: 3h 20m  (was: 3h 10m)

> C# Add support to parse string into Schema.Type
> -----------------------------------------------
>
>                 Key: AVRO-3424
>                 URL: https://issues.apache.org/jira/browse/AVRO-3424
>             Project: Apache Avro
>          Issue Type: Improvement
>          Components: csharp
>            Reporter: Kyle Schoonover
>            Priority: Minor
>              Labels: pull-request-available
>          Time Spent: 3h 20m
>  Remaining Estimate: 0h
>
> Right now this just revolves around the PrimitiveSchema NewInstance method, 
> but this would create a feature for parsing a string into a Schema.Type enum.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to