@@ -390,83 +390,6 @@ func initAuthorities(t *testing.T) (*DummyValidationAuthority, sapb.StorageAutho
390390 return dummyVA , sa , ra , rlSource , fc , registration , cleanUp
391391}
392392
393- func TestValidateContacts (t * testing.T ) {
394- _ , _ , ra , _ , _ , _ , cleanUp := initAuthorities (t )
395- defer cleanUp ()
396-
397- ansible := "ansible:earth.sol.milkyway.laniakea/letsencrypt"
398- validEmail := "mailto:admin@email.com"
399- otherValidEmail := "mailto:other-admin@email.com"
400- malformedEmail := "mailto:admin.com"
401- nonASCII := "mailto:señor@email.com"
402- unparsable := "mailto:a@email.com, b@email.com"
403- forbidden := "mailto:a@example.org"
404-
405- err := ra .validateContacts ([]string {})
406- test .AssertNotError (t , err , "No Contacts" )
407-
408- err = ra .validateContacts ([]string {validEmail , otherValidEmail })
409- test .AssertError (t , err , "Too Many Contacts" )
410-
411- err = ra .validateContacts ([]string {validEmail })
412- test .AssertNotError (t , err , "Valid Email" )
413-
414- err = ra .validateContacts ([]string {malformedEmail })
415- test .AssertError (t , err , "Malformed Email" )
416-
417- err = ra .validateContacts ([]string {ansible })
418- test .AssertError (t , err , "Unknown scheme" )
419-
420- err = ra .validateContacts ([]string {"" })
421- test .AssertError (t , err , "Empty URL" )
422-
423- err = ra .validateContacts ([]string {nonASCII })
424- test .AssertError (t , err , "Non ASCII email" )
425-
426- err = ra .validateContacts ([]string {unparsable })
427- test .AssertError (t , err , "Unparsable email" )
428-
429- err = ra .validateContacts ([]string {forbidden })
430- test .AssertError (t , err , "Forbidden email" )
431-
432- err = ra .validateContacts ([]string {"mailto:admin@localhost" })
433- test .AssertError (t , err , "Forbidden email" )
434-
435- err = ra .validateContacts ([]string {"mailto:admin@example.not.a.iana.suffix" })
436- test .AssertError (t , err , "Forbidden email" )
437-
438- err = ra .validateContacts ([]string {"mailto:admin@1.2.3.4" })
439- test .AssertError (t , err , "Forbidden email" )
440-
441- err = ra .validateContacts ([]string {"mailto:admin@[1.2.3.4]" })
442- test .AssertError (t , err , "Forbidden email" )
443-
444- err = ra .validateContacts ([]string {"mailto:admin@a.com?no-reminder-emails" })
445- test .AssertError (t , err , "No hfields in email" )
446-
447- err = ra .validateContacts ([]string {"mailto:example@a.com?" })
448- test .AssertError (t , err , "No hfields in email" )
449-
450- err = ra .validateContacts ([]string {"mailto:example@a.com#" })
451- test .AssertError (t , err , "No fragment" )
452-
453- err = ra .validateContacts ([]string {"mailto:example@a.com#optional" })
454- test .AssertError (t , err , "No fragment" )
455-
456- // The registrations.contact field is VARCHAR(191). 175 'a' characters plus
457- // the prefix "mailto:" and the suffix "@a.com" makes exactly 191 bytes of
458- // encoded JSON. The correct size to hit our maximum DB field length.
459- var longStringBuf strings.Builder
460- longStringBuf .WriteString ("mailto:" )
461- for range 175 {
462- longStringBuf .WriteRune ('a' )
463- }
464- longStringBuf .WriteString ("@a.com" )
465-
466- err = ra .validateContacts ([]string {longStringBuf .String ()})
467- test .AssertError (t , err , "Too long contacts" )
468- }
469-
470393func TestNewRegistration (t * testing.T ) {
471394 _ , sa , ra , _ , _ , _ , cleanUp := initAuthorities (t )
472395 defer cleanUp ()
0 commit comments