new_contents: """ These tests demonstrate pytest marker use for finding and running tests.
  
      Usage examples from this file:
          pytest -v -m marker_test_suite                 # Runs A, B, C, D
          pytest -v -m marker1                           # Runs A
          pytest -v -m marker2                           # Runs B, C
          pytest -v -m xkcd_code                         # Runs C
          pytest test_markers.py -v -m "not marker2"     # Runs A, D
  
      (The "-v" will display the names of tests as they run.)
      (Add "--collect-only" to display names of tests without running them.)
  """
  
  import pytest
  from seleniumbase import BaseCase
  
  
  @pytest.mark.marker_test_suite
  class MarkerTestSuite(BaseCase):
  
      @pytest.mark.marker1
      def test_A(self):
          self.open("https://xkcd.com/1319/")
          self.assert_text("Automation", "div#ctitle")
  
      @pytest.mark.marker2
      def test_B(self):
          self.open("https://www.xkcd.com/1700/")
          self.assert_text("New Bug", "div#ctitle")
  
      @pytest.mark.marker2
      @pytest.mark.xkcd_code  # Tests can have multiple markers
      def test_C(self):
          self.open("https://xkcd.com/844/")
          self.assert_text("Good Code", "div#ctitle")
  
      def test_D(self):
          self.open("https://xkcd.com/2021/")
          self.assert_text("Software Development", "div#ctitle")
  
subject: Add test suite for demoing pytest markers