TS 69 CNDMultipleHyperlinks

CND 6.9 features (CND69Plans)
Features: C/C++ Unit Tests Multiple Hyperlinks Doxygen Fortran Makefiles
Test scenarios: C/C++ Unit Tests Multiple Hyperlinks Doxygen Fortran Makefiles

C/C++ Pack Test Specification for Multiple Hyperlinks support

Author: Valeriy Soldatov
Version: 0.1
Lastupdate: 19.03.2010
Introduction: Test specification for Multiple Hyperlinks support in NetBeans 6.9 C/C++ Pack

Contents


Test suite: Annotation signs

Purpose: Verify "Overrides" or "Is Overridden" annotation's signs in NetBeans C/C++ Pack 6.9
Comment: -

  1. Count "Overrides", "Is Overridden" and "Is Extended" annotation signs
    1. New Project > Samples > C/C++ > Quote
    2. Specify a project name and location
    3. Let the Set as Main Project check box checked
    4. Press Finish button
    5. Open disk.cc file in editor
    6. Open disk.h file in editor
    7. Open module.cc file in editor
    8. Open module.h file in editor
    9. Open cpu.cc file in editor
    10. Open cpu.h file in editor
    11. Check "Overrides", "Is Overridden" and "Is Extended" annotation signs in disk.cc, disk.h, cpu.cc, cpu.h, module.cc and module.h files
      File:Cnd_overrides_or_overridden.png
    • EXPECTED RESULT: module.h has 4 signs, disk.h has 3 signs, cpu.h has 3 sighs, module.cc has 0 signs, cpu.cc has 3 signs and disk.cc has 3 signs
  2. Check "Is Extended" annotation sign
    1. New Project > Samples > C/C++ > Quote
    2. Specify a project name and location
    3. Let the Set as Main Project check box checked
    4. Press Finish button
    5. Open module.h file in editor
    6. Move cursor on "class Module {" line (39th line)
    7. Click on green square in annotation's area
      Menu with "Cpu","Disk" and "Memory" items appears
    8. Select "Cpu" menu item
      Cursor jumps into cpu.h file at "class Cpu : public Module {" line (35th line)
    9. Open module.h file in editor
    10. Move cursor on "class Module {" line (39th line)
    11. Click on green square in annotation's area
      Menu with "Cpu","Disk" and "Memory" items appears
    12. Select "Disk" menu item
      Cursor jumps into disk.h file at "class Disk : public Module {" line (34th line)
    13. Open module.h file in editor
    14. Move cursor on "class Module {" line (39th line)
    15. Click on green square in annotation's area
      Menu with "Cpu","Disk" and "Memory" items appears
    16. Select "Memory" menu item
    • EXPECTED RESULT: Cursor jumps into memory.h file at "class Memory : public Module {" line (34th line)
  3. Check "Overrides and is overridden" annotation sign
    1. New Project > C/C++ > C/C++ Application
    2. Specify a project name and location and select "C++" in list box
    3. Let the Create Main File check box checked
    4. Let the Set as Main Project check box checked
    5. Press Finish button
    6. Replace source code in main.cpp file on:
      class A { //1st line
      public:
          virtual void func() { //3rd line
              return;
          }
      };

      class B : public A { //8th line
      public:
          void func() { //10th line
              return;
          }
      };

      class C : public B {
      public:
          void func(){ //17th line
              return;
          }
      };
      int main(int argc, char** argv) 
      {

          return (0);
      }

    7. 1st line has "Is Extended" annotation sign
    8. Click on green square at 1st line Menu with "B" and "C" items appears
    9. Select "B" menu item Cursor jumps at 8th line
    10. Click on green square at 1st line
      Menu with "B" and "C" items appears
    11. Select "C" menu item Cursor jumps at 15th line
    12. 3rd line has "Is Overridden" annotation sign
    13. Click on green square at 3rd line Menu with "B::func" and "C::func" items appears
    14. Select "B::func" menu item Cursor jumps at 10th line
    15. Click on green square at 3rd line Menu with "B::func" and "C::func" items appears
    16. Select "C::func" menu item Cursor jumps at 17th line
    17. 8th line has "Is Extended" annotation sign
    18. Click on green square at 8th line Cursor jumps at 15th line
    19. 10th line has "Overrides and is overridden" annotation sign
    20. Click on green circle at 10th line Menu with "A::func" and "C::func" items appears
    21. Select "A::func" menu item Cursor jumps at 3rd line
    22. Click on green circle at 10rd line Menu with "A::func" and "C::func" items appears
    23. Select "C::func" menu item Cursor jumps at 17th line
    24. 17th line has "Overrides B::func" annotation sign
    25. Click on green circle at 17th line
    • EXPECTED RESULT: Cursor jumps at 10th line

