~bcsaller/+junk/subordinates-jfdi

« back to all changes in this revision

Viewing changes to juju/state/tests/test_relation.py

  • Committer: Benjamin Saller
  • Date: 2011-11-28 04:13:39 UTC
  • Revision ID: bcsaller@gmail.com-20111128041339-yq2n1m8kfsn341rg
add_relation_state updates principals

Show diffs side-by-side

added added

removed removed

Lines of Context:
1622
1622
        yield self.failUnlessFailure(
1623
1623
            wordpress_states["unit_relation"].watch_related_units(not_called),
1624
1624
            UnknownRelationRole)
 
1625
 
 
1626
    @inlineCallbacks
 
1627
    def test_add_relation_state_with_subordinate(self):
 
1628
        """Adding relation will create a relation node and update topology."""
 
1629
        mysql_ep = RelationEndpoint("mysql", "client-server", "db", "server", False)
 
1630
        logging_ep = RelationEndpoint(
 
1631
            "logging", "client-server", "logger", "client", True)
 
1632
        service = yield self.add_service("logging")
 
1633
        mysql = yield self.add_service("mysql")
 
1634
 
 
1635
        relation_state = (yield self.relation_manager.add_relation_state(
 
1636
            logging_ep, mysql_ep))[0]
 
1637
        topology = yield self.get_topology()
 
1638
        self.assertTrue(topology.has_relation(relation_state.internal_id))
 
1639
        self.assertEquals(topology.get_service_principals(service.internal_id),
 
1640
                          [mysql.internal_id])
 
1641
        self.assertEquals(topology.get_service_suboridnates(service.internal_id), [])
 
1642
        exists = yield self.client.exists(
 
1643
            "/relations/%s" % relation_state.internal_id)
 
1644
        self.assertTrue(exists)
 
1645
        exists = yield self.client.get(
 
1646
            "/relations/%s/settings" % relation_state.internal_id)
 
1647
        self.assertTrue(exists)