+static std::string GetButtonText(Button button)
+{
+ Property::Value value = button.GetProperty(Toolkit::Button::Property::LABEL);
+
+ Property::Map* labelProperty = value.GetMap();
+
+ std::string textLabel;
+
+ if(labelProperty)
+ {
+ Property::Value* value = labelProperty->Find(Toolkit::TextVisual::Property::TEXT);
+ value->Get(textLabel);
+ }
+
+ return textLabel;
+}
+
+} // namespace
+
+int UtcDaliRadioButtonConstructorP(void)
+{
+ ToolkitTestApplication application;
+
+ RadioButton button;
+
+ DALI_TEST_CHECK(!button);
+ END_TEST;
+}
+
+int UtcDaliRadioButtonCopyConstructorP(void)
+{
+ ToolkitTestApplication application;
+
+ // Initialize an object, ref count == 1
+ RadioButton button = RadioButton::New();
+
+ RadioButton copy(button);
+ DALI_TEST_CHECK(copy);
+ END_TEST;
+}
+
+int UtcDaliRadioButtonMoveConstructor(void)
+{
+ ToolkitTestApplication application;
+
+ RadioButton button = RadioButton::New();
+ DALI_TEST_EQUALS(1, button.GetBaseObject().ReferenceCount(), TEST_LOCATION);
+ DALI_TEST_EQUALS(button.GetProperty<bool>(Button::Property::TOGGLABLE), true, TEST_LOCATION);
+ button.SetProperty(Button::Property::TOGGLABLE, false);
+ DALI_TEST_EQUALS(button.GetProperty<bool>(Button::Property::TOGGLABLE), false, TEST_LOCATION);
+
+ RadioButton moved = std::move(button);
+ DALI_TEST_CHECK(moved);
+ DALI_TEST_EQUALS(1, moved.GetBaseObject().ReferenceCount(), TEST_LOCATION);
+ DALI_TEST_EQUALS(moved.GetProperty<bool>(Button::Property::TOGGLABLE), false, TEST_LOCATION);
+ DALI_TEST_CHECK(!button);
+
+ END_TEST;
+}
+
+int UtcDaliRadioButtonAssignmentOperatorP(void)
+{
+ ToolkitTestApplication application;
+
+ RadioButton button = RadioButton::New();
+
+ RadioButton copy(button);
+ DALI_TEST_CHECK(copy);
+
+ DALI_TEST_CHECK(button == copy);
+ END_TEST;