storetesting

package
v0.0.0-...-f67de66 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 17, 2016 License: AGPL-3.0 Imports: 21 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Charms = testing.NewRepo("charm-repo", "quantal")

Charms holds the testing charm repository.

Functions

func AssertBaseEntity

func AssertBaseEntity(c *gc.C, db *mgo.Collection, expect *mongodoc.BaseEntity)

AssertBaseEntity checks that db contains a base entity that matches expect.

func AssertEntity

func AssertEntity(c *gc.C, db *mgo.Collection, expect *mongodoc.Entity)

AssertEntity checks that db contains an entity that matches expect.

func JSONReader

func JSONReader(v interface{}) io.Reader

JSONReader creates an io.Reader which can read the Marshalled value of v.

func MetaWithSupportedSeries

func MetaWithSupportedSeries(m *charm.Meta, series ...string) *charm.Meta

MetaWithSupportedSeries returns m with Series set to series. If m is nil, new(charm.Meta) will be used instead.

func MongoJSEnabled

func MongoJSEnabled() bool

MongoJSEnabled reports whether testing code should run tests that rely on JavaScript inside MongoDB.

func MustMarshalJSON

func MustMarshalJSON(v interface{}) []byte

MustMarshalJSON marshals the specified value using json.Marshal and returns the corresponding byte slice. If there is an error marshalling the value then MustMarshalJSON will panic.

func RelationMeta

func RelationMeta(relations ...string) *charm.Meta

RelationMeta returns charm metadata for a charm with the given relations, where each relation is specified as a white-space-separated triple:

role name interface

where role specifies the role of the interface (provides or requires), name holds the relation name and interface holds the interface relation type.

Types

type BaseEntityBuilder

type BaseEntityBuilder struct {
	// contains filtered or unexported fields
}

BaseEntityBuilder provides a convenient way to describe a mongodoc.BaseEntity for tests that is correctly formed and contains the desired information.

func NewBaseEntity

func NewBaseEntity(url string) BaseEntityBuilder

NewBaseEntity creates a new BaseEntityBuilder for the provided URL.

func (BaseEntityBuilder) Build

Build creates a mongodoc.BaseEntity from the BaseEntityBuilder.

func (BaseEntityBuilder) WithACLs

WithACLs sets the non-development ACLs field on the BaseEntity.

func (BaseEntityBuilder) WithPromulgated

func (b BaseEntityBuilder) WithPromulgated(promulgated bool) BaseEntityBuilder

WithPromulgated sets the promulgated flag on the BaseEntity.

type Bundle

type Bundle struct {
	// contains filtered or unexported fields
}

Bundle implements an in-memory charm.Bundle that can be archived.

Note that because it implements charmstore.ArchiverTo, it can be used as an argument to charmstore.Store.AddBundleWithArchive.

func NewBundle

func NewBundle(data *charm.BundleData) *Bundle

NewBundle returns a bundle implementation that contains the given bundle data.

func (*Bundle) ArchiveTo

func (b *Bundle) ArchiveTo(w io.Writer) error

ArchiveTo implements charmstore.ArchiverTo.

func (*Bundle) Bytes

func (b *Bundle) Bytes() []byte

Bytes returns the contents of the bundle's archive.

func (*Bundle) Data

func (b *Bundle) Data() *charm.BundleData

Data implements charm.Bundle.Data.

func (*Bundle) ReadMe

func (b *Bundle) ReadMe() string

ReadMe implements charm.Bundle.ReadMe.

func (*Bundle) Size

func (b *Bundle) Size() int64

Size returns the size of the bundle's archive blob.

type Charm

type Charm struct {
	// contains filtered or unexported fields
}

Charm implements an in-memory charm.Charm that can be archived.

Note that because it implements charmstore.ArchiverTo, it can be used as an argument to charmstore.Store.AddCharmWithArchive.

func NewCharm

func NewCharm(meta *charm.Meta) *Charm

