Exemple #1
0
  def test_instances_with_page_token(self):
    """Ensures all instances are returned."""
    def get_instances_in_instance_group(*args, **kwargs):
      if kwargs.get('page_token'):
        return {
            'items': [
                {'instance': 'url/instance-2'},
            ],
        }
      return {
          'items': [
              {'instance': 'url/instance-1'},
          ],
          'nextPageToken': 'page-token',
      }
    self.mock(
        instances.gce.Project,
        'get_instances_in_instance_group',
        get_instances_in_instance_group,
    )

    key = models.InstanceGroupManager(
        key=instance_group_managers.get_instance_group_manager_key(
            'base-name',
            'revision',
            'zone',
        ),
        url='url',
    ).put()
    models.InstanceTemplateRevision(key=key.parent(), project='project').put()
    expected_urls = ['url/instance-1', 'url/instance-2']

    urls = instances.fetch(key)
    self.assertItemsEqual(urls, expected_urls)
Exemple #2
0
    def test_parent_doesnt_exist(self):
        """Ensures nothing happens when the parent doesn't exist."""
        key = models.InstanceGroupManager(
            key=instance_group_managers.get_instance_group_manager_key(
                'base-name',
                'revision',
                'zone',
            ), ).put()

        urls = instances.fetch(key)
        self.failIf(urls)
Exemple #3
0
    def test_parent_project_unspecified(self):
        """Ensures nothing happens when parent doesn't specify a project."""
        key = models.InstanceGroupManager(
            key=instance_group_managers.get_instance_group_manager_key(
                'base-name',
                'revision',
                'zone',
            ), ).put()
        models.InstanceTemplateRevision(key=key.parent()).put()

        urls = instances.fetch(key)
        self.failIf(urls)
Exemple #4
0
  def test_no_instances(self):
    """Ensures nothing happens when there are no instances."""
    def get_instances_in_instance_group(*args, **kwargs):
      return {}
    self.mock(
        instances.gce.Project,
        'get_instances_in_instance_group',
        get_instances_in_instance_group,
    )

    key = models.InstanceGroupManager(
        key=instance_group_managers.get_instance_group_manager_key(
            'base-name',
            'revision',
            'zone',
        ),
        url='url',
    ).put()
    models.InstanceTemplateRevision(key=key.parent(), project='project').put()

    urls = instances.fetch(key)
    self.failIf(urls)
Exemple #5
0
 def test_entity_doesnt_exist(self):
   """Ensures nothing happens when the entity doesn't exist."""
   key = ndb.Key(models.InstanceGroupManager, 'fake-key')
   urls = instances.fetch(key)
   self.failIf(urls)