Repository: cisagov/manage.get.gov

Issue:
Change "DS Data" to "DS data" everywhere
### Issue description

"DS Data" should be "DS data" in the HTML page title, navigation, heading, error messages, and body text.

<img width="1042" alt="DS-data" src="https://github.com/cisagov/manage.get.gov/assets/60157596/e9fc3cb2-3d9f-4860-95c1-958d6fcca34d">


### Acceptance criteria

- [ ] "DS Data" is "DS data" (sentence case) in all user-facing content

### Additional context

_No response_

### Links to other issues

_No response_


Discussion:
cc @PaulKuykendall for appropriate ticket tagging

Resolving patch:
diff --git a/src/registrar/forms/common.py b/src/registrar/forms/common.py
--- a/src/registrar/forms/common.py
+++ b/src/registrar/forms/common.py
@@ -1,6 +1,6 @@
 # common.py
 #
-# ALGORITHM_CHOICES are options for alg attribute in DS Data
+# ALGORITHM_CHOICES are options for alg attribute in DS data
 # reference:
 # https://www.iana.org/assignments/dns-sec-alg-numbers/dns-sec-alg-numbers.xhtml
 ALGORITHM_CHOICES = [
@@ -18,7 +18,7 @@
     (15, "(15) Ed25519"),
     (16, "(16) Ed448"),
 ]
-# DIGEST_TYPE_CHOICES are options for digestType attribute in DS Data
+# DIGEST_TYPE_CHOICES are options for digestType attribute in DS data
 # reference: https://datatracker.ietf.org/doc/html/rfc4034#appendix-A.2
 DIGEST_TYPE_CHOICES = [
     (1, "(1) SHA-1"),
diff --git a/src/registrar/forms/domain.py b/src/registrar/forms/domain.py
--- a/src/registrar/forms/domain.py
+++ b/src/registrar/forms/domain.py
@@ -302,7 +302,7 @@ class DomainDnssecForm(forms.Form):
 
 
 class DomainDsdataForm(forms.Form):
-    """Form for adding or editing DNSSEC DS Data to a domain."""
+    """Form for adding or editing DNSSEC DS data to a domain."""
 
     def validate_hexadecimal(value):
         """
diff --git a/src/registrar/views/domain.py b/src/registrar/views/domain.py
--- a/src/registrar/views/domain.py
+++ b/src/registrar/views/domain.py
@@ -434,7 +434,7 @@ def get_initial(self):
         return initial_data
 
     def get_success_url(self):
-        """Redirect to the DS Data page for the domain."""
+        """Redirect to the DS data page for the domain."""
         return reverse("domain-dns-dnssec-dsdata", kwargs={"pk": self.object.pk})
 
     def get_context_data(self, **kwargs):
@@ -473,7 +473,7 @@ def post(self, request, *args, **kwargs):
             modal_button = (
                 '<button type="submit" '
                 'class="usa-button usa-button--secondary" '
-                'name="disable-override-click">Remove all DS Data</button>'
+                'name="disable-override-click">Remove all DS data</button>'
             )
 
             # context to back out of a broken form on all fields delete
@@ -523,7 +523,7 @@ def form_valid(self, formset, **kwargs):
                 logger.error(f"Registry error: {err}")
             return self.form_invalid(formset)
         else:
-            messages.success(self.request, "The DS Data records for this domain have been updated.")
+            messages.success(self.request, "The DS data records for this domain have been updated.")
             # superclass has the redirect
             return super().form_valid(formset)
 


Test patch:
diff --git a/src/registrar/tests/test_views.py b/src/registrar/tests/test_views.py
--- a/src/registrar/tests/test_views.py
+++ b/src/registrar/tests/test_views.py
@@ -1941,19 +1941,19 @@ def test_dnssec_page_loads_with_data_in_domain(self):
         self.assertContains(updated_page, "Enable DNSSEC")
 
     def test_ds_form_loads_with_no_domain_data(self):
-        """DNSSEC Add DS Data page loads when there is no
+        """DNSSEC Add DS data page loads when there is no
         domain DNSSEC data and shows a button to Add new record"""
 
         page = self.client.get(reverse("domain-dns-dnssec-dsdata", kwargs={"pk": self.domain_dnssec_none.id}))
-        self.assertContains(page, "You have no DS Data added")
+        self.assertContains(page, "You have no DS data added")
         self.assertContains(page, "Add new record")
 
     def test_ds_form_loads_with_ds_data(self):
-        """DNSSEC Add DS Data page loads when there is
+        """DNSSEC Add DS data page loads when there is
         domain DNSSEC DS data and shows the data"""
 
         page = self.client.get(reverse("domain-dns-dnssec-dsdata", kwargs={"pk": self.domain_dsdata.id}))
-        self.assertContains(page, "DS Data record 1")
+        self.assertContains(page, "DS data record 1")
 
     def test_ds_data_form_modal(self):
         """When user clicks on save, a modal pops up."""
@@ -1974,7 +1974,7 @@ def test_ds_data_form_modal(self):
         self.assertContains(response, "Trigger Disable DNSSEC Modal")
 
     def test_ds_data_form_submits(self):
-        """DS Data form submits successfully
+        """DS data form submits successfully
 
         Uses self.app WebTest because we need to interact with forms.
         """
@@ -1991,10 +1991,10 @@ def test_ds_data_form_submits(self):
         )
         self.app.set_cookie(settings.SESSION_COOKIE_NAME, session_id)
         page = result.follow()
-        self.assertContains(page, "The DS Data records for this domain have been updated.")
+        self.assertContains(page, "The DS data records for this domain have been updated.")
 
     def test_ds_data_form_invalid(self):
-        """DS Data form errors with invalid data (missing required fields)
+        """DS data form errors with invalid data (missing required fields)
 
         Uses self.app WebTest because we need to interact with forms.
         """
@@ -2017,7 +2017,7 @@ def test_ds_data_form_invalid(self):
         self.assertContains(result, "Digest is required", count=2, status_code=200)
 
     def test_ds_data_form_invalid_keytag(self):
-        """DS Data form errors with invalid data (key tag too large)
+        """DS data form errors with invalid data (key tag too large)
 
         Uses self.app WebTest because we need to interact with forms.
         """
@@ -2040,7 +2040,7 @@ def test_ds_data_form_invalid_keytag(self):
         )
 
     def test_ds_data_form_invalid_digest_chars(self):
-        """DS Data form errors with invalid data (digest contains non hexadecimal chars)
+        """DS data form errors with invalid data (digest contains non hexadecimal chars)
 
         Uses self.app WebTest because we need to interact with forms.
         """
@@ -2063,7 +2063,7 @@ def test_ds_data_form_invalid_digest_chars(self):
         )
 
     def test_ds_data_form_invalid_digest_sha1(self):
-        """DS Data form errors with invalid data (digest is invalid sha-1)
+        """DS data form errors with invalid data (digest is invalid sha-1)
 
         Uses self.app WebTest because we need to interact with forms.
         """
@@ -2086,7 +2086,7 @@ def test_ds_data_form_invalid_digest_sha1(self):
         )
 
     def test_ds_data_form_invalid_digest_sha256(self):
-        """DS Data form errors with invalid data (digest is invalid sha-256)
+        """DS data form errors with invalid data (digest is invalid sha-256)
 
         Uses self.app WebTest because we need to interact with forms.
         """