? number_issue.patch
Index: modules/field/modules/number/number.test
===================================================================
RCS file: /cvs/drupal/drupal/modules/field/modules/number/number.test,v
retrieving revision 1.1
diff -u -p -r1.1 number.test
--- modules/field/modules/number/number.test	23 Oct 2010 21:03:22 -0000	1.1
+++ modules/field/modules/number/number.test	14 Jan 2011 11:41:02 -0000
@@ -71,5 +71,30 @@ class NumberFieldTestCase extends Drupal
     $id = $match[1];
     $this->assertRaw(t('test_entity @id has been created.', array('@id' => $id)), t('Entity was created'));
     $this->assertRaw(round($value, 2), t('Value is displayed.'));
+    
+    $this->tryCreateContentWithInvalidDecimalAndAssertFail();
+  }
+  
+  function tryCreateContentWithInvalidDecimalAndAssertFail() {
+    $bad_entries = array(
+      '3.14.159',
+      '0..45469',
+      '..4589',
+      '6.459.52',
+      '6.3..25',   
+    );
+    $langcode = LANGUAGE_NONE;
+
+    foreach ($bad_entries as $bad_entry) {
+      $this->drupalGet('test-entity/add/test-bundle');
+      $edit = array(
+      "{$this->field['field_name']}[$langcode][0][value]" => $bad_entry,
+      );
+      $this->drupalPost(NULL, $edit, t('Save'));
+      $this->assertText(
+        t('There should only be one decimal separator in decimal entry.'),
+        t('Correctly failed to save decimal value with more than one decimal point.')
+      );
+    }
   }
 }