NewCharm returns a charm implementation that contains the given charm metadata. All charm.Charm methods other than Meta will return empty values.

func (*Charm) Actions

func (c *Charm) Actions() *charm.Actions

Actions implements charm.Charm.Actions.

func (*Charm) ArchiveTo

func (c *Charm) ArchiveTo(w io.Writer) error

ArchiveTo implements charmstore.ArchiverTo.

func (*Charm) Bytes

func (c *Charm) Bytes() []byte

Bytes returns the contents of the charm's archive.

func (*Charm) Config

func (c *Charm) Config() *charm.Config

Config implements charm.Charm.Config.

func (*Charm) Meta

func (c *Charm) Meta() *charm.Meta

Meta implements charm.Charm.Meta.

func (*Charm) Metrics

func (c *Charm) Metrics() *charm.Metrics

Metrics implements charm.Charm.Metrics.

func (*Charm) Revision

func (c *Charm) Revision() int

Revision implements charm.Charm.Revision.

func (*Charm) Size

func (c *Charm) Size() int64

Size returns the size of the charm's archive blob.

type ElasticSearchSuite

type ElasticSearchSuite struct {
	ES *elasticsearch.Database

	TestIndex string
	// contains filtered or unexported fields
}

ElasticSearchSuite defines a test suite that connects to an elastic-search server. The address of the server depends on the value of the JUJU_TEST_ELASTICSEARCH environment variable, which can be "none" (do not start or connect to a server) or host:port holding the address and port of the server to connect to. If JUJU_TEST_ELASTICSEARCH is not specified then localhost:9200 will be used.

func (*ElasticSearchSuite) LoadESConfig

func (s *ElasticSearchSuite) LoadESConfig(index string, settings, mapping interface{}) error

LoadESConfig loads a canned test configuration to the specified index

func (*ElasticSearchSuite) NewIndex

func (s *ElasticSearchSuite) NewIndex(c *gc.C) string

NewIndex creates a new index name and ensures that it will be cleaned up at end of the test.

func (*ElasticSearchSuite) SetUpSuite

func (s *ElasticSearchSuite) SetUpSuite(c *gc.C)

func (*ElasticSearchSuite) SetUpTest

func (s *ElasticSearchSuite) SetUpTest(c *gc.C)

func (*ElasticSearchSuite) TearDownSuite

func (s *ElasticSearchSuite) TearDownSuite(c *gc.C)

func (*ElasticSearchSuite) TearDownTest

func (s *ElasticSearchSuite) TearDownTest(c *gc.C)

type EntityBuilder

type EntityBuilder struct {
	// contains filtered or unexported fields
}

EntityBuilder provides a convenient way to describe a mongodoc.Entity for tests that is correctly formed and contains the desired information.

func NewEntity

func NewEntity(url string) EntityBuilder

NewEntity creates a new EntityBuilder for the provided URL.

func (EntityBuilder) Build

func (b EntityBuilder) Build() *mongodoc.Entity

Build creates a mongodoc.Entity from the EntityBuilder.

func (EntityBuilder) WithPromulgatedURL

func (b EntityBuilder) WithPromulgatedURL(url string) EntityBuilder

WithPromulgatedURL sets the PromulgatedURL and PromulgatedRevision of the entity being built.

type IsolatedMgoESSuite

type IsolatedMgoESSuite struct {
	jujutesting.IsolatedMgoSuite
	ElasticSearchSuite
}

func (*IsolatedMgoESSuite) SetUpSuite

func (s *IsolatedMgoESSuite) SetUpSuite(c *gc.C)

func (*IsolatedMgoESSuite) SetUpTest

func (s *IsolatedMgoESSuite) SetUpTest(c *gc.C)

func (*IsolatedMgoESSuite) TearDownSuite

func (s *IsolatedMgoESSuite) TearDownSuite(c *gc.C)

func (*IsolatedMgoESSuite) TearDownTest

func (s *IsolatedMgoESSuite) TearDownTest(c *gc.C)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL