diff --git a/dbusutil/dbustest/dbustest_test.go b/dbusutil/dbustest/dbustest_test.go new file mode 100644 index 0000000000000000000000000000000000000000..dfc3c6ddb5dfdd7686a183cfe373fc5478ca4d88 --- /dev/null +++ b/dbusutil/dbustest/dbustest_test.go @@ -0,0 +1,62 @@ +// SPDX-License-Identifier: Apache-2.0 +// SPDX-FileCopyrightText: Huawei Inc. + +package dbustest_test + +import ( + "fmt" + "os" + "os/exec" + "strings" + "testing" + + . "gopkg.in/check.v1" + + "git.ostc-eu.org/OSTC/OHOS/components/sysota/dbusutil/dbustest" +) + +func Test(t *testing.T) { TestingT(t) } + +type testbusSuite struct{} + +var _ = Suite(&testbusSuite{}) + +func (s *testbusSuite) TestNewTestBus(c *C) { + _, err := exec.LookPath("dbus-daemon") + if err != nil { + c.Skip(fmt.Sprintf("cannot initialize TestBus: %v", err)) + } + + bus, err := dbustest.NewTestBus() + c.Assert(err, IsNil) + + defer func() { + c.Check(bus.Close(), IsNil) + }() + + addr := bus.BusAddress() + c.Check(strings.HasPrefix(addr, "unix:path=/tmp/test-bus-"), Equals, true) +} + +func (s *testbusSuite) TestSetDBusSystemBusAddress(c *C) { + restore, err := dbustest.SetDBusSystemBusAddress("potato") + c.Assert(err, IsNil) + + defer func() { + c.Assert(restore(), IsNil) + }() + + c.Check(os.Getenv("DBUS_SYSTEM_BUS_ADDRESS"), Equals, "potato") +} + +type suiteSuite struct { + dbustest.Suite +} + +var _ = Suite(&suiteSuite{}) + +func (s *suiteSuite) TestSystemBusAddress(c *C) { + // Tests see a test system bus. + addr := os.Getenv("DBUS_SYSTEM_BUS_ADDRESS") + c.Check(strings.HasPrefix(addr, "unix:path=/tmp/test-bus-"), Equals, true) +}