| /******************************************************************************* |
| * Copyright (c) 2002, 2015 IBM Corporation and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * IBM Corporation - initial API and implementation |
| *******************************************************************************/ |
| package org.eclipse.jdt.debug.tests.eval.generator; |
| |
| import java.io.File; |
| import java.io.FileWriter; |
| import java.io.Writer; |
| |
| import org.eclipse.debug.internal.core.IInternalDebugCoreConstants; |
| |
| public class NestedTypeTestGenerator extends TestGenerator { |
| |
| static final int T_T = 0; |
| static final int T_T_A= 1; |
| static final int T_A= 2; |
| static final int T_T_A_AA= 3; |
| static final int T_A_AA= 4; |
| static final int T_AA= 5; |
| static final int T_T_A_AB= 44; |
| static final int T_A_AB= 45; |
| static final int T_AB= 46; |
| static final int T_T_B= 39; |
| static final int T_B= 40; |
| static final int T_T_B_BB= 41; |
| static final int T_B_BB= 42; |
| static final int T_BB= 43; |
| static final int T_C= -1; |
| static final int T_E= -1; |
| |
| static final int T_T_this= 6; |
| static final int T_T_A_this= 7; |
| static final int T_A_this= 8; |
| static final int T_B_this= 9; |
| static final int T_C_this= 10; |
| static final int T_E_this= 11; |
| |
| static final int I_A= 12; |
| static final int I_AA= 13; |
| static final int I_AB= 14; |
| static final int I_AC= 15; |
| static final int I_AD= 16; |
| static final int I_AE= 17; |
| static final int I_AF= 18; |
| static final int I_B= 19; |
| static final int I_BB= 20; |
| static final int I_BC= 21; |
| static final int I_BD= 22; |
| static final int I_C= 23; |
| static final int I_CB= 24; |
| static final int I_CC= 25; |
| static final int I_CD= 26; |
| static final int I_D= 27; |
| static final int I_DB= 28; |
| static final int I_DC= 29; |
| static final int I_DD= 30; |
| static final int I_E= 31; |
| static final int I_EB= 32; |
| static final int I_EC= 33; |
| static final int I_ED= 34; |
| static final int I_F= 35; |
| static final int I_FB= 36; |
| static final int I_FC= 37; |
| static final int I_FD= 38; |
| |
| static final String[] qualifiers= |
| {"T_T", "T_T_A", "T_A", "T_T_A_AA", "T_A_AA", "T_AA", "T_T_this", "T_T_Athis", "T_A_this", "T_B_this", |
| "T_C_this", "T_E_this", "I_A", "I_AA", "I_AB", "I_AC", "I_AD", "I_AE", "I_AF", "I_B", |
| "I_BB", "I_BC", "I_BD", "I_C", "I_CB", "I_CC", "I_CD", "I_D", "I_DB", "I_DC", |
| "I_DD", "I_E", "I_EB", "I_EC", "I_ED", "I_F", "I_FB", "I_FC", "I_FD", "T_T_B", |
| "T_B", "T_T_B_BB", "T_B_BB", "T_BB", "T_T_A_AB", "T_A_AB", "T_AB"}; |
| |
| static final int [] qualifiersLevel= |
| {0, 1, 1, 2, 2, 2, 0, 1, 1, 1, |
| 1, 1, 1, 2, 2, 2, 2, 2, 2, 1, |
| 2, 2, 2, 1, 2, 2, 2, 1, 2, 2, |
| 2, 1, 2, 2, 2, 1, 2, 2, 2, 1, |
| 1, 2, 2, 2, 2, 2, 2}; |
| |
| public static void main(String[] args) throws Exception { |
| gen_AA_aa(); |
| gen_AA_aaStatic(); |
| gen_AB_ab(); |
| gen_AC_ac(); |
| gen_AD_ad(); |
| gen_A_a(); |
| gen_AE_ae(); |
| gen_AF_af(); |
| gen_A_aStatic(); |
| gen_BB_bb(); |
| gen_BC_bc(); |
| gen_BD_bd(); |
| gen_B_b(); |
| gen_CB_cb(); |
| gen_CC_cc(); |
| gen_CD_cd(); |
| gen_C_c(); |
| gen_DB_db(); |
| gen_DC_dc(); |
| gen_DD_dd(); |
| gen_D_d(); |
| gen_EB_eb(); |
| gen_EC_ec(); |
| gen_ED_ed(); |
| gen_E_e(); |
| gen_FB_fb(); |
| gen_FC_fc(); |
| gen_FD_fd(); |
| gen_F_f(); |
| gen_evalNestedTypeTest(); |
| gen_evalNestedTypeTestStatic(); |
| System.out.println("done"); |
| } |
| |
| public static void gen_AA_aa() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 2, code); |
| createTest('c', 2, code); |
| createTest('d', 2, code); |
| createTest('e', 2, code); |
| createTest('f', 2, code); |
| createTest('h', 2, code); |
| createTest('i', 2, code); |
| createTest('j', 2, code); |
| createTestThis('c', 2, code); |
| createTestThis('d', 2, code); |
| createTestThis('e', 2, code); |
| createTestThis('f', 2, code); |
| createTestThis('i', 2, code); |
| createTestThis('j', 2, code); |
| createTestsStaticFields_A(code); |
| |
| createJavaFile(code, 65, 4); |
| } |
| |
| public static void gen_AA_aaStatic() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 2, code); |
| createTest('d', 2, code); |
| createTest('f', 2, code); |
| createTest('h', 2, code); |
| createTest('j', 2, code); |
| createTestsStaticFields_A(code); |
| |
| createJavaFile(code, 69, 4); |
| } |
| |
| public static void gen_AB_ab() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 2, code); |
| createTest('c', 2, code); |
| createTest('d', 2, code); |
| createTest('e', 2, code); |
| createTest('f', 2, code); |
| createTest('g', 2, code); |
| createTest('h', 2, code); |
| createTest('i', 2, code); |
| createTest('j', 2, code); |
| createTestThis('c', 2, code); |
| createTestThis('d', 2, code); |
| createTestThis('e', 2, code); |
| createTestThis('f', 2, code); |
| createTestThis('i', 2, code); |
| createTestThis('j', 2, code); |
| createTestsStaticFields_A(code); |
| createTestQualifier(T_A_this, 'c', code); |
| createTestQualifier(T_A_this, 'd', code); |
| createTestQualifier(T_A_this, 'g', code); |
| createTestQualifier(T_A_this, 'h', code); |
| |
| createJavaFile(code, 94, 4); |
| } |
| |
| public static void gen_AC_ac() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 2, code); |
| createTest('g', 2, code); |
| createTest('h', 2, code); |
| createTestsStaticFields_A(code); |
| createTestQualifier(T_A_this, 'c', code); |
| createTestQualifier(T_A_this, 'd', code); |
| createTestQualifier(T_A_this, 'g', code); |
| createTestQualifier(T_A_this, 'h', code); |
| |
| createJavaFile(code, 120, 4); |
| } |
| |
| public static void gen_AD_ad() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 2, code); |
| createTest('g', 2, code); |
| createTest('h', 2, code); |
| createTestsStaticFields_A(code); |
| createTestQualifier(T_A_this, 'c', code); |
| createTestQualifier(T_A_this, 'd', code); |
| createTestQualifier(T_A_this, 'g', code); |
| createTestQualifier(T_A_this, 'h', code); |
| |
| createJavaFile(code, 145, 4); |
| } |
| |
| public static void gen_A_a() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 1, code); |
| createTest('c', 1, code); |
| createTest('d', 1, code); |
| createTest('f', 1, code); |
| createTest('g', 1, code); |
| createTest('h', 1, code); |
| createTestThis('c', 1, code); |
| createTestThis('d', 1, code); |
| createTestThis('g', 1, code); |
| createTestThis('h', 1, code); |
| createTestsStaticFields_A(code); |
| createTestQualifier(I_AB, 'c', code); |
| createTestQualifier(I_AB, 'd', code); |
| createTestQualifier(I_AB, 'e', code); |
| createTestQualifier(I_AB, 'f', code); |
| createTestQualifier(I_AB, 'i', code); |
| createTestQualifier(I_AB, 'j', code); |
| |
| createJavaFile(code, 155, 3); |
| } |
| |
| public static void gen_AE_ae() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 2, code); |
| createTest('h', 2, code); |
| createTestsStaticFields_A(code); |
| |
| createJavaFile(code, 179, 4); |
| } |
| |
| public static void gen_AF_af() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 2, code); |
| createTest('h', 2, code); |
| createTestsStaticFields_A(code); |
| |
| createJavaFile(code, 203, 4); |
| } |
| |
| public static void gen_A_aStatic() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 1, code); |
| createTest('d', 1, code); |
| createTest('f', 1, code); |
| createTest('h', 1, code); |
| createTestsStaticFields_A(code); |
| createTestQualifier(I_AA, 'c', code); |
| createTestQualifier(I_AA, 'd', code); |
| createTestQualifier(I_AA, 'e', code); |
| createTestQualifier(I_AA, 'f', code); |
| createTestQualifier(I_AA, 'i', code); |
| createTestQualifier(I_AA, 'j', code); |
| |
| createJavaFile(code, 214, 3); |
| } |
| |
| public static void gen_BB_bb() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('a', 2, code); |
| createTest('b', 2, code); |
| createTest('c', 2, code); |
| createTest('d', 2, code); |
| createTest('e', 2, code); |
| createTest('f', 2, code); |
| createTest('g', 2, code); |
| createTest('h', 2, code); |
| createTest('i', 2, code); |
| createTest('j', 2, code); |
| createTestThis('c', 2, code); |
| createTestThis('d', 2, code); |
| createTestThis('e', 2, code); |
| createTestThis('f', 2, code); |
| createTestThis('i', 2, code); |
| createTestThis('j', 2, code); |
| createTestsStaticFields_B(code); |
| createTestQualifier(T_B_this, 'c', code); |
| createTestQualifier(T_B_this, 'd', code); |
| createTestQualifier(T_B_this, 'g', code); |
| createTestQualifier(T_B_this, 'h', code); |
| createTestQualifier(T_T_this, 'a', code); |
| createTestQualifier(T_T_this, 'b', code); |
| createTestQualifier(T_T_this, 'c', code); |
| createTestQualifier(T_T_this, 'd', code); |
| createTestQualifier(T_T_this, 'e', code); |
| createTestQualifier(T_T_this, 'f', code); |
| |
| createJavaFile(code, 252, 4); |
| } |
| |
| public static void gen_BC_bc() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('a', 2, code); |
| createTest('b', 2, code); |
| createTest('g', 2, code); |
| createTest('h', 2, code); |
| createTestsStaticFields_B(code); |
| createTestQualifier(T_B_this, 'c', code); |
| createTestQualifier(T_B_this, 'd', code); |
| createTestQualifier(T_B_this, 'g', code); |
| createTestQualifier(T_B_this, 'h', code); |
| createTestQualifier(T_T_this, 'a', code); |
| createTestQualifier(T_T_this, 'b', code); |
| createTestQualifier(T_T_this, 'c', code); |
| createTestQualifier(T_T_this, 'd', code); |
| createTestQualifier(T_T_this, 'e', code); |
| createTestQualifier(T_T_this, 'f', code); |
| |
| createJavaFile(code, 279, 4); |
| } |
| |
| public static void gen_BD_bd() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('a', 2, code); |
| createTest('b', 2, code); |
| createTest('g', 2, code); |
| createTest('h', 2, code); |
| createTestsStaticFields_B(code); |
| createTestQualifier(T_B_this, 'c', code); |
| createTestQualifier(T_B_this, 'd', code); |
| createTestQualifier(T_B_this, 'g', code); |
| createTestQualifier(T_B_this, 'h', code); |
| createTestQualifier(T_T_this, 'a', code); |
| createTestQualifier(T_T_this, 'b', code); |
| createTestQualifier(T_T_this, 'c', code); |
| createTestQualifier(T_T_this, 'd', code); |
| createTestQualifier(T_T_this, 'e', code); |
| createTestQualifier(T_T_this, 'f', code); |
| |
| createJavaFile(code, 304, 4); |
| } |
| |
| public static void gen_B_b() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('a', 1, code); |
| createTest('b', 1, code); |
| createTest('c', 1, code); |
| createTest('d', 1, code); |
| createTest('e', 1, code); |
| createTest('f', 1, code); |
| createTest('g', 1, code); |
| createTest('h', 1, code); |
| createTestThis('c', 1, code); |
| createTestThis('d', 1, code); |
| createTestThis('g', 1, code); |
| createTestThis('h', 1, code); |
| createTestsStaticFields_B(code); |
| createTestQualifier(T_T_this, 'a', code); |
| createTestQualifier(T_T_this, 'b', code); |
| createTestQualifier(T_T_this, 'c', code); |
| createTestQualifier(T_T_this, 'd', code); |
| createTestQualifier(T_T_this, 'e', code); |
| createTestQualifier(T_T_this, 'f', code); |
| createTestQualifier(I_BB, 'c', code); |
| createTestQualifier(I_BB, 'd', code); |
| createTestQualifier(I_BB, 'e', code); |
| createTestQualifier(I_BB, 'f', code); |
| createTestQualifier(I_BB, 'i', code); |
| createTestQualifier(I_BB, 'j', code); |
| |
| createJavaFile(code, 315, 3); |
| } |
| |
| public static void gen_CB_cb() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('a', 2, code); |
| createTest('b', 2, code); |
| createTestsStaticFields(code); |
| createTestQualifier(T_T_this, 'a', code); |
| createTestQualifier(T_T_this, 'b', code); |
| createTestQualifier(T_T_this, 'c', code); |
| createTestQualifier(T_T_this, 'd', code); |
| createTestQualifier(T_T_this, 'e', code); |
| createTestQualifier(T_T_this, 'f', code); |
| |
| createJavaFile(code, 354, 4); |
| } |
| |
| public static void gen_CC_cc() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('a', 2, code); |
| createTest('b', 2, code); |
| createTestsStaticFields(code); |
| createTestQualifier(T_T_this, 'a', code); |
| createTestQualifier(T_T_this, 'b', code); |
| createTestQualifier(T_T_this, 'c', code); |
| createTestQualifier(T_T_this, 'd', code); |
| createTestQualifier(T_T_this, 'e', code); |
| createTestQualifier(T_T_this, 'f', code); |
| |
| createJavaFile(code, 381, 4); |
| } |
| |
| public static void gen_CD_cd() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('a', 2, code); |
| createTest('b', 2, code); |
| createTestsStaticFields(code); |
| createTestQualifier(T_T_this, 'a', code); |
| createTestQualifier(T_T_this, 'b', code); |
| createTestQualifier(T_T_this, 'c', code); |
| createTestQualifier(T_T_this, 'd', code); |
| createTestQualifier(T_T_this, 'e', code); |
| createTestQualifier(T_T_this, 'f', code); |
| |
| createJavaFile(code, 406, 4); |
| } |
| |
| public static void gen_C_c() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('a', 1, code); |
| createTest('b', 1, code); |
| createTest('e', 1, code); |
| createTest('f', 1, code); |
| createTestsStaticFields(code); |
| createTestQualifier(T_T_this, 'a', code); |
| createTestQualifier(T_T_this, 'b', code); |
| createTestQualifier(T_T_this, 'c', code); |
| createTestQualifier(T_T_this, 'd', code); |
| createTestQualifier(T_T_this, 'e', code); |
| createTestQualifier(T_T_this, 'f', code); |
| |
| createJavaFile(code, 417, 3); |
| } |
| |
| public static void gen_DB_db() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('a', 2, code); |
| createTest('b', 2, code); |
| createTestsStaticFields(code); |
| createTestQualifier(T_T_this, 'a', code); |
| createTestQualifier(T_T_this, 'b', code); |
| createTestQualifier(T_T_this, 'c', code); |
| createTestQualifier(T_T_this, 'd', code); |
| createTestQualifier(T_T_this, 'e', code); |
| createTestQualifier(T_T_this, 'f', code); |
| |
| createJavaFile(code, 455, 4); |
| } |
| |
| public static void gen_DC_dc() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('a', 2, code); |
| createTest('b', 2, code); |
| createTestsStaticFields(code); |
| createTestQualifier(T_T_this, 'a', code); |
| createTestQualifier(T_T_this, 'b', code); |
| createTestQualifier(T_T_this, 'c', code); |
| createTestQualifier(T_T_this, 'd', code); |
| createTestQualifier(T_T_this, 'e', code); |
| createTestQualifier(T_T_this, 'f', code); |
| |
| createJavaFile(code, 481, 4); |
| } |
| |
| public static void gen_DD_dd() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('a', 2, code); |
| createTest('b', 2, code); |
| createTestsStaticFields(code); |
| createTestQualifier(T_T_this, 'a', code); |
| createTestQualifier(T_T_this, 'b', code); |
| createTestQualifier(T_T_this, 'c', code); |
| createTestQualifier(T_T_this, 'd', code); |
| createTestQualifier(T_T_this, 'e', code); |
| createTestQualifier(T_T_this, 'f', code); |
| |
| createJavaFile(code, 506, 4); |
| } |
| |
| public static void gen_D_d() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('a', 1, code); |
| createTest('b', 1, code); |
| createTest('e', 1, code); |
| createTest('f', 1, code); |
| createTestsStaticFields(code); |
| createTestQualifier(T_T_this, 'a', code); |
| createTestQualifier(T_T_this, 'b', code); |
| createTestQualifier(T_T_this, 'c', code); |
| createTestQualifier(T_T_this, 'd', code); |
| createTestQualifier(T_T_this, 'e', code); |
| createTestQualifier(T_T_this, 'f', code); |
| |
| createJavaFile(code, 517, 3); |
| } |
| |
| public static void gen_evalNestedTypeTest() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| |
| createTest('a', 0, code); |
| createTest('b', 0, code); |
| createTest('c', 0, code); |
| createTest('d', 0, code); |
| createTest('e', 0, code); |
| createTest('f', 0, code); |
| createTestThis('a', 0, code); |
| createTestThis('b', 0, code); |
| createTestThis('c', 0, code); |
| createTestThis('d', 0, code); |
| createTestThis('e', 0, code); |
| createTestThis('f', 0, code); |
| createTestsStaticFields(code); |
| createTestQualifier(I_B, 'c', code); |
| createTestQualifier(I_B, 'd', code); |
| createTestQualifier(I_B, 'g', code); |
| createTestQualifier(I_B, 'h', code); |
| createTestQualifier(I_BB, 'c', code); |
| createTestQualifier(I_BB, 'd', code); |
| createTestQualifier(I_BB, 'e', code); |
| createTestQualifier(I_BB, 'f', code); |
| createTestQualifier(I_BB, 'i', code); |
| createTestQualifier(I_BB, 'j', code); |
| |
| createJavaFile(code, 529, 2); |
| } |
| |
| public static void gen_EB_eb() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 2, code); |
| createTestsStaticFields(code); |
| |
| createJavaFile(code, 566, 4); |
| } |
| |
| public static void gen_EC_ec() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 2, code); |
| createTestsStaticFields(code); |
| |
| createJavaFile(code, 592, 4); |
| } |
| |
| public static void gen_ED_ed() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 2, code); |
| createTestsStaticFields(code); |
| |
| createJavaFile(code, 616, 4); |
| } |
| |
| public static void gen_E_e() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 1, code); |
| createTest('f', 1, code); |
| createTestsStaticFields(code); |
| |
| createJavaFile(code, 626, 3); |
| } |
| |
| public static void gen_FB_fb() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 2, code); |
| createTestsStaticFields(code); |
| |
| createJavaFile(code, 664, 4); |
| } |
| |
| public static void gen_FC_fc() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 2, code); |
| createTestsStaticFields(code); |
| |
| createJavaFile(code, 690, 4); |
| } |
| |
| public static void gen_FD_fd() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 2, code); |
| createTestsStaticFields(code); |
| |
| createJavaFile(code, 714, 4); |
| } |
| |
| public static void gen_F_f() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 1, code); |
| createTest('f', 1, code); |
| createTestsStaticFields(code); |
| |
| createJavaFile(code, 724, 3); |
| } |
| |
| public static void gen_evalNestedTypeTestStatic() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTest('b', 0, code); |
| createTest('d', 0, code); |
| createTest('f', 0, code); |
| createTestsStaticFields(code); |
| createTestQualifier(I_A, 'c', code); |
| createTestQualifier(I_A, 'd', code); |
| createTestQualifier(I_A, 'g', code); |
| createTestQualifier(I_A, 'h', code); |
| createTestQualifier(I_AA, 'c', code); |
| createTestQualifier(I_AA, 'd', code); |
| createTestQualifier(I_AA, 'e', code); |
| createTestQualifier(I_AA, 'f', code); |
| createTestQualifier(I_AA, 'i', code); |
| createTestQualifier(I_AA, 'j', code); |
| createTestQualifier(I_AB, 'c', code); |
| createTestQualifier(I_AB, 'd', code); |
| createTestQualifier(I_AB, 'e', code); |
| createTestQualifier(I_AB, 'f', code); |
| createTestQualifier(I_AB, 'i', code); |
| createTestQualifier(I_AB, 'j', code); |
| |
| createJavaFile(code, 739, 2); |
| } |
| |
| public static void gen_main() throws Exception { |
| StringBuffer code= new StringBuffer(); |
| |
| createTestsStaticFields(code); |
| |
| createJavaFile(code, 745, 1); |
| } |
| |
| // ------------------------------ |
| |
| public static void createTestsStaticFields(StringBuffer code) { |
| createTestQualifier(T_T, 'b', code); |
| createTestQualifier(T_T, 'd', code); |
| createTestQualifier(T_T, 'f', code); |
| createTestQualifier(T_T_A, 'd', code); |
| createTestQualifier(T_T_A, 'h', code); |
| createTestQualifier(T_A, 'd', code); |
| createTestQualifier(T_A, 'h', code); |
| createTestQualifier(T_T_A_AA, 'd', code); |
| createTestQualifier(T_T_A_AA, 'f', code); |
| createTestQualifier(T_T_A_AA, 'j', code); |
| createTestQualifier(T_T_A_AB, 'd', code); |
| createTestQualifier(T_T_A_AB, 'f', code); |
| createTestQualifier(T_T_A_AB, 'j', code); |
| createTestQualifier(T_A_AA, 'd', code); |
| createTestQualifier(T_A_AA, 'f', code); |
| createTestQualifier(T_A_AA, 'j', code); |
| createTestQualifier(T_A_AB, 'd', code); |
| createTestQualifier(T_A_AB, 'f', code); |
| createTestQualifier(T_A_AB, 'j', code); |
| createTestQualifier(T_T_B, 'd', code); |
| createTestQualifier(T_T_B, 'h', code); |
| createTestQualifier(T_B, 'd', code); |
| createTestQualifier(T_B, 'h', code); |
| createTestQualifier(T_T_B_BB, 'd', code); |
| createTestQualifier(T_T_B_BB, 'f', code); |
| createTestQualifier(T_T_B_BB, 'j', code); |
| createTestQualifier(T_B_BB, 'd', code); |
| createTestQualifier(T_B_BB, 'f', code); |
| createTestQualifier(T_B_BB, 'j', code); |
| } |
| |
| public static void createTestsStaticFields_A(StringBuffer code) { |
| createTestsStaticFields(code); |
| createTestQualifier(T_AA, 'd', code); |
| createTestQualifier(T_AA, 'f', code); |
| createTestQualifier(T_AA, 'j', code); |
| createTestQualifier(T_AB, 'd', code); |
| createTestQualifier(T_AB, 'f', code); |
| createTestQualifier(T_AB, 'j', code); |
| } |
| |
| public static void createTestsStaticFields_B(StringBuffer code) { |
| createTestsStaticFields(code); |
| createTestQualifier(T_BB, 'd', code); |
| createTestQualifier(T_BB, 'f', code); |
| createTestQualifier(T_BB, 'j', code); |
| } |
| |
| // ------------------------------ |
| |
| public static void createTest(char variable, int level, StringBuffer code) { |
| code.append("\tpublic void testEvalNestedTypeTest_" + variable + "() throws Throwable {\n"); |
| tryBlockBegin(code); |
| |
| genCodeEval(IInternalDebugCoreConstants.EMPTY_STRING + variable + "Int", true, code); |
| genCodeReturnTypeCheck(IInternalDebugCoreConstants.EMPTY_STRING + variable, "int", true, code); |
| genCodeReturnValueCheckPrimitiveType(IInternalDebugCoreConstants.EMPTY_STRING + variable, "int", "Int", variable + "IntValue_" + level, true, code); |
| code.append("\n"); |
| |
| genCodeEval(IInternalDebugCoreConstants.EMPTY_STRING + variable + "String", false, code); |
| genCodeReturnTypeCheck(IInternalDebugCoreConstants.EMPTY_STRING + variable, "java.lang.String", false, code); |
| genCodeReturnValueCheckStringType(IInternalDebugCoreConstants.EMPTY_STRING + variable, variable + "StringValue_" + level, true, code); |
| |
| tryBlockEnd(code); |
| code.append("\t}\n\n"); |
| } |
| |
| public static void createTestThis(char variable, int level, StringBuffer code) { |
| code.append("\tpublic void testEvalNestedTypeTest_this_" + variable + "() throws Throwable {\n"); |
| tryBlockBegin(code); |
| |
| genCodeEval("THIS + " + variable + "Int", true, code); |
| genCodeReturnTypeCheck(IInternalDebugCoreConstants.EMPTY_STRING + variable, "int", true, code); |
| genCodeReturnValueCheckPrimitiveType(IInternalDebugCoreConstants.EMPTY_STRING + variable, "int", "Int", variable + "IntValue_" + level, true, code); |
| code.append("\n"); |
| |
| genCodeEval("THIS + " + variable + "String", false, code); |
| genCodeReturnTypeCheck(IInternalDebugCoreConstants.EMPTY_STRING + variable, "java.lang.String", false, code); |
| genCodeReturnValueCheckStringType(IInternalDebugCoreConstants.EMPTY_STRING + variable, variable + "StringValue_" + level, true, code); |
| |
| tryBlockEnd(code); |
| code.append("\t}\n\n"); |
| } |
| |
| |
| |
| public static void createTestQualifier(int qualifier, char variable, StringBuffer code) { |
| String strQualifier= qualifiers[qualifier]; |
| code.append("\tpublic void testEvalNestedTypeTest_" + strQualifier + "_" + variable + "() throws Throwable {\n"); |
| tryBlockBegin(code); |
| |
| genCodeEval(strQualifier + " + " + variable + "Int", true, code); |
| genCodeReturnTypeCheck(IInternalDebugCoreConstants.EMPTY_STRING + strQualifier + "_" + variable, "int", true, code); |
| genCodeReturnValueCheckPrimitiveType(IInternalDebugCoreConstants.EMPTY_STRING + strQualifier + "_" + variable, "int", "Int", variable + "IntValue_" + qualifiersLevel[qualifier], true, code); |
| code.append("\n"); |
| |
| genCodeEval(strQualifier + " + " + variable + "String", false, code); |
| genCodeReturnTypeCheck(IInternalDebugCoreConstants.EMPTY_STRING + strQualifier + "_" + variable, "java.lang.String", false, code); |
| genCodeReturnValueCheckStringType(IInternalDebugCoreConstants.EMPTY_STRING + strQualifier + "_" + variable, variable + "StringValue_" + qualifiersLevel[qualifier], true, code); |
| |
| tryBlockEnd(code); |
| code.append("\t}\n\n"); |
| } |
| |
| //--------------------- |
| |
| public static void createJavaFile(StringBuffer tests, int lineNumber, int numberFrames) throws Exception { |
| |
| StringBuffer code= new StringBuffer(); |
| |
| code.append("/*******************************************************************************\n"); |
| code.append(" * Copyright (c) 2002, 2003 IBM Corporation and others.\n"); |
| code.append(" * All rights reserved. This program and the accompanying materials \n"); |
| code.append(" * are made available under the terms of the Eclipse Public License v1.0\n"); |
| code.append(" * which accompanies this distribution, and is available at\n"); |
| code.append(" * http://www.eclipse.org/legal/epl-v10.html\n"); |
| code.append(" * \n"); |
| code.append(" * Contributors:\n"); |
| code.append(" * IBM Corporation - initial API and implementation\n"); |
| code.append(" *******************************************************************************/\n"); |
| code.append("package org.eclipse.jdt.debug.tests.eval;\n\n"); |
| code.append("import org.eclipse.jdt.debug.core.IJavaPrimitiveValue;\n\n"); |
| code.append("import org.eclipse.debug.core.model.IValue;\n"); |
| code.append("import org.eclipse.jdt.internal.debug.core.model.JDIObjectValue;\n\n"); |
| code.append("public class NestedTypeFieldValue_" + lineNumber + " extends Tests {\n"); |
| code.append("\t/**\n"); |
| code.append("\t * Constructor for NestedTypeFieldValue.\n"); |
| code.append("\t * @param name\n"); |
| code.append("\t */\n"); |
| code.append("\tpublic NestedTypeFieldValue_" + lineNumber + "(String name) {\n"); |
| code.append("\t\tsuper(name);\n"); |
| code.append("\t}\n\n"); |
| code.append("\tpublic void init() throws Exception {\n"); |
| code.append("\t\tinitializeFrame(\"EvalNestedTypeTests\", " + lineNumber + ", " + numberFrames + ");\n"); |
| code.append("\t}\n\n"); |
| code.append("\tprotected void end() throws Exception {\n"); |
| code.append("\t\tdestroyFrame();\n"); |
| code.append("\t}\n\n"); |
| |
| code.append(tests.toString()); |
| |
| code.append("}\n"); |
| |
| try (Writer file = new FileWriter(new File("NestedTypeFieldValue_" + lineNumber + ".java").getAbsoluteFile())) { |
| file.write(code.toString()); |
| } |
| |
| } |
| } |