# sqlobject.tests.test_joins module

class `sqlobject.tests.test_joins.``AddressJoiner`(**kw)

  Bases: `sqlobject.main.SQLObject`

  `addPersonJoiner`(obj)
  classmethod `byZip`(val, connection=None)
  `j` = address_joiner
  `personJoiners`
  `q` = address_joiner
  `removePersonJoiner`(obj)
  class `sqlmeta`(instance)

    Bases: `sqlobject.main.sqlmeta`

    `childName` = None
    `columnDefinitions` = {'zip': <StringCol b386c8ccL zip>}
    `columnList` = [<SOStringCol zip alternate ID>]
    `columns` = {'zip': <SOStringCol zip alternate ID>}
    `idName` = 'id'
    `indexDefinitions` = []
    `indexes` = []
    `joinDefinitions` = [<sqlobject.joins.RelatedJoin object>]
    `joins` = [<sqlobject.joins.SORelatedJoin object>]
    `soClass`

      alias of `AddressJoiner`

    `style` = <sqlobject.styles.MixedCaseUnderscoreStyle object>
    `table` = 'address_joiner'
  `AddressJoiner.``zip`

class `sqlobject.tests.test_joins.``AddressJoiner2`(**kw)

  Bases: `sqlobject.main.SQLObject`

  `j` = address_joiner2
  `personJoiner2`
  `personJoiner2ID`
  `plus4`
  `q` = address_joiner2
  class `sqlmeta`(instance)

    Bases: `sqlobject.main.sqlmeta`

    `childName` = None
    `columnDefinitions` = {'personJoiner2ID': <ForeignKey b5485b8cL personJoiner2>, 'plus4': <StringCol b5485cacL plus4>, 'zip': <StringCol b5485a4cL zip>}
    `columnList` = [<SOStringCol zip>, <SOStringCol plus4 default=None>, <SOForeignKey personJoiner2ID connected to PersonJoiner2>]
    `columns` = {'personJoiner2ID': <SOForeignKey personJoiner2ID connected to PersonJoiner2>, 'plus4': <SOStringCol plus4 default=None>, 'zip': <SOStringCol zip>}
    `defaultOrder` = ['-zip', 'plus4']
    `idName` = 'id'
    `indexDefinitions` = []
    `indexes` = []
    `joinDefinitions` = []
    `joins` = []
    `soClass`

      alias of `AddressJoiner2`

    `style` = <sqlobject.styles.MixedCaseUnderscoreStyle object>
    `table` = 'address_joiner2'
  `AddressJoiner2.``zip`

class `sqlobject.tests.test_joins.``AddressJoiner3`(**kw)

  Bases: `sqlobject.main.SQLObject`

  `j` = address_joiner3
  `personJoiner3`
  `personJoiner3ID`
  `q` = address_joiner3
  class `sqlmeta`(instance)

    Bases: `sqlobject.main.sqlmeta`

    `childName` = None
    `columnDefinitions` = {'personJoiner3ID': <ForeignKey b5803facL personJoiner3>, 'zip': <StringCol b5482e2cL zip>}
    `columnList` = [<SOStringCol zip>, <SOForeignKey personJoiner3ID connected to PersonJoiner3>]
    `columns` = {'personJoiner3ID': <SOForeignKey personJoiner3ID connected to PersonJoiner3>, 'zip': <SOStringCol zip>}
    `idName` = 'id'
    `indexDefinitions` = []
    `indexes` = []
    `joinDefinitions` = []
    `joins` = []
    `soClass`

      alias of `AddressJoiner3`

    `style` = <sqlobject.styles.MixedCaseUnderscoreStyle object>
    `table` = 'address_joiner3'
  `AddressJoiner3.``zip`

class `sqlobject.tests.test_joins.``ExplicitJoiningSO`(**kw)

  Bases: `sqlobject.main.SQLObject`

  `foo`
  `j` = explicit_joining_s_o
  `q` = explicit_joining_s_o
  class `sqlmeta`(instance)

    Bases: `sqlobject.main.sqlmeta`

    `childName` = None
    `columnDefinitions` = {}
    `columnList` = []
    `columns` = {}
    `idName` = 'id'
    `indexDefinitions` = []
    `indexes` = []
    `joinDefinitions` = [<sqlobject.joins.MultipleJoin object>]
    `joins` = [<sqlobject.joins.SOMultipleJoin object>]
    `soClass`

      alias of `ExplicitJoiningSO`

    `style` = <sqlobject.styles.MixedCaseUnderscoreStyle object>
    `table` = 'explicit_joining_s_o'

