123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221 |
- import org.aspectj.testing.Tester;
-
- privileged aspect TheAspect perthis(this(TheObject)) {
- private TheObject theObject;
- private int myPrivate_int=-1, myPackage_int=-1, myProtected_int=-1, myPublic_int=-1;
-
- after() returning(TheObject obj): execution(new()) {
- theObject = obj;
- }
-
- after() returning(): call(* realMain(..)) {
- test_eq();
- test_timeseq();
- test_diveq();
- test_modeq();
- test_pluseq();
- test_minuseq();
- test_leftShifteq();
- test_rightShifteq();
- test_xoreq();
- test_andeq();
- test_unsignedRightShifteq();
- test_postinc();
- test_postdec();
- test_preinc();
- test_predec();
- test_oreq();
- test_gets();
- test_calls();
- }
-
- public void test_eq() {
- theObject.private_int = 1;
- theObject.protected_int = 2;
- theObject.package_int = 3;
- theObject.public_int = 4;
- Tester.checkEqual(theObject.private_int,1,"set private_int");
- Tester.checkEqual(theObject.protected_int,2,"set protected_int");
- Tester.checkEqual(theObject.package_int,3,"set package_int");
- Tester.checkEqual(theObject.public_int,4,"set public_int");
- }
-
- public void test_timeseq() {
- theObject.private_int *= 4;
- theObject.protected_int *= 4;
- theObject.package_int *= 4;
- theObject.public_int *= 4;
- Tester.checkEqual(theObject.private_int,4,"times private_int");
- Tester.checkEqual(theObject.protected_int,8,"times protected_int");
- Tester.checkEqual(theObject.package_int,12,"times package_int");
- Tester.checkEqual(theObject.public_int,16,"times public_int");
- }
-
- public void test_diveq() {
- theObject.private_int /= 2;
- theObject.protected_int /= 2;
- theObject.package_int /= 2;
- theObject.public_int /= 2;
- Tester.checkEqual(theObject.private_int,2,"div private_int");
- Tester.checkEqual(theObject.protected_int,4,"div protected_int");
- Tester.checkEqual(theObject.package_int,6,"div package_int");
- Tester.checkEqual(theObject.public_int,8,"div public_int");
- }
-
- public void test_modeq() {
- theObject.private_int %= 2;
- theObject.protected_int %= 3;
- theObject.package_int %= 4;
- theObject.public_int %= 5;
- Tester.checkEqual(theObject.private_int,0,"mod private_int");
- Tester.checkEqual(theObject.protected_int,1,"mod protected_int");
- Tester.checkEqual(theObject.package_int,2,"mod package_int");
- Tester.checkEqual(theObject.public_int,3,"mod public_int");
- }
-
- public void test_pluseq() {
- theObject.private_int += 2;
- theObject.protected_int += 2;
- theObject.package_int += 2;
- theObject.public_int += 2;
- Tester.checkEqual(theObject.private_int,2,"plus private_int");
- Tester.checkEqual(theObject.protected_int,3,"plus protected_int");
- Tester.checkEqual(theObject.package_int,4,"plus package_int");
- Tester.checkEqual(theObject.public_int,5,"plus public_int");
- }
-
- public void test_minuseq() {
- theObject.private_int -= 1;
- theObject.protected_int -= 1;
- theObject.package_int -= 1;
- theObject.public_int -= 1;
- Tester.checkEqual(theObject.private_int,1,"minus private_int");
- Tester.checkEqual(theObject.protected_int,2,"minus protected_int");
- Tester.checkEqual(theObject.package_int,3,"minus package_int");
- Tester.checkEqual(theObject.public_int,4,"minus public_int");
- }
-
- public void test_leftShifteq() {
- theObject.private_int <<= 1;
- theObject.protected_int <<= 1;
- theObject.package_int <<= 1;
- theObject.public_int <<= 1;
- Tester.checkEqual(theObject.private_int,2,"left shift private_int");
- Tester.checkEqual(theObject.protected_int,4,"left shift protected_int");
- Tester.checkEqual(theObject.package_int,6,"left shift package_int");
- Tester.checkEqual(theObject.public_int,8,"left shift public_int");
- }
-
- public void test_rightShifteq() {
- theObject.private_int >>= 1;
- theObject.protected_int >>= 1;
- theObject.package_int >>= 1;
- theObject.public_int >>= 1;
- Tester.checkEqual(theObject.private_int,1,"right shift private_int");
- Tester.checkEqual(theObject.protected_int,2,"right shift protected_int");
- Tester.checkEqual(theObject.package_int,3,"right shift package_int");
- Tester.checkEqual(theObject.public_int,4,"right shift public_int");
- }
-
- public void test_xoreq() {
- theObject.private_int ^= 0;
- theObject.protected_int ^= 1;
- theObject.package_int ^= 1;
- theObject.public_int ^= 1;
- Tester.checkEqual(theObject.private_int,1,"xor private_int");
- Tester.checkEqual(theObject.protected_int,3,"xor protected_int");
- Tester.checkEqual(theObject.package_int,2,"xor package_int");
- Tester.checkEqual(theObject.public_int,5,"xor public_int");
- }
-
- public void test_andeq() {
- theObject.private_int &= 3;
- theObject.protected_int &= 6;
- theObject.package_int &= 3;
- theObject.public_int &= 4;
- Tester.checkEqual(theObject.private_int,1,"and private_int");
- Tester.checkEqual(theObject.protected_int,2,"and protected_int");
- Tester.checkEqual(theObject.package_int,2,"and package_int");
- Tester.checkEqual(theObject.public_int,4,"and public_int");
- }
-
- public void test_unsignedRightShifteq() {
- theObject.private_int >>>= 0;
- theObject.protected_int >>>= 1;
- theObject.package_int >>>= 1;
- theObject.public_int >>>= 2;
- Tester.checkEqual(theObject.private_int,1,"unsigned right shift private_int");
- Tester.checkEqual(theObject.protected_int,1,"unsigned right shift protected_int");
- Tester.checkEqual(theObject.package_int,1,"unsigned right shift package_int");
- Tester.checkEqual(theObject.public_int,1,"unsigned right shift public_int");
- }
-
- public void test_postinc() {
- theObject.private_int ++;
- theObject.protected_int ++;
- theObject.package_int ++;
- theObject.public_int ++;
- Tester.checkEqual(theObject.private_int,2,"post ++ private_int");
- Tester.checkEqual(theObject.protected_int,2,"post ++ protected_int");
- Tester.checkEqual(theObject.package_int,2,"post ++ package_int");
- Tester.checkEqual(theObject.public_int,2,"post ++ public_int");
- }
-
- public void test_postdec() {
- theObject.private_int --;
- theObject.protected_int --;
- theObject.package_int --;
- theObject.public_int --;
- Tester.checkEqual(theObject.private_int,1,"post -- private_int");
- Tester.checkEqual(theObject.protected_int,1,"post -- protected_int");
- Tester.checkEqual(theObject.package_int,1,"post -- package_int");
- Tester.checkEqual(theObject.public_int,1,"post -- public_int");
- }
-
- public void test_preinc() {
- ++ theObject.private_int;
- ++ theObject.protected_int;
- ++ theObject.package_int;
- ++ theObject.public_int;
- Tester.checkEqual(theObject.private_int,2,"pre ++ private_int");
- Tester.checkEqual(theObject.protected_int,2,"pre ++ protected_int");
- Tester.checkEqual(theObject.package_int,2,"pre ++ package_int");
- Tester.checkEqual(theObject.public_int,2,"pre ++ public_int");
- }
-
- public void test_predec() {
- -- theObject.private_int;
- -- theObject.protected_int;
- -- theObject.package_int;
- -- theObject.public_int;
- Tester.checkEqual(theObject.private_int,1,"pre -- private_int");
- Tester.checkEqual(theObject.protected_int,1,"pre -- protected_int");
- Tester.checkEqual(theObject.package_int,1,"pre -- package_int");
- Tester.checkEqual(theObject.public_int,1,"pre -- public_int");
- }
-
- public void test_oreq() {
- theObject.private_int |= 8;
- theObject.protected_int |= 8;
- theObject.package_int |= 8;
- theObject.public_int |= 8;
- Tester.checkEqual(theObject.private_int,9,"or private_int");
- Tester.checkEqual(theObject.protected_int,9,"or protected_int");
- Tester.checkEqual(theObject.package_int,9,"or package_int");
- Tester.checkEqual(theObject.public_int,9,"or public_int");
- }
-
- public void test_gets() {
- myPrivate_int = theObject.private_int;
- myProtected_int = theObject.protected_int;
- myPackage_int = theObject.package_int;
- myPublic_int = theObject.public_int;
- }
-
- public void test_calls() {
- theObject.private_call();
- theObject.protected_call();
- theObject.package_call();
- theObject.public_call();
- }
- }
|