{"id":550,"date":"2022-11-24T04:03:39","date_gmt":"2022-11-24T04:03:39","guid":{"rendered":"http:\/\/emacslisp.com\/?p=550"},"modified":"2022-11-24T04:03:40","modified_gmt":"2022-11-24T04:03:40","slug":"mockito-bytebuddy-examples","status":"publish","type":"post","link":"http:\/\/emacslisp.com\/?p=550","title":{"rendered":"Mockito \u2013 ByteBuddy Examples"},"content":{"rendered":"\n<p>ByteBuddy is key framework used in Mockito, it will auto generated subclass and override default methods. Following code will print out \u201cHello ByteBuddy!\u201d.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>import net.bytebuddy.ByteBuddy;\r\nimport net.bytebuddy.dynamic.DynamicType;\r\nimport net.bytebuddy.implementation.FixedValue;\r\nimport net.bytebuddy.matcher.ElementMatchers;\r\n\r\npublic class ByteBuddyEntry {\r\n    public static void main(String&#91;] args)\r\n    {\r\n        DynamicType.Unloaded unloadedType = new ByteBuddy()\r\n                .subclass(Object.class)\r\n                .method(ElementMatchers.isToString())\r\n                .intercept(FixedValue.value(\"Hello ByteBuddy!\"))\r\n                .make();\r\n\r\n        Class&lt;?> dynamicType = unloadedType.load(ByteBuddyEntry.class\r\n                        .getClassLoader())\r\n                .getLoaded();\r\n\r\n        try {\r\n            System.out.println(dynamicType.newInstance().toString());\r\n        } catch (InstantiationException e) {\r\n            e.printStackTrace();\r\n        } catch (IllegalAccessException e) {\r\n            e.printStackTrace();\r\n        }\r\n    }\r\n}<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>ByteBuddy is key framework used in Mockito, it will auto generated subclass and override default methods. Following code will print out \u201cHello ByteBuddy!\u201d.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[14],"tags":[],"class_list":["post-550","post","type-post","status-publish","format-standard","hentry","category-java"],"_links":{"self":[{"href":"http:\/\/emacslisp.com\/index.php?rest_route=\/wp\/v2\/posts\/550","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/emacslisp.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/emacslisp.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/emacslisp.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/emacslisp.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=550"}],"version-history":[{"count":1,"href":"http:\/\/emacslisp.com\/index.php?rest_route=\/wp\/v2\/posts\/550\/revisions"}],"predecessor-version":[{"id":551,"href":"http:\/\/emacslisp.com\/index.php?rest_route=\/wp\/v2\/posts\/550\/revisions\/551"}],"wp:attachment":[{"href":"http:\/\/emacslisp.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=550"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/emacslisp.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=550"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/emacslisp.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=550"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}