class `sqlobject.tests.test_joins.``ImplicitJoiningSO`(**kw)

  Bases: `sqlobject.main.SQLObject`

  `addBar`(obj)
  `foo`
  `j` = implicit_joining_s_o
  `q` = implicit_joining_s_o
  `removeBar`(obj)
  class `sqlmeta`(instance)

    Bases: `sqlobject.main.sqlmeta`

    `childName` = None
    `columnDefinitions` = {}
    `columnList` = []
    `columns` = {}
    `idName` = 'id'
    `indexDefinitions` = []
    `indexes` = []
    `joinDefinitions` = [<sqlobject.joins.RelatedJoin object>]
    `joins` = [<sqlobject.joins.SORelatedJoin object>]
    `soClass`

      alias of `ImplicitJoiningSO`

    `style` = <sqlobject.styles.MixedCaseUnderscoreStyle object>
    `table` = 'implicit_joining_s_o'

class `sqlobject.tests.test_joins.``PersonJoiner`(**kw)

  Bases: `sqlobject.main.SQLObject`

  `addAddressJoiner`(obj)
  `addressJoiners`
  classmethod `byName`(val, connection=None)
  `j` = person_joiner
  `name`
  `q` = person_joiner
  `removeAddressJoiner`(obj)
  class `sqlmeta`(instance)

    Bases: `sqlobject.main.sqlmeta`

    `childName` = None
    `columnDefinitions` = {'name': <StringCol b4549cecL name>}
    `columnList` = [<SOStringCol name alternate ID>]
    `columns` = {'name': <SOStringCol name alternate ID>}
    `idName` = 'id'
    `indexDefinitions` = []
    `indexes` = []
    `joinDefinitions` = [<sqlobject.joins.RelatedJoin object>]
    `joins` = [<sqlobject.joins.SORelatedJoin object>]
    `soClass`

      alias of `PersonJoiner`

    `style` = <sqlobject.styles.MixedCaseUnderscoreStyle object>
    `table` = 'person_joiner'

class `sqlobject.tests.test_joins.``PersonJoiner2`(**kw)

  Bases: `sqlobject.main.SQLObject`

  `addressJoiner2s`
  classmethod `byName`(val, connection=None)
  `j` = person_joiner2
  `name`
  `q` = person_joiner2
  class `sqlmeta`(instance)

    Bases: `sqlobject.main.sqlmeta`

    `childName` = None
    `columnDefinitions` = {'name': <StringCol b5485b2cL name>}
    `columnList` = [<SOStringCol name alternate ID>]
    `columns` = {'name': <SOStringCol name alternate ID>}
    `idName` = 'id'
    `indexDefinitions` = []
    `indexes` = []
    `joinDefinitions` = [<sqlobject.joins.MultipleJoin object>]
    `joins` = [<sqlobject.joins.SOMultipleJoin object>]
    `soClass`

      alias of `PersonJoiner2`

    `style` = <sqlobject.styles.MixedCaseUnderscoreStyle object>
    `table` = 'person_joiner2'

class `sqlobject.tests.test_joins.``PersonJoiner3`(**kw)

  Bases: `sqlobject.main.SQLObject`

  `addressJoiner3s`
  classmethod `byName`(val, connection=None)
  `j` = person_joiner3
  `name`
  `q` = person_joiner3
  class `sqlmeta`(instance)

    Bases: `sqlobject.main.sqlmeta`

    `childName` = None
    `columnDefinitions` = {'name': <StringCol b37a1b2cL name>}
    `columnList` = [<SOStringCol name alternate ID>]
    `columns` = {'name': <SOStringCol name alternate ID>}
    `idName` = 'id'
    `indexDefinitions` = []
    `indexes` = []
    `joinDefinitions` = [<sqlobject.joins.MultipleJoin object>]
    `joins` = [<sqlobject.joins.SOMultipleJoin object>]
    `soClass`

      alias of `PersonJoiner3`

    `style` = <sqlobject.styles.MixedCaseUnderscoreStyle object>
    `table` = 'person_joiner3'

class `sqlobject.tests.test_joins.``TestJoin`
  `assertNamesEqual`(people, dest)
  `assertZipsEqual`(zips, dest)
  `setup_method`(meth)
  `test_join`()
  `test_joinAttributeWithUnderscores`()

class `sqlobject.tests.test_joins.``TestJoin2`
  `setup_method`(meth)
  `test_basic`()
  `test_defaultOrder`()

class `sqlobject.tests.test_joins.``TestJoin3`
  `setup_method`(meth)
  `test_accessors`()