diff --git a/simplenews_scheduler.info b/simplenews_scheduler.info
index 48fc07a..6f32cc8 100644
--- a/simplenews_scheduler.info
+++ b/simplenews_scheduler.info
@@ -5,3 +5,4 @@ package = Mail
 dependencies[] = simplenews
 dependencies[] = date
 dependencies[] = token
+files[] = tests/simplenews_scheduler.test
diff --git a/simplenews_scheduler.module b/simplenews_scheduler.module
index 80098d9..1adbd5a 100644
--- a/simplenews_scheduler.module
+++ b/simplenews_scheduler.module
@@ -513,7 +513,7 @@ function _simplenews_scheduler_new_edition($nid) {
     // Load the template node and clone an edition.
     $template_node = node_load($nid);
     $edition_node = simplenews_scheduler_clone_node($template_node);
-
+    
     // Run the title through token replacement.
     $edition_node->title = token_replace($edition_node->title, array('node' => $edition_node));
 
diff --git a/tests/simplenews_scheduler.test b/tests/simplenews_scheduler.test
new file mode 100644
index 0000000..b660798
--- /dev/null
+++ b/tests/simplenews_scheduler.test
@@ -0,0 +1,90 @@
+<?php
+
+/**
+ * @file
+ * Test for using date fields with Migrate module.
+ */
+
+/**
+ * Test date migration.
+ */
+class SimpleNewsSchedulerNodeCreationTest extends DrupalWebTestCase {
+  protected $privileged_user;
+
+  /**
+   * Provides information about this test.
+   */
+  public static function getInfo() {
+    return array(
+      'name' => 'Simplenews Scheduler newsletter generation test',
+      'description' => 'Testing generation of newsletters',
+      'group' => 'Simplenews Scheduler',
+    );
+  }
+
+  /**
+   * Declars the module dependencies for the test.
+   */
+  function setUp() {
+    parent::setUp( 'simplenews',  'simplenews_scheduler',  'token' , 'date');
+
+    $this->privileged_user = $this->drupalCreateUser(array(
+      'access content',
+      'administer nodes',
+      'create simplenews content',
+      'edit own simplenews content',
+      'send newsletter',
+      'send scheduled newsletters',
+      'overview scheduled newsletters',
+      ));
+    $this->drupalLogin($this->privileged_user);    
+  }
+
+  /**
+   * Basic simplenews newsletter generation test
+   * create a simplenews node,
+   */
+  function testNewsletterGeneration() {
+    $edit = array();
+    $title ="newsletter ".$this->randomName(8);
+
+    $edit = array();
+    $edit['title'] = $title;
+    $edit["body[und][0][value]"] = $this->randomName(16);
+    $this->drupalPost('node/add/simplenews', $edit, t('Save'));        
+    $this->assertText($title);
+
+    preg_match('|node/(\d+)$|', $this->getUrl(), $matches);
+    $node = node_load($matches[1]);
+
+    // make sure it knows no editions created yet
+    $this->drupalGet("node/{$node->nid}/editions");
+    $this->assertText(t("No scheduled newsletter editions have been sent."));
+    
+    // now create the simplenews schedule conig
+    $this->drupalGet("node/{$node->nid}/simplenews");
+    $this->assertText(t("Send newsletter according to schedule"));
+    
+    $edit = array();
+    $edit["simplenews[send]"] = '4';
+    $edit["simplenews[scheduler][interval]"] = "hour";
+    $edit["simplenews[scheduler][start_date][day]"] = "1";
+    $this->drupalPost("node/{$node->nid}/simplenews", $edit, t('Submit'));    
+
+
+    // make sure it knows no editions created yet
+    $this->drupalGet("node/{$node->nid}/editions");
+    $this->assertText(t("No scheduled newsletter editions have been sent."));
+
+    // call our hook to generate it
+    simplenews_scheduler_cron();
+    
+    // see if it was created
+    $this->drupalGet("node/{$node->nid}/editions");
+    $this->assertText($title);
+    $this->assertNoText(t("No scheduled newsletter editions have been sent."));
+    
+  }
+
+
+}
