def test_attribute_name_map(self):
     """Test Control snapshot name map and order."""
     converter = mock.MagicMock()
     block = SnapshotBlockConverter(converter, [])
     block.child_type = "Control"
     self.assertEqual(
         block._attribute_name_map.items(),
         [
             ('slug', 'Code'),
             ('audit', 'Audit'),  # inserted attribute
             ('revision_date', 'Revision Date'),  # inserted attribute
             ('title', 'Title'),
             ('description', 'Description'),
             ('notes', 'Notes'),
             ('test_plan', 'Test Plan'),
             ('start_date', 'Effective Date'),
             ('end_date', 'Last Deprecated Date'),
             ('status', 'State'),
             ('os_state', 'Review State'),
             ('assertions', 'Assertions'),
             ('categories', 'Categories'),
             ('fraud_related', 'Fraud Related'),
             ('key_control', 'Significance'),
             ('kind', 'Kind/Nature'),
             ('means', 'Type/Means'),
             ('reference_url', 'Reference URL'),
             ('verify_frequency', 'Frequency'),
             ('document_evidence', 'Evidence'),
             ('last_assessment_date', 'Last Assessment Date'),
         ])
 def test_attribute_name_map(self):
   """Test Control snapshot name map and order."""
   converter = mock.MagicMock()
   block = SnapshotBlockConverter(converter, [])
   block.child_type = "Control"
   self.assertEqual(
       block._attribute_name_map.items(),
       [
           ('slug', 'Code'),
           ('audit', 'Audit'),  # inserted attribute
           ('revision_date', 'Revision Date'),  # inserted attribute
           ('title', 'Title'),
           ('description', 'Description'),
           ('notes', 'Notes'),
           ('test_plan', 'Test Plan'),
           ('owners', 'Admin'),
           ('start_date', 'Effective Date'),
           ('end_date', 'Stop Date'),
           ('status', 'State'),
           ('os_state', 'Review State'),
           ('assertions', 'Assertions'),
           ('categories', 'Categories'),
           ('fraud_related', 'Fraud Related'),
           ('key_control', 'Significance'),
           ('kind', 'Kind/Nature'),
           ('means', 'Type/Means'),
           ('url', 'Control URL'),
           ('reference_url', 'Reference URL'),
           ('verify_frequency', 'Frequency'),
           ('document_evidence', 'Evidence'),
       ]
   )
Example #3
0
 def test_invalid_child_types(self):
   """Test child_type property with invalid snapshots list."""
   with factories.single_commit():
     snapshots = self._create_snapshots(
         factories.AuditFactory(),
         [factories.ControlFactory(), factories.PolicyFactory()],
     )
   converter = mock.MagicMock()
   ids = [s.id for s in snapshots]
   block = SnapshotBlockConverter(converter, ids)
   with self.assertRaises(AssertionError):
     block.child_type = block.child_type
Example #4
0
 def test_invalid_child_types(self):
   """Test child_type property with invalid snapshots list."""
   with factories.single_commit():
     snapshots = self._create_snapshots(
         factories.AuditFactory(),
         [factories.ControlFactory(), factories.PolicyFactory()],
     )
   converter = mock.MagicMock()
   ids = [s.id for s in snapshots]
   block = SnapshotBlockConverter(converter, ids)
   with self.assertRaises(AssertionError):
     block.child_type = block.child_type
Example #5
0
  def test_attribute_name_map(self):
    """Test Control snapshot name map and order."""
    converter = mock.MagicMock()
    block = SnapshotBlockConverter(converter, [])
    block.child_type = "Control"
    expected_attrs = [
        ('slug', 'Code'),
        ('audit', 'Audit'),  # inserted attribute
        ('revision_date', 'Revision Date'),  # inserted attribute
        ('title', 'Title'),
        ('description', 'Description'),
        ('notes', 'Notes'),
        ('test_plan', 'Assessment Procedure'),
        ('start_date', 'Effective Date'),
        ('end_date', 'Last Deprecated Date'),
        ('archived', 'Archived'),
        ('status', 'State'),
        ('review_status', 'Review State'),
        ('reviewers', 'Reviewers'),
        ('assertions', 'Assertions'),
        ('categories', 'Categories'),
        ('fraud_related', 'Fraud Related'),
        ('key_control', 'Significance'),
        ('kind', 'Kind/Nature'),
        ('means', 'Type/Means'),
        ('verify_frequency', 'Frequency'),
        ('recipients', 'Recipients'),
        ('send_by_default', 'Send by default'),
        ('documents_file', 'Document File'),
        ('documents_reference_url', 'Reference URL'),
        ('updated_at', 'Last Updated Date'),
        ('modified_by', 'Last Updated By'),
        ('created_at', 'Created Date'),
        ('folder', "Folder"),
    ]
    ac_roles = db.session.query(all_models.AccessControlRole.name).filter(
        all_models.AccessControlRole.object_type == "Control",
        all_models.AccessControlRole.internal == 0,
    ).all()
    expected_attrs += sorted(
        ("__acl__:{}".format(role[0]), role[0]) for role in ac_roles
    )
    # last_assessment_date and comments should be in the end
    # according to current order
    expected_attrs.append(('comments', 'Comments'))
    expected_attrs.append(('last_assessment_date', 'Last Assessment Date'))

    self.assertEqual(
        block._attribute_name_map.items(),
        expected_attrs
    )
Example #6
0
  def test_attribute_name_map(self):
    """Test Control snapshot name map and order."""
    converter = mock.MagicMock()
    block = SnapshotBlockConverter(converter, [])
    block.child_type = "Control"
    expected_attrs = [
        ('slug', 'Code'),
        ('audit', 'Audit'),  # inserted attribute
        ('revision_date', 'Revision Date'),  # inserted attribute
        ('title', 'Title'),
        ('description', 'Description'),
        ('notes', 'Notes'),
        ('test_plan', 'Assessment Procedure'),
        ('start_date', 'Effective Date'),
        ('end_date', 'Last Deprecated Date'),
        ('archived', 'Archived'),
        ('status', 'State'),
        ('os_state', 'Review State'),
        ('assertions', 'Assertions'),
        ('categories', 'Categories'),
        ('fraud_related', 'Fraud Related'),
        ('key_control', 'Significance'),
        ('kind', 'Kind/Nature'),
        ('means', 'Type/Means'),
        ('verify_frequency', 'Frequency'),
        ('recipients', 'Recipients'),
        ('send_by_default', 'Send by default'),
        ('documents_file', 'Document File'),
        ('documents_reference_url', 'Reference URL'),
        ('updated_at', 'Last Updated Date'),
        ('modified_by', 'Last Updated By'),
        ('created_at', 'Created Date'),
        ('folder', "Folder"),
    ]
    ac_roles = db.session.query(all_models.AccessControlRole.name).filter(
        all_models.AccessControlRole.object_type == "Control",
        all_models.AccessControlRole.internal == 0,
    ).all()
    expected_attrs += sorted(
        ("__acl__:{}".format(role[0]), role[0]) for role in ac_roles
    )
    # last_assessment_date and comments should be in the end
    # according to current order
    expected_attrs.append(('comments', 'Comments'))
    expected_attrs.append(('last_assessment_date', 'Last Assessment Date'))

    self.assertEqual(
        block._attribute_name_map.items(),
        expected_attrs
    )