You are here

MigrateAggregatorFeedTest.php in Zircon Profile 8.0

File

core/modules/aggregator/src/Tests/Migrate/d7/MigrateAggregatorFeedTest.php
View source
<?php

/**
 * @file
 * Contains \Drupal\aggregator\Tests\Migrate\d7\MigrateAggregatorFeedTest.
 */
namespace Drupal\aggregator\Tests\Migrate\d7;

use Drupal\aggregator\Entity\Feed;
use Drupal\migrate_drupal\Tests\d7\MigrateDrupal7TestBase;

/**
 * Test migration to aggregator_feed entities.
 *
 * @group migrate_drupal_7
 */
class MigrateAggregatorFeedTest extends MigrateDrupal7TestBase {

  /**
   * {@inheritdoc}
   */
  public static $modules = [
    'aggregator',
  ];

  /**
   * {@inheritdoc}
   */
  protected function setUp() {
    parent::setUp();
    $this
      ->installEntitySchema('aggregator_feed');
    $this
      ->executeMigration('d7_aggregator_feed');
  }

  /**
   * Tests migration of aggregator feeds.
   */
  public function testAggregatorFeedImport() {

    /** @var \Drupal\aggregator\FeedInterface $feed */
    $feed = Feed::load(1);
    $this
      ->assertIdentical('Know Your Meme', $feed
      ->label());
    $this
      ->assertIdentical('en', $feed
      ->language()
      ->getId());
    $this
      ->assertIdentical('http://knowyourmeme.com/newsfeed.rss', $feed
      ->getUrl());
    $this
      ->assertIdentical('900', $feed
      ->getRefreshRate());

    // The feed's last checked time can change as the fixture is updated, so
    // assert that its format is correct.
    $checked_time = $feed
      ->getLastCheckedTime();
    $this
      ->assertTrue(is_numeric($checked_time));
    $this
      ->assertTrue($checked_time > 1000000000);
    $this
      ->assertIdentical('0', $feed
      ->getQueuedTime());
    $this
      ->assertIdentical('http://knowyourmeme.com', $feed->link->value);
    $this
      ->assertIdentical('New items added to the News Feed', $feed
      ->getDescription());
    $this
      ->assertNull($feed
      ->getImage());

    // As with getLastCheckedTime(), the etag can change as the fixture is
    // updated normally, so assert that its format is correct.
    $this
      ->assertTrue(preg_match('/^"[a-z0-9]{32}"$/', $feed
      ->getEtag()));
    $this
      ->assertIdentical('0', $feed
      ->getLastModified());
  }

}

Classes

Namesort descending Description
MigrateAggregatorFeedTest Test migration to aggregator_feed entities.