Ejemplo n.º 1
0
    def test_snapshot_full_entities(self):
        """Test snapshotting an entity whose data are all entities."""
        snapshot = JsonSnapshot(title='Test Graph')
        entity_a = snapshot.new_entity(name='Entity Name')
        expect_a = {'_id': 1, 'name': 'Entity Name'}

        entity_b = snapshot.new_entity(data=1234, type='scalar')
        expect_b = {'_id': 2, 'data': 1234, 'type': 'scalar'}

        entity_c = snapshot.new_entity(data=3.14, type='real')
        expect_c = {'_id': 3, 'data': 3.14, 'type': 'real'}

        snapshot.edge_builder.make(entity_a, 'A to B', entity_b)
        expect_ab = {'_to': entity_b.id, 'label': 'A to B'}

        snapshot.edge_builder.make(entity_a, 'A to C', entity_c)
        expect_ac = {'_to': entity_c.id, 'label': 'A to C'}

        expect_a['_edges'] = [expect_ab, expect_ac]
        expect = {
            '_subject_id': 1,
            '_type': 'JsonSnapshot',
            '_entities': [expect_a, expect_b, expect_c],
            'title': 'Test Graph'
        }
        json_obj = snapshot.to_json_object()
        self.assertItemsEqual(expect, json_obj)
Ejemplo n.º 2
0
  def test_snapshot_full_entities(self):
    """Test snapshotting an entity whose data are all entities."""
    snapshot = JsonSnapshot(title='Test Graph')
    entity_a = snapshot.new_entity(name='Entity Name')
    expect_a = {'_id': 1, 'name': 'Entity Name'}

    entity_b = snapshot.new_entity(data=1234, type='scalar')
    expect_b = {'_id': 2, 'data': 1234, 'type': 'scalar'}

    entity_c = snapshot.new_entity(data=3.14, type='real')
    expect_c = {'_id': 3, 'data': 3.14, 'type': 'real'}

    snapshot.edge_builder.make(entity_a, 'A to B', entity_b)
    expect_ab = {'_to': entity_b.id, 'label': 'A to B'}

    snapshot.edge_builder.make(entity_a, 'A to C', entity_c)
    expect_ac = {'_to': entity_c.id, 'label': 'A to C'}

    expect_a['_edges'] = [expect_ab, expect_ac]
    expect = {'_subject_id': 1,
              '_type': 'JsonSnapshot',
              '_entities': [expect_a, expect_b, expect_c],
              'title': 'Test Graph'}
    json_obj = snapshot.to_json_object()
    self.assertItemsEqual(expect, json_obj)
Ejemplo n.º 3
0
    def test_snapshot_edge_builder(self):
        """Test focused on snapshot.edge_builder property."""
        snapshot = JsonSnapshot(title='Test Snapshot')
        entity_a = snapshot.new_entity(name='Entity A')
        entity_b = snapshot.new_entity(name='Entity B')
        expect_a = {'_id': 1, 'name': 'Entity A'}

        expect_edges = []
        snapshot.edge_builder.make_mechanism(entity_a, 'B', entity_b)
        expect_edges.append({'_to': 2, 'label': 'B', 'relation': 'MECHANISM'})

        snapshot.edge_builder.make_control(entity_a, 'field', -321)
        expect_edges.append({
            '_value': -321,
            'label': 'field',
            'relation': 'CONTROL'
        })

        expect = {
            '_subject_id': 1,
            '_type': 'JsonSnapshot',
            '_entities': [expect_a],
            'title': 'Test Snapshot'
        }
        json_obj = snapshot.to_json_object()

        self.assertItemsEqual(expect, json_obj)
Ejemplo n.º 4
0
  def test_snapshot_fields(self):
    """Test snapshotting an entity whose data are simple values."""
    snapshot = JsonSnapshot(title='Test Snapshot')
    entity_a = snapshot.new_entity(name='Entity Name')
    expect_a = {'_id': 1, 'name': 'Entity Name'}

    expect_edges = []
    snapshot.edge_builder.make(entity_a, 'scalar', 1234)
    expect_edges.append({'_value': 1234, 'label': 'scalar'})

    snapshot.edge_builder.make(entity_a, 'real', 3.14)
    expect_edges.append({'_value': 3.14, 'label': 'real'})

    expect = {'_subject_id': 1,
              '_type': 'JsonSnapshot',
              '_entities': [expect_a],
              'title': 'Test Snapshot'}
    json_obj = snapshot.to_json_object()

    self.assertItemsEqual(expect, json_obj)
Ejemplo n.º 5
0
  def test_snapshot_fields(self):
    """Test snapshotting an entity whose data are simple values."""
    snapshot = JsonSnapshot(title='Test Snapshot')
    entity_a = snapshot.new_entity(name='Entity Name')
    expect_a = {'_id': 1, 'name': 'Entity Name'}

    expect_edges = []
    snapshot.edge_builder.make(entity_a, 'scalar', 1234)
    expect_edges.append({'_value': 1234, 'label': 'scalar'})

    snapshot.edge_builder.make(entity_a, 'real', 3.14)
    expect_edges.append({'_value': 3.14, 'label': 'real'})

    expect = {'_subject_id': 1,
              '_type': 'JsonSnapshot',
              '_entities': [expect_a],
              'title': 'Test Snapshot'}
    json_obj = snapshot.to_json_object()

    self.assertItemsEqual(expect, json_obj)
Ejemplo n.º 6
0
  def test_snapshot_edge_builder(self):
    """Test focused on snapshot.edge_builder property."""
    snapshot = JsonSnapshot(title='Test Snapshot')
    entity_a = snapshot.new_entity(name='Entity A')
    entity_b = snapshot.new_entity(name='Entity B')
    expect_a = {'_id': 1, 'name': 'Entity A'}

    expect_edges = []
    snapshot.edge_builder.make_mechanism(entity_a, 'B', entity_b)
    expect_edges.append({'_to': 2, 'label': 'B', 'relation': 'MECHANISM'})

    snapshot.edge_builder.make_control(entity_a, 'field', -321)
    expect_edges.append({'_value': -321, 'label': 'field',
                         'relation': 'CONTROL'})

    expect = {'_subject_id': 1,
              '_type': 'JsonSnapshot',
              '_entities': [expect_a],
              'title': 'Test Snapshot'}
    json_obj = snapshot.to_json_object()

    self.assertItemsEqual(expect, json_obj)