Mercurial > malikania
annotate tests/libclient/js-size/main.cpp @ 30:a1e80d991968
Misc: convert to spaces, #519
author | David Demelier <markand@malikania.fr> |
---|---|
date | Thu, 16 Jun 2016 13:35:31 +0200 |
parents | 0a1adf7dcca0 |
children | d4f5f7231b84 |
rev | line source |
---|---|
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 /* |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 * main.cpp -- test Size (JavaScript binding) |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 * |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
4 * Copyright (c) 2013-2016 Malikania Authors |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 * |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 * Permission to use, copy, modify, and/or distribute this software for any |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 * purpose with or without fee is hereby granted, provided that the above |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 * copyright notice and this permission notice appear in all copies. |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 * |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 */ |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
19 #include <gtest/gtest.h> |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
20 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
21 #include <malikania/js-size.h> |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
23 using namespace malikania; |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
24 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
25 class TestSize : public testing::Test { |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
26 protected: |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
27 duk::Context m_ctx; |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
28 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
29 public: |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
30 TestSize() |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
31 { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
32 duk::putGlobal(m_ctx, "Malikania", duk::Object()); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
33 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
34 loadMalikaniaSize(m_ctx); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
35 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
36 }; |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
37 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
38 /* |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
39 * Valid constructors |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
40 * ------------------------------------------------------------------ |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
41 */ |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
42 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
43 TEST_F(TestSize, ConstructorNoArgs) |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
44 { |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
45 try { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
46 auto ret = duk::pevalString(m_ctx, |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
47 "s = Malikania.Size();" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
48 "w = s.width;" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
49 "h = s.height;" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
50 ); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
51 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
52 if (ret != 0) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
53 throw duk::exception(m_ctx, -1); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
54 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
55 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
56 ASSERT_EQ(0, duk::getGlobal<int>(m_ctx, "w")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
57 ASSERT_EQ(0, duk::getGlobal<int>(m_ctx, "h")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
58 } catch (const std::exception &ex) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
59 FAIL() << ex.what(); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
60 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
61 } |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
62 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
63 TEST_F(TestSize, Constructor2Args) |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
64 { |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
65 try { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
66 auto ret = duk::pevalString(m_ctx, |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
67 "s = Malikania.Size(100, 200);" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
68 "w = s.width;" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
69 "h = s.height;" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
70 ); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
71 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
72 if (ret != 0) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
73 throw duk::exception(m_ctx, -1); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
74 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
75 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
76 ASSERT_EQ(100, duk::getGlobal<int>(m_ctx, "w")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
77 ASSERT_EQ(200, duk::getGlobal<int>(m_ctx, "h")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
78 } catch (const std::exception &ex) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
79 FAIL() << ex.what(); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
80 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
81 } |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
82 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
83 TEST_F(TestSize, ConstructorObject) |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
84 { |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
85 try { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
86 auto ret = duk::pevalString(m_ctx, |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
87 "s = Malikania.Size({ width: 100, height: 200 });" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
88 "w = s.width;" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
89 "h = s.height;" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
90 ); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
91 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
92 if (ret != 0) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
93 throw duk::exception(m_ctx, -1); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
94 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
95 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
96 ASSERT_EQ(100, duk::getGlobal<int>(m_ctx, "w")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
97 ASSERT_EQ(200, duk::getGlobal<int>(m_ctx, "h")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
98 } catch (const std::exception &ex) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
99 FAIL() << ex.what(); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
100 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
101 } |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
102 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
103 TEST_F(TestSize, ConstructorNew) |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
104 { |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
105 try { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
106 auto ret = duk::pevalString(m_ctx, |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
107 "s = new Malikania.Size({ width: 100, height: 200 });" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
108 "w = s.width;" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
109 "h = s.height;" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
110 ); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
111 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
112 if (ret != 0) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
113 throw duk::exception(m_ctx, -1); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
114 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
115 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
116 ASSERT_EQ(100, duk::getGlobal<int>(m_ctx, "w")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
117 ASSERT_EQ(200, duk::getGlobal<int>(m_ctx, "h")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
118 } catch (const std::exception &ex) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
119 FAIL() << ex.what(); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
120 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
121 } |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
122 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
123 /* |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
124 * Invalid constructors |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
125 * ------------------------------------------------------------------ |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
126 */ |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
127 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
128 TEST_F(TestSize, InvalidConstructorArg1) |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
129 { |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
130 try { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
131 auto ret = duk::pevalString(m_ctx, |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
132 "try {" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
133 " Malikania.Size(null);" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
134 "} catch (e) {" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
135 " name = e.name;" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
136 " correct = (e instanceof TypeError);" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
137 "}" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
138 ); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
139 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
140 if (ret != 0) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
141 throw duk::exception(m_ctx, -1); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
142 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
143 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
144 ASSERT_EQ("TypeError", duk::getGlobal<std::string>(m_ctx, "name")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
145 ASSERT_TRUE(duk::getGlobal<bool>(m_ctx, "correct")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
146 } catch (const std::exception &ex) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
147 FAIL() << ex.what(); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
148 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
149 } |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
150 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
151 TEST_F(TestSize, InvalidConstructorRange1) |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
152 { |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
153 try { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
154 auto ret = duk::pevalString(m_ctx, |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
155 "try {" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
156 " Malikania.Size(-1, 200);" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
157 "} catch (e) {" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
158 " name = e.name;" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
159 " correct = (e instanceof RangeError);" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
160 "}" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
161 ); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
162 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
163 if (ret != 0) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
164 throw duk::exception(m_ctx, -1); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
165 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
166 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
167 ASSERT_EQ("RangeError", duk::getGlobal<std::string>(m_ctx, "name")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
168 ASSERT_TRUE(duk::getGlobal<bool>(m_ctx, "correct")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
169 } catch (const std::exception &ex) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
170 FAIL() << ex.what(); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
171 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
172 } |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
173 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
174 TEST_F(TestSize, InvalidConstructorRange2) |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
175 { |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
176 try { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
177 auto ret = duk::pevalString(m_ctx, |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
178 "try {" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
179 " Malikania.Size(100, -1);" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
180 "} catch (e) {" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
181 " name = e.name;" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
182 " correct = (e instanceof RangeError);" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
183 "}" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
184 ); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
185 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
186 if (ret != 0) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
187 throw duk::exception(m_ctx, -1); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
188 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
189 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
190 ASSERT_EQ("RangeError", duk::getGlobal<std::string>(m_ctx, "name")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
191 ASSERT_TRUE(duk::getGlobal<bool>(m_ctx, "correct")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
192 } catch (const std::exception &ex) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
193 FAIL() << ex.what(); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
194 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
195 } |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
196 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
197 TEST_F(TestSize, InvalidConstructorRange3) |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
198 { |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
199 try { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
200 auto ret = duk::pevalString(m_ctx, |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
201 "try {" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
202 " Malikania.Size({ width: -1, height: 200 });" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
203 "} catch (e) {" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
204 " name = e.name;" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
205 " correct = (e instanceof RangeError);" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
206 "}" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
207 ); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
208 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
209 if (ret != 0) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
210 throw duk::exception(m_ctx, -1); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
211 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
212 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
213 ASSERT_EQ("RangeError", duk::getGlobal<std::string>(m_ctx, "name")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
214 ASSERT_TRUE(duk::getGlobal<bool>(m_ctx, "correct")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
215 } catch (const std::exception &ex) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
216 FAIL() << ex.what(); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
217 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
218 } |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
219 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
220 TEST_F(TestSize, InvalidConstructorRange4) |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
221 { |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
222 try { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
223 auto ret = duk::pevalString(m_ctx, |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
224 "try {" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
225 " Malikania.Size({ width: 100, height: -1 });" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
226 "} catch (e) {" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
227 " name = e.name;" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
228 " correct = (e instanceof RangeError);" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
229 "}" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
230 ); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
231 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
232 if (ret != 0) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
233 throw duk::exception(m_ctx, -1); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
234 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
235 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
236 ASSERT_EQ("RangeError", duk::getGlobal<std::string>(m_ctx, "name")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
237 ASSERT_TRUE(duk::getGlobal<bool>(m_ctx, "correct")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
238 } catch (const std::exception &ex) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
239 FAIL() << ex.what(); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
240 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
241 } |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
242 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
243 /* |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
244 * Require. |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
245 * ------------------------------------------------------------------ |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
246 */ |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
247 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
248 TEST_F(TestSize, requireSuccess) |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
249 { |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
250 try { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
251 duk::putGlobal(m_ctx, "build", duk::Function{[] (duk::ContextPtr ctx) -> duk::Ret { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
252 Size size = duk::require<Size>(ctx, 0); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
253 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
254 duk::putGlobal(ctx, "w", static_cast<int>(size.width())); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
255 duk::putGlobal(ctx, "h", static_cast<int>(size.height())); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
256 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
257 return 0; |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
258 }, 1}); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
259 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
260 auto ret = duk::pevalString(m_ctx, "build({ width: 100, height: 200 });"); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
261 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
262 if (ret != 0) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
263 throw duk::exception(m_ctx, -1); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
264 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
265 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
266 ASSERT_EQ(100, duk::getGlobal<int>(m_ctx, "w")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
267 ASSERT_EQ(200, duk::getGlobal<int>(m_ctx, "h")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
268 } catch (const std::exception &ex) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
269 FAIL() << ex.what(); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
270 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
271 } |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
272 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
273 TEST_F(TestSize, requireFail) |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
274 { |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
275 try { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
276 duk::putGlobal(m_ctx, "build", duk::Function{[] (duk::ContextPtr ctx) -> duk::Ret { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
277 duk::require<Size>(ctx, 0); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
278 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
279 return 0; |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
280 }, 1}); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
281 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
282 auto ret = duk::pevalString(m_ctx, |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
283 "try {" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
284 " build({});" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
285 "} catch (e) {" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
286 " name = e.name;" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
287 " correct = (e instanceof Error);" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
288 "}" |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
289 ); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
290 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
291 if (ret != 0) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
292 throw duk::exception(m_ctx, -1); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
293 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
294 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
295 ASSERT_EQ("Error", duk::getGlobal<std::string>(m_ctx, "name")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
296 ASSERT_TRUE(duk::getGlobal<bool>(m_ctx, "correct")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
297 } catch (const std::exception &ex) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
298 FAIL() << ex.what(); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
299 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
300 } |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
301 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
302 /* |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
303 * Get. |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
304 * ------------------------------------------------------------------ |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
305 */ |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
306 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
307 TEST_F(TestSize, getAdjustAll) |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
308 { |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
309 try { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
310 duk::putGlobal(m_ctx, "build", duk::Function{[] (duk::ContextPtr ctx) -> duk::Ret { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
311 Size size = duk::get<Size>(ctx, 0); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
312 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
313 duk::putGlobal(ctx, "w", static_cast<int>(size.width())); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
314 duk::putGlobal(ctx, "h", static_cast<int>(size.height())); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
315 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
316 return 0; |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
317 }, 1}); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
318 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
319 auto ret = duk::pevalString(m_ctx, "build({});"); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
320 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
321 if (ret != 0) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
322 throw duk::exception(m_ctx, -1); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
323 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
324 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
325 ASSERT_EQ(0, duk::getGlobal<int>(m_ctx, "r")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
326 ASSERT_EQ(0, duk::getGlobal<int>(m_ctx, "g")); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
327 } catch (const std::exception &ex) { |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
328 FAIL() << ex.what(); |
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
329 } |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
330 } |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
331 |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
332 int main(int argc, char **argv) |
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
333 { |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
334 testing::InitGoogleTest(&argc, argv); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
335 |
30
a1e80d991968
Misc: convert to spaces, #519
David Demelier <markand@malikania.fr>
parents:
27
diff
changeset
|
336 return RUN_ALL_TESTS(); |
13
fb7c2c096101
Client: add JavaScript bindings for Size, #460
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
337 } |