From c58708d3eedb352bb277feb2c12bb1652a8a58b7 Mon Sep 17 00:00:00 2001 From: Ethan Koenig Date: Tue, 25 Apr 2017 03:24:51 -0400 Subject: Integration test framework (#1290) * Integration test framework * udpate drone sign * Formatting fixes and move router.go to routers/ * update sign for drone --- models/setup_for_test.go | 8 ++------ models/test_fixtures.go | 23 +++++++++++++++++++++++ 2 files changed, 25 insertions(+), 6 deletions(-) create mode 100644 models/test_fixtures.go (limited to 'models') diff --git a/models/setup_for_test.go b/models/setup_for_test.go index 5a17eac789..9fb83f15c4 100644 --- a/models/setup_for_test.go +++ b/models/setup_for_test.go @@ -37,11 +37,8 @@ func TestMain(m *testing.M) { os.Exit(m.Run()) } -var fixtures *testfixtures.Context - // CreateTestEngine create an xorm engine for testing func CreateTestEngine() error { - testfixtures.SkipDatabaseNameCheck(true) var err error x, err = xorm.NewEngine("sqlite3", "file::memory:?cache=shared") if err != nil { @@ -52,8 +49,7 @@ func CreateTestEngine() error { return err } - fixtures, err = testfixtures.NewFolder(x.DB().DB, &testfixtures.SQLite{}, "fixtures/") - return err + return InitFixtures(&testfixtures.SQLite{}, "fixtures/") } func TestFixturesAreConsistent(t *testing.T) { @@ -63,7 +59,7 @@ func TestFixturesAreConsistent(t *testing.T) { // PrepareTestDatabase load test fixtures into test database func PrepareTestDatabase() error { - return fixtures.Load() + return LoadFixtures() } func loadBeanIfExists(bean interface{}, conditions ...interface{}) (bool, error) { diff --git a/models/test_fixtures.go b/models/test_fixtures.go new file mode 100644 index 0000000000..d7f59ec3b5 --- /dev/null +++ b/models/test_fixtures.go @@ -0,0 +1,23 @@ +// Copyright 2017 The Gitea Authors. All rights reserved. +// Use of this source code is governed by a MIT-style +// license that can be found in the LICENSE file. + +package models + +import ( + "gopkg.in/testfixtures.v2" +) + +var fixtures *testfixtures.Context + +// InitFixtures initialize test fixtures for a test database +func InitFixtures(helper testfixtures.Helper, dir string) (err error) { + testfixtures.SkipDatabaseNameCheck(true) + fixtures, err = testfixtures.NewFolder(x.DB().DB, helper, dir) + return err +} + +// LoadFixtures load fixtures for a test database +func LoadFixtures() error { + return fixtures.Load() +} -- cgit v1.2.3