@@ -23,82 +23,84 @@ private SchemaRegistryClient CreateClient() =>
23
23
InstrumentClientOptions ( new SchemaRegistryClientOptions ( ) )
24
24
) ) ;
25
25
26
+ private string GenerateSchemaName ( ) => Recording . GenerateId ( "test-" , 10 ) ;
27
+
26
28
private const string SchemaContent = "{\" type\" : \" record\" ,\" namespace\" : \" TestSchema\" ,\" name\" : \" Employee\" ,\" fields\" : [{ \" name\" : \" Name\" , \" type\" : \" string\" },{ \" name\" : \" Age\" , \" type\" : \" int\" }]}" ;
27
29
private const string SchemaContent_V2 = "{\" type\" : \" record\" ,\" namespace\" : \" TestSchema\" ,\" name\" : \" Employee_V2\" ,\" fields\" : [{ \" name\" : \" Name\" , \" type\" : \" string\" },{ \" name\" : \" Age\" , \" type\" : \" int\" }]}" ;
28
30
29
31
[ RecordedTest ]
30
32
public async Task CanRegisterSchema ( )
31
33
{
32
34
var client = CreateClient ( ) ;
33
- var schemaName = "test1" ;
35
+ var schemaName = GenerateSchemaName ( ) ;
34
36
var groupName = TestEnvironment . SchemaRegistryGroup ;
35
37
var format = SchemaFormat . Avro ;
36
38
37
39
SchemaProperties registerProperties = await client . RegisterSchemaAsync ( groupName , schemaName , SchemaContent , format ) ;
38
- AssertSchemaProperties ( registerProperties ) ;
40
+ AssertSchemaProperties ( registerProperties , schemaName ) ;
39
41
40
42
SchemaProperties schemaProperties = await client . GetSchemaPropertiesAsync ( groupName , schemaName , SchemaContent , format ) ;
41
- AssertSchemaProperties ( schemaProperties ) ;
43
+ AssertSchemaProperties ( schemaProperties , schemaName ) ;
42
44
AssertPropertiesAreEqual ( registerProperties , schemaProperties ) ;
43
45
}
44
46
45
47
[ RecordedTest ]
46
48
public async Task CanRegisterNewVersionOfSchema ( )
47
49
{
48
50
var client = CreateClient ( ) ;
49
- var schemaName = "test1" ;
51
+ var schemaName = GenerateSchemaName ( ) ;
50
52
var groupName = TestEnvironment . SchemaRegistryGroup ;
51
53
var format = SchemaFormat . Avro ;
52
54
53
55
SchemaProperties registerProperties = await client . RegisterSchemaAsync ( groupName , schemaName , SchemaContent , format ) ;
54
- AssertSchemaProperties ( registerProperties ) ;
56
+ AssertSchemaProperties ( registerProperties , schemaName ) ;
55
57
56
58
SchemaProperties schemaProperties = await client . GetSchemaPropertiesAsync ( groupName , schemaName , SchemaContent , format ) ;
57
- AssertSchemaProperties ( schemaProperties ) ;
59
+ AssertSchemaProperties ( schemaProperties , schemaName ) ;
58
60
AssertPropertiesAreEqual ( registerProperties , schemaProperties ) ;
59
61
60
62
SchemaProperties newVersion = await client . RegisterSchemaAsync ( schemaProperties . GroupName , schemaProperties . Name , SchemaContent_V2 , schemaProperties . Format ) ;
61
- AssertSchemaProperties ( newVersion ) ;
63
+ AssertSchemaProperties ( newVersion , schemaName ) ;
62
64
Assert . AreNotEqual ( registerProperties . Id , newVersion . Id ) ;
63
65
}
64
66
65
67
[ RecordedTest ]
66
68
public async Task CanGetSchemaId ( )
67
69
{
68
70
var client = CreateClient ( ) ;
69
- var schemaName = "test1" ;
71
+ var schemaName = GenerateSchemaName ( ) ;
70
72
var groupName = TestEnvironment . SchemaRegistryGroup ;
71
73
var format = SchemaFormat . Avro ;
72
74
73
75
SchemaProperties registerProperties = await client . RegisterSchemaAsync ( groupName , schemaName , SchemaContent , format ) ;
74
- AssertSchemaProperties ( registerProperties ) ;
76
+ AssertSchemaProperties ( registerProperties , schemaName ) ;
75
77
76
78
SchemaProperties schemaProperties = await client . GetSchemaPropertiesAsync ( groupName , schemaName , SchemaContent , format ) ;
77
- AssertSchemaProperties ( schemaProperties ) ;
79
+ AssertSchemaProperties ( schemaProperties , schemaName ) ;
78
80
AssertPropertiesAreEqual ( registerProperties , schemaProperties ) ;
79
81
}
80
82
81
83
[ RecordedTest ]
82
84
public async Task CanGetSchema ( )
83
85
{
84
86
var client = CreateClient ( ) ;
85
- var schemaName = "test1" ;
87
+ var schemaName = GenerateSchemaName ( ) ;
86
88
var groupName = TestEnvironment . SchemaRegistryGroup ;
87
89
var format = SchemaFormat . Avro ;
88
90
89
91
var registerProperties = await client . RegisterSchemaAsync ( groupName , schemaName , SchemaContent , format ) ;
90
- AssertSchemaProperties ( registerProperties ) ;
92
+ AssertSchemaProperties ( registerProperties , schemaName ) ;
91
93
92
94
SchemaRegistrySchema schema = await client . GetSchemaAsync ( registerProperties . Value . Id ) ;
93
- AssertSchema ( schema ) ;
95
+ AssertSchema ( schema , schemaName ) ;
94
96
AssertPropertiesAreEqual ( registerProperties , schema . Properties ) ;
95
97
}
96
98
97
99
[ RecordedTest ]
98
100
public void CanCreateRegisterRequestForUnknownFormatType ( )
99
101
{
100
102
var client = CreateClient ( ) ;
101
- var schemaName = "test1" ;
103
+ var schemaName = GenerateSchemaName ( ) ;
102
104
var groupName = TestEnvironment . SchemaRegistryGroup ;
103
105
var format = new SchemaFormat ( "JSON" ) ;
104
106
Assert . That (
@@ -110,29 +112,29 @@ public void CanCreateRegisterRequestForUnknownFormatType()
110
112
public void CanCreateGetSchemaPropertiesRequestForUnknownFormatType ( )
111
113
{
112
114
var client = CreateClient ( ) ;
113
- var schemaName = "test1" ;
115
+ var schemaName = GenerateSchemaName ( ) ;
114
116
var groupName = TestEnvironment . SchemaRegistryGroup ;
115
117
var format = new SchemaFormat ( "JSON" ) ;
116
118
Assert . That (
117
119
async ( ) => await client . GetSchemaPropertiesAsync ( groupName , schemaName , SchemaContent , format ) ,
118
120
Throws . InstanceOf < RequestFailedException > ( ) . And . Property ( nameof ( RequestFailedException . Status ) ) . EqualTo ( 415 ) ) ;
119
121
}
120
122
121
- private void AssertSchema ( SchemaRegistrySchema schema )
123
+ private void AssertSchema ( SchemaRegistrySchema schema , string schemaName )
122
124
{
123
- AssertSchemaProperties ( schema . Properties ) ;
125
+ AssertSchemaProperties ( schema . Properties , schemaName ) ;
124
126
Assert . AreEqual (
125
127
Regex . Replace ( SchemaContent , @"\s+" , string . Empty ) ,
126
128
Regex . Replace ( schema . Definition , @"\s+" , string . Empty ) ) ;
127
129
}
128
130
129
- private void AssertSchemaProperties ( SchemaProperties properties )
131
+ private void AssertSchemaProperties ( SchemaProperties properties , string schemaName )
130
132
{
131
133
Assert . IsNotNull ( properties ) ;
132
134
Assert . IsNotNull ( properties . Id ) ;
133
135
Assert . IsTrue ( Guid . TryParse ( properties . Id , out Guid _ ) ) ;
134
136
Assert . AreEqual ( SchemaFormat . Avro , properties . Format ) ;
135
- Assert . AreEqual ( "test1" , properties . Name ) ;
137
+ Assert . AreEqual ( schemaName , properties . Name ) ;
136
138
Assert . AreEqual ( TestEnvironment . SchemaRegistryGroup , properties . GroupName ) ;
137
139
}
138
140
0 commit comments