VirtualBox

Ignore:
Timestamp:
Apr 4, 2018 5:07:39 PM (7 years ago)
Author:
vboxsync
Message:

Guest Control/Validation Kit: Enabled copyTo / copyFrom testcases and added more tests to those groups.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/ValidationKit/tests/additions/tdAddGuestCtrl.py

    r71646 r71668  
    928928            'dir_create', 'dir_create_temp', 'dir_read',
    929929            'file_remove', 'file_stat', 'file_read', 'file_write',
    930             #'copy_to',
    931             #'copy_from',
     930            'copy_to', 'copy_from',
    932931            'update_additions'
    933932        ];
     
    11011100                except:
    11021101                    reporter.logXcpt('Waiting exception for sSrc="%s", sDst="%s":' % (sSrc, sDst));
    1103                 fRc = False;
     1102                    fRc = False;
    11041103            else:
    11051104                reporter.error('No progress object returned');
     
    31653164                               aFlags = [ 1234 ] ),
    31663165                  tdTestResult(fRc = False) ],
     3166                # Testing DirectoryCopyFlag flags.
     3167                [ tdTestCopyTo(sUser = sUser, sPassword = sPassword, sSrc = sVBoxValidationKitISO,
     3168                  sDst = 'Whatever', aFlags = [ 1234 ] ),
     3169                  tdTestResult(fRc = False) ],
     3170                # Testing FileCopyFlag flags.
     3171                [ tdTestCopyTo(sUser = sUser, sPassword = sPassword, sSrc = sVBoxValidationKitISO,
     3172                  sDst = 'Whatever', aFlags = [ 1234 ] ),
     3173                  tdTestResult(fRc = False) ],
    31673174                # Nothing to copy (source and/or destination is empty).
    31683175                [ tdTestCopyTo(sUser = sUser, sPassword = sPassword, sSrc = 'z:\\'),
    31693176                  tdTestResult(fRc = False) ],
    31703177                [ tdTestCopyTo(sUser = sUser, sPassword = sPassword, sSrc = '\\\\uncrulez\\foo'),
    3171 
    31723178                  tdTestResult(fRc = False) ],
    31733179                [ tdTestCopyTo(sUser = sUser, sPassword = sPassword, sSrc = 'non-exist',
    31743180                               sDst = os.path.join(sScratch, 'non-exist.dll')),
    31753181                  tdTestResult(fRc = False) ],
    3176                 # Copying single files.
     3182
     3183                #
     3184                # Single file handling.
     3185                #
     3186
    31773187                [ tdTestCopyTo(sUser = sUser, sPassword = sPassword, sSrc = sVBoxValidationKitISO,
    31783188                               sDst = os.path.join(sScratch, 'C:\\non-exist\\')),
     
    31983208                               sDst = sScratch),
    31993209                  tdTestResult(fRc = True) ],
    3200                 ## @todo Add testing the CopyTo flags here!
    3201                 ]);
    3202 
     3210            ]);
     3211
     3212            #
     3213            # Directory handling.
     3214            #
    32033215            if self.oTstDrv.fpApiVer > 5.2: # Copying directories via Main is supported only in versions > 5.2.
    32043216                if self.oTstDrv.sHost == "win":
     
    32833295        reporter.log('Scratch path is: %s' % (sScratch,));
    32843296
     3297        sScratchNotExist = "/does-not-exist";
     3298
    32853299        aaTests = [];
    32863300        if oTestVm.isWindows():
     
    32893303                [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sSrc = ''),
    32903304                  tdTestResult(fRc = False) ],
    3291                 [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sSrc = 'C:\\Windows',
     3305                [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sSrc = 'Something',
    32923306                                 aFlags = [ 1234 ] ),
    32933307                  tdTestResult(fRc = False) ],
     
    32953309                [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sDst = ''),
    32963310                  tdTestResult(fRc = False) ],
    3297                 [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sDst = 'C:\\Windows',
     3311                [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sDst = 'Something',
    32983312                                 aFlags = [ 1234 ] ),
     3313                  tdTestResult(fRc = False) ],
     3314                # Testing DirectoryCopyFlag flags.
     3315                [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sSrc = 'C:\\Windows\\system32',
     3316                  sDst = 'Whatever', aFlags = [ 1234 ] ),
     3317                  tdTestResult(fRc = False) ],
     3318                # Testing FileCopyFlag flags.
     3319                [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sSrc = 'C:\\Windows\\system32\\ole32.dll',
     3320                  sDst = 'Whatever', aFlags = [ 1234 ] ),
    32993321                  tdTestResult(fRc = False) ],
    33003322                # Nothing to copy (sDst is empty / unreachable).
     
    33063328                                 sDst = os.path.join(sScratch, 'non-exist.dll')),
    33073329                  tdTestResult(fRc = False) ],
     3330
     3331                #
     3332                # Single file handling.
     3333                #
     3334
    33083335                # Copying single files.
    33093336                [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sSrc = 'C:\\Windows\\system32\\ole32.dll',
    3310                                  sDst = 'C:\\non-exist\\'),
     3337                                 sDst = sScratchNotExist),
    33113338                  tdTestResult(fRc = False) ],
    33123339                [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sSrc = 'C:\\Windows\\system32\\ole32.dll',
    3313                                  sDst = 'C:\\non\\exist\\'),
    3314                   tdTestResult(fRc = False) ],
    3315                 [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sSrc = 'C:\\Windows\\system32\\ole32.dll',
    3316                                  sDst = 'C:\\non\\exist\\renamedfile.dll'),
    3317                   tdTestResult(fRc = False) ],
     3340                                 sDst = os.path.join(sScratchNotExist, 'renamedfile.dll')),
     3341                  tdTestResult(fRc = False) ],
     3342                # Copy over file using a different destination name.
    33183343                [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sSrc = 'C:\\Windows\\system32\\ole32.dll',
    33193344                                 sDst = os.path.join(sScratch, 'renamedfile.dll')),
    33203345                  tdTestResult(fRc = True) ],
     3346                # Copy over same file (and overwrite existing one).
    33213347                [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sSrc = 'C:\\Windows\\system32\\ole32.dll',
    33223348                                 sDst = os.path.join(sScratch, 'renamedfile.dll')),
    33233349                  tdTestResult(fRc = True) ],
    3324                 #  Destination is a directory, should fail.
     3350                # Destination is a directory with a trailing slash (should work).
     3351                # See "cp" syntax.
     3352                [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sSrc = 'C:\\Windows\\system32\\ole32.dll',
     3353                                 sDst = sScratch + "/"),
     3354                  tdTestResult(fRc = True) ],
     3355                # Destination is a directory (should fail).
     3356                # See "cp" syntax.
    33253357                [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sSrc = 'C:\\Windows\\system32\\ole32.dll',
    33263358                                 sDst = sScratch),
    3327                   tdTestResult(fRc = False) ],
    3328                 # Copying directories.
    3329                 [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sSrc = 'C:\\Windows\\Web',
    3330                                  sDst = sScratch),
    3331                   tdTestResult(fRc = True) ]
    3332                 ## @todo Add testing the CopyFrom aFlags here!
     3359                  tdTestResult(fRc = False) ]
    33333360            ]);
     3361
     3362            #
     3363            # Directory handling.
     3364            #
     3365            if self.oTstDrv.fpApiVer > 5.2: # Copying directories via Main is supported only in versions > 5.2.
     3366                aaTests.extend([
     3367                    # Copying entire directories (destination is "<sScratch>", which exists, which should fail).
     3368                    [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sSrc = 'C:\\Windows\\Web',
     3369                                    sDst = sScratch),
     3370                    tdTestResult(fRc = False) ],
     3371                    # Copying entire directories (destination is "<sScratch>\Web").
     3372                    # Should fail, as the corresponding flag is missing.
     3373                    [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sSrc = 'C:\\Windows\\Web',
     3374                                    sDst = sScratch + "/"),
     3375                    tdTestResult(fRc = False) ],
     3376                    # Next try with correct flag being set.
     3377                    [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sSrc = 'C:\\Windows\\Web',
     3378                                    sDst = sScratch + "/", aFlags = [ vboxcon.DirectoryCopyFlag_CopyIntoExisting ]),
     3379                    tdTestResult(fRc = True) ],
     3380                    # Copying contents of directories (destination is "<sScratch>/").
     3381                    [ tdTestCopyFrom(sUser = sUser, sPassword = sPassword, sSrc = 'C:\\Windows\\Web\\',
     3382                                    sDst = sScratch + "/", aFlags = [ vboxcon.DirectoryCopyFlag_CopyIntoExisting ]),
     3383                    tdTestResult(fRc = True) ]
     3384                ]);
    33343385        else:
    33353386            reporter.log('No OS-specific tests for non-Windows yet!');
     
    33473398                break;
    33483399
     3400            fRc2 = True;
     3401
    33493402            try:
    33503403                if self.oTstDrv.fpApiVer >= 5.0:
     
    33543407
    33553408                if oFsInfo.type is vboxcon.FsObjType_Directory:
    3356                     curProgress = curGuestSession.directoryCopyFrom(curTest.sSrc, curTest.sDst, curTest.aFlags);
     3409                    curProgress = curGuestSession.directoryCopyFromGuest(curTest.sSrc, curTest.sDst, curTest.aFlags);
    33573410                    if curProgress is not None:
    33583411                        oProgress = vboxwrappers.ProgressWrapper(curProgress, self.oTstDrv.oVBoxMgr, self.oTstDrv, \
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette