diff options
author | Marcelo Lira <marcelo.lira@openbossa.org> | 2011-01-11 17:34:28 -0300 |
---|---|---|
committer | Marcelo Lira <marcelo.lira@openbossa.org> | 2011-01-12 10:03:33 -0300 |
commit | 498ba2f39e64129d6911cedfd1334032350543eb (patch) | |
tree | ee785972ad9ea162c644d766d6d344b9255ba919 /tests/libsample | |
parent | d9902755a46c299cd50550ae1c7932d1ac4d8f70 (diff) | |
download | shiboken-498ba2f39e64129d6911cedfd1334032350543eb.tar.gz shiboken-498ba2f39e64129d6911cedfd1334032350543eb.tar.xz shiboken-498ba2f39e64129d6911cedfd1334032350543eb.zip |
Added test to assert the precedence of enum arguments over int implicit conversions.
This test is inspired by bug #511 [1], and it checks the precedence of
an enum argument over a class that can be implicitly built from an
integer.
[1] http://bugs.openbossa.org/show_bug.cgi?id=511
Reviewed by Luciano Wolf <luciano.wolf@openbossa.org>
Reviewed by Renato Araújo <renato.filho@openbossa.org>
Diffstat (limited to 'tests/libsample')
-rw-r--r-- | tests/libsample/pen.h | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/tests/libsample/pen.h b/tests/libsample/pen.h new file mode 100644 index 00000000..9c97c2e3 --- /dev/null +++ b/tests/libsample/pen.h @@ -0,0 +1,52 @@ +/* + * This file is part of the Shiboken Python Binding Generator project. + * + * Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). + * + * Contact: PySide team <contact@pyside.org> + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifndef PEN_H +#define PEN_H + +#include "libsamplemacros.h" +#include "samplenamespace.h" + +class LIBSAMPLE_API Color +{ +public: + Color() {} + Color(SampleNamespace::InValue arg) {} + Color(unsigned int arg) {} +}; + +class LIBSAMPLE_API Pen +{ +public: + enum { EmptyCtor, EnumCtor, ColorCtor, CopyCtor }; + + Pen() : m_ctor(EmptyCtor) {} + Pen(SampleNamespace::Option option) : m_ctor(EnumCtor) {} + Pen(const Color& color) : m_ctor(ColorCtor) {} + Pen(const Pen& pen) : m_ctor(CopyCtor) {} + + int ctorType() { return m_ctor; } +private: + int m_ctor; +}; + +#endif |