Test suite: Go to Implementation action

Purpose: Verify Go to Implementation action in NetBeans C/C++ Pack 6.9
Comment: -

  1. Check "Go to Implementation" via context menu
    1. New Project > C/C++ > C/C++ Application
    2. Specify a project name and location and select "C++" in list box
    3. Let the Create Main File check box checked
    4. Let the Set as Main Project check box checked
    5. Press Finish button
    6. Replace source code in main.cpp file on:
      class A {
      public:
          virtual void func() {
              return;
          }
      };

      class B : public A {
      public:
          void func() {
              return;
          }
      };

      class C : public B {
      public:
          void func() {
              return;
          }
      };

      int main(int argc, char** argv) {
          A* a = new B();
          a->func();
          return (0);
      }

    7. Move mouse cursor on "func" in "a->func();" line, call context menu and select "Navigate|Go to Implementation" Menu with "A::func", "B::func" and "C::func" items appears
    8. Select "A::func" menu item Cursor jumps at 3rd line
    9. Move mouse cursor on "func" in "a->func();" line, call context menu and select "Navigate|Go to Implementation" Menu with "A::func", "B::func" and "C::func" items appears
    10. Select "B::func" menu item Cursor jumps at 10th line
    11. Move mouse cursor on "func" in "a->func();" line, call context menu and select "Navigate|Go to Implementation" Menu with "A::func", "B::func" and "C::func" items appears
    12. Select "C::func" menu item
    • EXPECTED RESULT: Cursor jumps at 17th line
  2. Check "Go to Implementation" via shortcut
    1. New Project > C/C++ > C/C++ Application
    2. Specify a project name and location and select "C++" in list box
    3. Let the Create Main File check box checked
    4. Let the Set as Main Project check box checked
    5. Press Finish button
    6. Replace source code in main.cpp file on:
      class A {
      public:
          virtual void func() = 0 
      };

      class B : public A {
      public:
          void func() {
              return;
          }
      };

      class C : public B {
      public:
          void func() {
              return;
          }
      };

      int main(int argc, char** argv) {
          A* a = new B();
          a->func();
          return (0);
      }

    7. Move cursor on "func" in "a->func();" line and press Ctrl-Alt-B (or Ctrl-Meta-B on MacOSX)Menu with "A::func", "B::func" and "C::func" items appears
    8. Select "A::func" menu item Cursor jumps at 3rd line
    9. Move cursor on "func" in "a->func();" line and press Ctrl-Alt-B (or Ctrl-Meta-B on MacOSX)Menu with "A::func", "B::func" and "C::func" items appears
    10. Select "B::func" menu item Cursor jumps at 8th line
    11. Move cursor on "func" in "a->func();" line and press Ctrl-Alt-B (or Ctrl-Meta-B on MacOSX)Menu with "A::func", "B::func" and "C::func" items appears
    12. Select "C::func" menu item
    • EXPECTED RESULT: Cursor jumps at 15th line
  3. Check "Go to Implementation" via mouse click
    1. New Project > C/C++ > C/C++ Application
    2. Specify a project name and location and select "C++" in list box
    3. Let the Create Main File check box checked
    4. Let the Set as Main Project check box checked
    5. Press Finish button
    6. Replace source code in main.cpp file on: class A {
      public:
          virtual void func() {
              return;
          }
      };

      class B : public A {
      public:
          void func() {
              return;
          }
      };

      class C : public B {
      public:
          void func() {
              return;
          }
      };

      int main(int argc, char** argv) {
          B* b = new B();
          b->func();
          return (0);
      }

    7. Hold Ctrl+Alt (or Ctrl-Meta on MacOSX), move mouse cursor on "func" in "b->func();" line and press left mouse button Menu with "B::func" and "C::func" items appears
    8. Select "B::func" menu item Cursor jumps at 10th line
    9. Hold Ctrl+Alt (or Ctrl-Meta on MacOSX), move mouse cursor on "func" in "b->func();" line and press left mouse button Menu with "B::func" and "C::func" items appears
    10. Select "C::func" menu item
    • EXPECTED RESULT: Cursor jumps at 17th line
Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo