diff options
| author | Marco Trevisan (Treviño) <mail@3v1n0.net> | 2013-02-05 03:10:45 +0100 |
|---|---|---|
| committer | Marco Trevisan (Treviño) <mail@3v1n0.net> | 2013-02-05 03:10:45 +0100 |
| commit | fb5d58a22026ac0f6664990e20d75ffef3e80920 (patch) | |
| tree | 7ef259c7f4dae6611713209caf5b415db991ec1a | |
| parent | 96ac0ab05d48727be6c04ec6ca3f0e49cdbae71a (diff) | |
MockApplication: implement a basic MockApplicationWindow
(bzr r3092.2.12)
| -rw-r--r-- | tests/mock-application.h | 51 |
1 files changed, 48 insertions, 3 deletions
diff --git a/tests/mock-application.h b/tests/mock-application.h index cabc82ae1..aafa0a2d6 100644 --- a/tests/mock-application.h +++ b/tests/mock-application.h @@ -25,9 +25,45 @@ namespace testmocks { -class MockApplication : public unity::Application +struct MockApplicationWindow : unity::ApplicationWindow +{ + MockApplicationWindow(Window xid) + : xid_(xid) + , monitor_(0) + , type_("window") + , visible_(true) + , active_(false) + , urgent_(false) + { + visible.SetGetterFunction([this] { return visible_; }); + active.SetGetterFunction([this] { return active_; }); + urgent.SetGetterFunction([this] { return urgent_; }); + } + + Window xid_; + int monitor_; + std::string title_; + std::string icon_; + std::string type_; + + bool visible_; + bool active_; + bool urgent_; + + virtual std::string title() const { return title_; } + virtual std::string icon() const { return icon_; } + virtual std::string type() const { return type_; } + + virtual Window window_id() const { return xid_; } + virtual int monitor() const { return monitor_; } + + virtual unity::ApplicationPtr application() const { return unity::ApplicationPtr(); } + virtual bool Focus() const { return false; } + virtual void Quit() const {} +}; + +struct MockApplication : unity::Application { -public: MockApplication(std::string const& desktop_file, std::string const& icon = "", std::string const& title = "") @@ -51,6 +87,7 @@ public: urgent.SetGetterFunction(sigc::mem_fun(this, &MockApplication::GetUrgent)); } + unity::WindowList window_list_; std::string desktop_file_; std::string icon_; std::string title_; @@ -67,7 +104,7 @@ public: virtual std::string type() const { return "mock"; } virtual std::string repr() const { return "MockApplication"; } - virtual unity::WindowList GetWindows() const { return unity::WindowList(); } + virtual unity::WindowList GetWindows() const { return window_list_; } virtual bool OwnsWindow(Window window_id) const { return false; } virtual std::vector<std::string> GetSupportedMimeTypes() const { return {}; } @@ -98,6 +135,14 @@ public: return false; } + void SetActiveState(bool state) + { + if (active_ == state) + return; + active_ = state; + active.changed.emit(state); + } + bool GetVisible() const { return visible_; } bool GetActive() const { return active_; } bool GetRunning() const { return running_; } |
