/*
* Copyright 2014 Canonical Ltd.
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 3, as published
* by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranties of
* MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program. If not, see .
*
* Authors:
* Charles Kerr
*/
#include
#include
class RotationLockFixture: public TestDBusFixture
{
private:
typedef TestDBusFixture super;
protected:
void SetUp() override
{
super::SetUp();
}
void TearDown() override
{
super::TearDown();
}
};
/***
****
***/
TEST_F(RotationLockFixture, CheckIndicator)
{
RotationLockIndicator indicator;
ASSERT_STREQ("rotation_lock", indicator.name());
auto actions = indicator.action_group();
ASSERT_TRUE(actions != nullptr);
ASSERT_TRUE(g_action_group_has_action(G_ACTION_GROUP(actions), "rotation-lock"));
std::vector> profiles = indicator.profiles();
ASSERT_EQ(2, profiles.size());
std::shared_ptr phone = profiles[0];
ASSERT_EQ(std::string("phone"), phone->name());
ASSERT_FALSE(phone->header()->is_visible);
std::shared_ptr desktop = profiles[1];
ASSERT_EQ(std::string("desktop"), desktop->name());
ASSERT_TRUE(desktop->header()->is_visible);
}