1Tests basic functions in the jvmti plugin. 2 3This tests that we are able to redefine methods/constructors on the 4java.lang.Object class at runtime. 5 6This also (indirectly) tests that we correctly handle reading annotations on 7obsolete methods. This is something that is not normally done since there is no 8way to get a reference to an obsolete method outside of the runtime but some 9annotations on the Object class are read by the runtime directly. 10 11NB This test cannot be run on the RI at the moment. 12 13If this test starts failing during the doCommonClassRedefinition call it is 14possible that the definition of Object contained in the base64 DEX_BYTES array 15has become stale and will need to be recreated. The only difference from the 16normal Object dex bytes is that (a) it contains only the bytes of the Object 17class itself, and (b) it adds an 18'invoke-static {p0}, Ljava/lang/Object;->NotifyConstructed(Ljava/lang/Object;)V' 19to the <init> function. 20 21It is also possible it could fail due to the pattern of allocations caused by 22doing string concatenation or printing changing. In this case you should simply 23update the expected-stdout.txt file. 24