a method to validate that virtualbox is running on Win 7/8 machines

        :return: boolean indicating whether virtualbox is running

def _validate_virtualbox(self):

        '''
            a method to validate that virtualbox is running on Win 7/8 machines

        :return: boolean indicating whether virtualbox is running
        '''

    # validate operating system
        if self.localhost.os.sysname != 'Windows':
            return False
        win_release = float(self.localhost.os.release)
        if win_release >= 10.0:
            return False

    # validate docker-machine installation
        from os import devnull
        from subprocess import call, check_output, STDOUT
        sys_command = 'docker-machine --help'
        try:
            check_output(sys_command, shell=True, stderr=STDOUT).decode('utf-8')
        except Exception as err:
            raise Exception('Docker requires docker-machine to run on Win7/8. GoTo: https://www.docker.com')

    # validate virtualbox is running
        sys_command = 'docker-machine status %s' % self.vbox
        try:
            vbox_status = check_output(sys_command, shell=True, stderr=open(devnull, 'wb')).decode('utf-8').replace('\n', '')
        except Exception as err:
            if not self.vbox:
                raise Exception('Docker requires VirtualBox to run on Win7/8. GoTo: https://www.virtualbox.org')
            elif self.vbox == "default":
                raise Exception('Virtualbox "default" not found. Container will not start without a valid virtualbox.')
            else:
                raise Exception('Virtualbox "%s" not found. Try using "default" instead.' % self.vbox)
        if 'Stopped' in vbox_status:
            raise Exception('Virtualbox "%s" is stopped. Try first running: docker-machine start %s' % (self.vbox, self.vbox))

        return True