How to use Xtruct2 class of com.thrift.example.real.thrift.test package

Best EvoMaster code snippet using com.thrift.example.real.thrift.test.Xtruct2

Source:ThriftTestEndpointsBuilderTest.java Github

copy

Full Screen

...34 assertEquals(expectedNumberOfEndpoints(), schema.getEndpoints().size());35 }36 @Test37 public void testDepth(){38 List<Class> clazz = Arrays.asList(Xtruct.class, Xtruct2.class, Insanity.class, Numberz.class, Xception.class, Xception2.class, TException.class);39 Map<String, NamedTypedValue> typedValueMap = schema.getObjParamCollections();40 assertEquals(clazz.size(), typedValueMap.size());41 assertEquals(0, typedValueMap.get(Xtruct.class.getName()).getType().depth);42 assertEquals(0, typedValueMap.get(Numberz.class.getName()).getType().depth);43 assertEquals(0, typedValueMap.get(Xception.class.getName()).getType().depth);44 assertEquals(0, typedValueMap.get(TException.class.getName()).getType().depth);45 assertEquals(1, typedValueMap.get(Xtruct2.class.getName()).getType().depth);46 assertEquals(1, typedValueMap.get(Xception2.class.getName()).getType().depth);47 assertEquals(2, typedValueMap.get(Insanity.class.getName()).getType().depth);48 }49 @Test50 public void testAllContainTException(){51 boolean all = schema.getEndpoints().stream().allMatch(e-> containType(e.getExceptions(),"org.apache.thrift.TException" ));52 assertTrue(all);53 }54 @Test55 public void testVoid(){56 EndpointSchema endpoint = getOneEndpoint("testVoid");57 NamedTypedValue response = endpoint.getResponse();58 assertNull(response);59 assertTrue(endpoint.getRequestParams().isEmpty());60 assertEquals(1, endpoint.getExceptions().size());61 }62 @Test63 public void testString() throws ClassNotFoundException {64 EndpointSchema endpoint = getOneEndpoint("testString");65 NamedTypedValue response = endpoint.getResponse();66 assertNotNull(response);67 assertTrue(response instanceof StringParam);68 assertEquals(1, endpoint.getRequestParams().size());69 NamedTypedValue p1 = endpoint.getRequestParams().get(0);70 assertTrue(p1 instanceof StringParam);71 assertEquals(1, endpoint.getExceptions().size());72 String input = "foo";73 p1.setValueBasedOnInstance(input);74 assertTrue(p1.newInstance().equals(input));75 assertTrue(p1.getDto().stringValue.equals(input));76 assertEquals(RPCSupportedDataType.STRING, p1.getDto().type.type);77 List<String> javaCode = p1.newInstanceWithJava(0);78 assertEquals(1, javaCode.size());79 assertTrue(javaCode.get(0).equals("java.lang.String arg0 = \"foo\";"));80 List<String> endpointJavaCode = endpoint.newInvocationWithJava("res1","controller",null);81 assertEquals(5, endpointJavaCode.size());82 assertEquals("java.lang.String res1 = null;", endpointJavaCode.get(0));83 assertEquals("{", endpointJavaCode.get(1));84 assertEquals(" java.lang.String arg0 = \"foo\";", endpointJavaCode.get(2));85 assertEquals(" res1 = ((com.thrift.example.artificial.RPCInterfaceExampleImpl)(controller.getRPCClient(\"com.thrift.example.real.thrift.test.ThriftTest$Iface\"))).testString(arg0);", endpointJavaCode.get(3));86 assertEquals("}", endpointJavaCode.get(4));87 List<String> assertionJavaCode = p1.newAssertionWithJava(0, "res1", -1);88 assertEquals(1, assertionJavaCode.size());89 assertEquals("assertEquals(\"foo\", res1);", assertionJavaCode.get(0));90 }91 @Test92 public void testBool() throws ClassNotFoundException {93 EndpointSchema endpoint = getOneEndpoint("testBool");94 NamedTypedValue response = endpoint.getResponse();95 assertNotNull(response);96 assertTrue(response instanceof BooleanParam);97 assertEquals(1, endpoint.getRequestParams().size());98 NamedTypedValue p1 = endpoint.getRequestParams().get(0);99 assertTrue(p1 instanceof BooleanParam);100 assertEquals(1, endpoint.getExceptions().size());101 boolean input = true;102 p1.setValueBasedOnInstance(input);103 assertTrue(p1.newInstance().equals(input));104 assertTrue(p1.getDto().stringValue.equals(""+input));105 assertEquals(RPCSupportedDataType.P_BOOLEAN, p1.getDto().type.type);106 List<String> javaCode = p1.newInstanceWithJava(0);107 assertEquals(1, javaCode.size());108 assertTrue(javaCode.get(0).equals("boolean arg0 = true;"));109 List<String> assertionJavaCode = p1.newAssertionWithJava(0, "res1", -1);110 assertEquals(1, assertionJavaCode.size());111 assertEquals("assertEquals(true, res1);", assertionJavaCode.get(0));112 }113 @Test114 public void testByte() throws ClassNotFoundException {115 EndpointSchema endpoint = getOneEndpoint("testByte");116 NamedTypedValue response = endpoint.getResponse();117 assertNotNull(response);118 assertTrue(response instanceof ByteParam);119 assertEquals(1, endpoint.getRequestParams().size());120 NamedTypedValue p1 = endpoint.getRequestParams().get(0);121 assertTrue(p1 instanceof ByteParam);122 assertEquals(1, endpoint.getExceptions().size());123 byte input = 42;124 p1.setValueBasedOnInstance(input);125 assertTrue(p1.newInstance().equals(input));126 assertTrue(p1.getDto().stringValue.equals(""+input));127 assertEquals(RPCSupportedDataType.P_BYTE, p1.getDto().type.type);128 List<String> javaCode = p1.newInstanceWithJava(0);129 assertEquals(1, javaCode.size());130 assertTrue(javaCode.get(0).equals("byte arg0 = 42;"));131 List<String> assertionJavaCode = p1.newAssertionWithJava(0, "res1", -1);132 assertEquals(1, assertionJavaCode.size());133 assertEquals("assertEquals(42, res1);", assertionJavaCode.get(0));134 }135 @Test136 public void testInt() throws ClassNotFoundException {137 EndpointSchema endpoint = getOneEndpoint("testI32");138 NamedTypedValue response = endpoint.getResponse();139 assertNotNull(response);140 assertTrue(response instanceof IntParam);141 assertEquals(1, endpoint.getRequestParams().size());142 NamedTypedValue p1 = endpoint.getRequestParams().get(0);143 assertTrue(p1 instanceof IntParam);144 assertEquals(1, endpoint.getExceptions().size());145 int input = 42;146 p1.setValueBasedOnInstance(input);147 assertTrue(p1.newInstance().equals(input));148 assertTrue(p1.getDto().stringValue.equals(""+input));149 assertEquals(RPCSupportedDataType.P_INT, p1.getDto().type.type);150 List<String> javaCode = p1.newInstanceWithJava(0);151 assertEquals(1, javaCode.size());152 assertTrue(javaCode.get(0).equals("int arg0 = 42;"));153 List<String> assertionJavaCode = p1.newAssertionWithJava(0, "res1", -1);154 assertEquals(1, assertionJavaCode.size());155 assertEquals("assertEquals(42, res1);", assertionJavaCode.get(0));156 }157 @Test158 public void testLong() throws ClassNotFoundException {159 EndpointSchema endpoint = getOneEndpoint("testI64");160 NamedTypedValue response = endpoint.getResponse();161 assertNotNull(response);162 assertTrue(response instanceof LongParam);163 assertEquals(1, endpoint.getRequestParams().size());164 NamedTypedValue p1 = endpoint.getRequestParams().get(0);165 assertTrue(p1 instanceof LongParam);166 assertEquals(1, endpoint.getExceptions().size());167 long input = 42L;168 p1.setValueBasedOnInstance(input);169 assertTrue(p1.newInstance().equals(input));170 assertTrue(p1.getDto().stringValue.equals(""+input));171 assertEquals(RPCSupportedDataType.P_LONG, p1.getDto().type.type);172 List<String> javaCode = p1.newInstanceWithJava(0);173 assertEquals(1, javaCode.size());174 assertTrue(javaCode.get(0).equals("long arg0 = 42L;"));175 List<String> assertionJavaCode = p1.newAssertionWithJava(0, "res1", -1);176 assertEquals(1, assertionJavaCode.size());177 assertEquals("assertEquals(42L, res1);", assertionJavaCode.get(0));178 }179 @Test180 public void testDouble() throws ClassNotFoundException {181 EndpointSchema endpoint = getOneEndpoint("testDouble");182 NamedTypedValue response = endpoint.getResponse();183 assertNotNull(response);184 assertTrue(response instanceof DoubleParam);185 assertEquals(1, endpoint.getRequestParams().size());186 NamedTypedValue p1 = endpoint.getRequestParams().get(0);187 assertTrue(p1 instanceof DoubleParam);188 assertEquals(1, endpoint.getExceptions().size());189 double input = 42.42;190 p1.setValueBasedOnInstance(input);191 assertTrue(p1.newInstance().equals(input));192 assertTrue(p1.getDto().stringValue.equals(""+input));193 assertEquals(RPCSupportedDataType.P_DOUBLE, p1.getDto().type.type);194 List<String> javaCode = p1.newInstanceWithJava(0);195 assertEquals(1, javaCode.size());196 assertTrue(javaCode.get(0).equals("double arg0 = 42.42;"));197 List<String> assertionJavaCode = p1.newAssertionWithJava(0, "res1", -1);198 assertEquals(1, assertionJavaCode.size());199 assertEquals("assertTrue(numbersMatch(42.42, res1));", assertionJavaCode.get(0));200 }201 @Test202 public void testBinary() throws ClassNotFoundException {203 EndpointSchema endpoint = getOneEndpoint("testBinary");204 NamedTypedValue response = endpoint.getResponse();205 assertNotNull(response);206 assertTrue(response instanceof ByteBufferParam);207 assertEquals(1, endpoint.getRequestParams().size());208 NamedTypedValue p1 = endpoint.getRequestParams().get(0);209 assertTrue(p1 instanceof ByteBufferParam);210 assertEquals(1, endpoint.getExceptions().size());211 byte[] input = "foo".getBytes(StandardCharsets.UTF_8);212 ByteBuffer buffer = ByteBuffer.allocate(input.length);213 buffer.put(input);214 p1.setValueBasedOnInstance(buffer);215 assertTrue(p1.newInstance() instanceof ByteBuffer);216 String extracted = new String(((ByteBuffer) p1.newInstance()).array(), StandardCharsets.UTF_8);217 assertTrue(extracted.equals("foo"));218 assertTrue(p1.getDto().stringValue.equals("foo"));219 assertEquals(RPCSupportedDataType.BYTEBUFFER, p1.getDto().type.type);220 List<String> javaCode = p1.newInstanceWithJava(0);221 assertEquals(6, javaCode.size());222 assertEquals("java.nio.ByteBuffer arg0 = null;", javaCode.get(0));223 assertEquals("{", javaCode.get(1));224 assertEquals(" byte[] arg0_byteArray = \"foo\".getBytes(java.nio.charset.StandardCharsets.UTF_8);", javaCode.get(2));225 assertEquals(" arg0 = java.nio.ByteBuffer.allocate(arg0_byteArray.length);", javaCode.get(3));226 assertEquals(" arg0.put(arg0_byteArray);", javaCode.get(4));227 assertEquals("}", javaCode.get(5));228 List<String> assertionJavaCode = p1.newAssertionWithJava(0, "res1", -1);229 assertEquals(1, assertionJavaCode.size());230 assertEquals("// not handle ByteBuffer assertion", assertionJavaCode.get(0));231 }232 @Test233 public void testStruct() throws ClassNotFoundException {234 EndpointSchema endpoint = getOneEndpoint("testStruct");235 NamedTypedValue response = endpoint.getResponse();236 assertNotNull(response);237 assertTrue(response instanceof ObjectParam);238 assertEquals("com.thrift.example.real.thrift.test.Xtruct", response.getType().getFullTypeName());239 List<NamedTypedValue> fields = ((ObjectType)response.getType()).getFields();240 assertEquals(4, fields.size());241 assertTrue(fields.get(0) instanceof StringParam);242 assertTrue(fields.get(1) instanceof ByteParam);243 assertTrue(fields.get(2) instanceof IntParam);244 assertTrue(fields.get(3) instanceof LongParam);245 assertEquals(1, endpoint.getRequestParams().size());246 NamedTypedValue request = endpoint.getRequestParams().get(0);247 assertTrue(request instanceof ObjectParam);248 assertEquals("com.thrift.example.real.thrift.test.Xtruct", request.getType().getFullTypeName());249 Xtruct input = new Xtruct();250 input.string_thing = "foo";251 input.byte_thing = 42;252 input.i32_thing = 42;253 input.i64_thing = 42L;254 request.setValueBasedOnInstance(input);255 Object instance = request.newInstance();256 assertTrue(instance instanceof Xtruct);257 assertEquals(input.byte_thing, ((Xtruct)instance).byte_thing);258 assertEquals(input.i32_thing, ((Xtruct)instance).i32_thing);259 assertEquals(input.i64_thing, ((Xtruct)instance).i64_thing);260 assertEquals(input.string_thing, ((Xtruct)instance).string_thing);261 ParamDto dto = request.getDto();262 assertEquals(dto.type.type, RPCSupportedDataType.CUSTOM_OBJECT);263 assertEquals(4, dto.innerContent.size());264 for (ParamDto fdto : dto.innerContent){265 if (fdto.name.equals("string_thing")){266 assertEquals(input.string_thing, fdto.stringValue);267 } else if (fdto.name.equals("byte_thing")){268 assertEquals(fdto.stringValue, "" + input.byte_thing);269 } else if (fdto.name.equals("i32_thing")){270 assertEquals(fdto.stringValue, "" + input.i32_thing);271 } else if (fdto.name.equals("i64_thing")){272 assertEquals(fdto.stringValue, "" + input.i64_thing);273 } else {274 fail("error field name "+fdto.name);275 }276 }277 List<String> javaCode = request.newInstanceWithJava(0);278 assertEquals(8, javaCode.size());279 assertEquals("com.thrift.example.real.thrift.test.Xtruct arg0 = null;", javaCode.get(0));280 assertEquals("{", javaCode.get(1));281 assertEquals(" arg0 = new com.thrift.example.real.thrift.test.Xtruct();", javaCode.get(2));282 assertEquals(" arg0.string_thing = \"foo\";", javaCode.get(3));283 assertEquals(" arg0.byte_thing = 42;", javaCode.get(4));284 assertEquals(" arg0.i32_thing = 42;", javaCode.get(5));285 assertEquals(" arg0.i64_thing = 42L;", javaCode.get(6));286 assertEquals("}", javaCode.get(7));287 List<String> assertionJavaCode = request.newAssertionWithJava(0, "res1", -1);288 assertEquals(4, assertionJavaCode.size());289 assertEquals("assertEquals(\"foo\", res1.string_thing);", assertionJavaCode.get(0));290 assertEquals("assertEquals(42, res1.byte_thing);", assertionJavaCode.get(1));291 assertEquals("assertEquals(42, res1.i32_thing);", assertionJavaCode.get(2));292 assertEquals("assertEquals(42L, res1.i64_thing);", assertionJavaCode.get(3));293 // thrift inits the default value for primitive types294 Xtruct empty = new Xtruct();295 request.setValueBasedOnInstance(empty);296 javaCode = request.newInstanceWithJava(0);297 assertEquals(8, javaCode.size());298 assertEquals("com.thrift.example.real.thrift.test.Xtruct arg0 = null;", javaCode.get(0));299 assertEquals("{", javaCode.get(1));300 assertEquals(" arg0 = new com.thrift.example.real.thrift.test.Xtruct();", javaCode.get(2));301 assertEquals(" arg0.byte_thing = 0;", javaCode.get(4));302 assertEquals(" arg0.i32_thing = 0;", javaCode.get(5));303 assertEquals(" arg0.i64_thing = 0L;", javaCode.get(6));304 assertEquals("}", javaCode.get(7));305 assertionJavaCode = request.newAssertionWithJava(0, "res1", -1);306 assertEquals(4, assertionJavaCode.size());307 assertEquals("assertNull(res1.string_thing);", assertionJavaCode.get(0));308 assertEquals("assertEquals(0, res1.byte_thing);", assertionJavaCode.get(1));309 assertEquals("assertEquals(0, res1.i32_thing);", assertionJavaCode.get(2));310 assertEquals("assertEquals(0L, res1.i64_thing);", assertionJavaCode.get(3));311 }312 @Test313 public void testNest() throws ClassNotFoundException {314 EndpointSchema endpoint = getOneEndpoint("testNest");315 NamedTypedValue response = endpoint.getResponse();316 assertNotNull(response);317 assertTrue(response instanceof ObjectParam);318 assertEquals(Xtruct2.class.getName(), response.getType().getFullTypeName());319 List<NamedTypedValue> fields = ((ObjectType)response.getType()).getFields();320 assertEquals(3, fields.size());321 assertTrue(fields.get(0) instanceof ByteParam);322 assertTrue(fields.get(1) instanceof ObjectParam);323 assertTrue(fields.get(2) instanceof IntParam);324 List<NamedTypedValue> ifields = ((ObjectType)(fields.get(1)).getType()).getFields();325 assertEquals(4, ifields.size());326 assertEquals(1, endpoint.getRequestParams().size());327 NamedTypedValue request = endpoint.getRequestParams().get(0);328 assertTrue(request instanceof ObjectParam);329 assertEquals(Xtruct2.class.getName(), request.getType().getFullTypeName());330 List<NamedTypedValue> rfields = ((ObjectType)request.getType()).getFields();331 assertEquals(3, rfields.size());332 assertTrue(rfields.get(0) instanceof ByteParam);333 assertTrue(rfields.get(1) instanceof ObjectParam);334 assertTrue(rfields.get(2) instanceof IntParam);335 List<NamedTypedValue> rifields = ((ObjectType)(rfields.get(1)).getType()).getFields();336 assertEquals(4, rifields.size());337 Xtruct2 input = new Xtruct2();338 input.byte_thing = 42;339 input.i32_thing = 42;340 Xtruct objField = new Xtruct();341 input.struct_thing = objField;342 objField.i64_thing = 100L;343 objField.i32_thing = 100;344 objField.byte_thing = 100;345 objField.string_thing = "bar";346 request.setValueBasedOnInstance(input);347 Object requestInstance = request.newInstance();348 assertTrue(requestInstance instanceof Xtruct2);349 Xtruct2 xinstance2 = (Xtruct2) requestInstance;350 assertEquals(input.byte_thing, xinstance2.byte_thing);351 assertEquals(input.i32_thing, xinstance2.i32_thing);352 assertEquals(objField.byte_thing, input.struct_thing.byte_thing);353 assertEquals(objField.i32_thing, input.struct_thing.i32_thing);354 assertEquals(objField.i64_thing, input.struct_thing.i64_thing);355 ParamDto requestDto = request.getDto();356 assertEquals(RPCSupportedDataType.CUSTOM_OBJECT, requestDto.type.type);357 assertEquals(3, requestDto.innerContent.size());358 for (ParamDto fdto : requestDto.innerContent){359 if (fdto.name.equals("byte_thing")){360 assertEquals(fdto.stringValue, "" + input.byte_thing);361 } else if (fdto.name.equals("i32_thing")){362 assertEquals(fdto.stringValue, "" + input.i32_thing);363 } else if (fdto.name.equals("struct_thing")){364 assertEquals(4, fdto.innerContent.size());365 for (ParamDto fidto : fdto.innerContent){366 if (fidto.name.equals("string_thing")){367 assertEquals(objField.string_thing, fidto.stringValue);368 } else if (fidto.name.equals("byte_thing")){369 assertEquals("" + objField.byte_thing, fidto.stringValue);370 } else if (fidto.name.equals("i32_thing")){371 assertEquals("" + objField.i32_thing, fidto.stringValue);372 } else if (fidto.name.equals("i64_thing")){373 assertEquals("" + objField.i64_thing, fidto.stringValue);374 } else {375 fail("error field name of Xtruct "+fidto.name);376 }377 }378 } else {379 fail("error field name of Xtruct "+fdto.name);380 }381 }382 List<String> javaCode = request.newInstanceWithJava(0);383 assertEquals(14, javaCode.size());384 assertEquals("com.thrift.example.real.thrift.test.Xtruct2 arg0 = null;", javaCode.get(0));385 assertEquals("{", javaCode.get(1));386 assertEquals(" arg0 = new com.thrift.example.real.thrift.test.Xtruct2();", javaCode.get(2));387 assertEquals(" arg0.byte_thing = 42;", javaCode.get(3));388 assertEquals(" arg0.struct_thing = null;", javaCode.get(4));389 assertEquals(" {", javaCode.get(5));390 assertEquals(" arg0.struct_thing = new com.thrift.example.real.thrift.test.Xtruct();", javaCode.get(6));391 assertEquals(" arg0.struct_thing.string_thing = \"bar\";", javaCode.get(7));392 assertEquals(" arg0.struct_thing.byte_thing = 100;", javaCode.get(8));393 assertEquals(" arg0.struct_thing.i32_thing = 100;", javaCode.get(9));394 assertEquals(" arg0.struct_thing.i64_thing = 100L;", javaCode.get(10));395 assertEquals(" }", javaCode.get(11));396 assertEquals(" arg0.i32_thing = 42;", javaCode.get(12));397 assertEquals("}", javaCode.get(13));398 List<String> assertionJavaCode = request.newAssertionWithJava(0, "res1", -1);399 assertEquals(6, assertionJavaCode.size());400 assertEquals("assertEquals(42, res1.byte_thing);", assertionJavaCode.get(0));...

Full Screen

Full Screen

Xtruct2

Using AI Code Generation

copy

Full Screen

1com.thrift.example.real.thrift.test.Xtruct2 xtruct2 = new com.thrift.example.real.thrift.test.Xtruct2();2xtruct2.string_thing = "hello";3xtruct2.byte_thing = 1;4xtruct2.i32_thing = 2;5xtruct2.i64_thing = 3;6com.thrift.example.real.thrift.test.Xtruct2 result = client.test2(xtruct2);7System.out.println("Result: " + result.string_thing);8result = client.test2(xtruct2);9System.out.println("Result: " + result.string_thing);10System.out.println("Done");11}12}13}

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful