MCPcopy Index your code
hub / github.com/upper/db / TestSession

Method TestSession

internal/testsuite/sql_suite.go:1704–1807  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1702}
1703
1704func (s *SQLTestSuite) TestSession() {
1705 sess := s.Session()
1706
1707 var all []map[string]interface{}
1708
1709 err := sess.Collection("artist").Truncate()
1710 s.NoError(err)
1711
1712 _, err = sess.SQL().InsertInto("artist").Values(struct {
1713 Name string `db:"name"`
1714 }{"Rinko Kikuchi"}).Exec()
1715 s.NoError(err)
1716
1717 // Using explicit iterator.
1718 iter := sess.SQL().SelectFrom("artist").Iterator()
1719 err = iter.All(&all)
1720
1721 s.NoError(err)
1722 s.NotZero(all)
1723
1724 // Using explicit iterator to fetch one item.
1725 var item map[string]interface{}
1726 iter = sess.SQL().SelectFrom("artist").Iterator()
1727 err = iter.One(&item)
1728
1729 s.NoError(err)
1730 s.NotZero(item)
1731
1732 // Using explicit iterator and NextScan.
1733 iter = sess.SQL().SelectFrom("artist").Iterator()
1734 var id int
1735 var name string
1736
1737 if s.Adapter() == "ql" {
1738 err = iter.NextScan(&name)
1739 id = 1
1740 } else {
1741 err = iter.NextScan(&id, &name)
1742 }
1743
1744 s.NoError(err)
1745 s.NotZero(id)
1746 s.NotEmpty(name)
1747 s.NoError(iter.Close())
1748
1749 err = iter.NextScan(&id, &name)
1750 s.Error(err)
1751
1752 // Using explicit iterator and ScanOne.
1753 iter = sess.SQL().SelectFrom("artist").Iterator()
1754 id, name = 0, ""
1755 if s.Adapter() == "ql" {
1756 err = iter.ScanOne(&name)
1757 id = 1
1758 } else {
1759 err = iter.ScanOne(&id, &name)
1760 }
1761

Callers

nothing calls this directly

Calls 15

SessionMethod · 0.65
TruncateMethod · 0.65
CollectionMethod · 0.65
ExecMethod · 0.65
ValuesMethod · 0.65
InsertIntoMethod · 0.65
SQLMethod · 0.65
IteratorMethod · 0.65
SelectFromMethod · 0.65
AllMethod · 0.65
OneMethod · 0.65
AdapterMethod · 0.65

Tested by

no test coverage detected