Skip to content

Commit 71bb045

Browse files
committed
[C++] Check for specialised null value when generated enum. PR #889.
1 parent 2f1b555 commit 71bb045

File tree

2 files changed

+40
-2
lines changed

2 files changed

+40
-2
lines changed

sbe-tool/src/test/cpp/CMakeLists.txt

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,19 +34,26 @@ endfunction()
3434
find_package(Java REQUIRED)
3535

3636
set(CODE_GENERATION_SCHEMA ${CODEC_SCHEMA_DIR}/code-generation-schema.xml)
37+
set(COMPOSITE_ELEMENTS_SCHEMA ${CODEC_SCHEMA_DIR}/composite-elements-schema.xml)
3738
set(COMPOSITE_OFFSETS_SCHEMA ${CODEC_SCHEMA_DIR}/composite-offsets-schema.xml)
3839
set(MESSAGE_BLOCK_LENGTH_TEST ${CODEC_SCHEMA_DIR}/message-block-length-test.xml)
3940
set(GROUP_WITH_DATA_SCHEMA ${CODEC_SCHEMA_DIR}/group-with-data-schema.xml)
40-
set(COMPOSITE_ELEMENTS_SCHEMA ${CODEC_SCHEMA_DIR}/composite-elements-schema.xml)
4141
set(ISSUE835_SCHEMA ${CODEC_SCHEMA_DIR}/issue835.xml)
42+
set(ISSUE889_SCHEMA ${CODEC_SCHEMA_DIR}/issue889.xml)
4243

4344
set(GENERATED_CODECS
4445
${CXX_CODEC_TARGET_DIR}
4546
)
4647

4748
add_custom_command(
4849
OUTPUT ${GENERATED_CODECS}
49-
DEPENDS ${CODE_GENERATION_SCHEMA} ${CODE_GENERATION_SCHEMA_CPP} ${COMPOSITE_OFFSETS_SCHEMA} ${MESSAGE_BLOCK_LENGTH_TEST}
50+
DEPENDS ${CODE_GENERATION_SCHEMA}
51+
${COMPOSITE_ELEMENTS_SCHEMA}
52+
${COMPOSITE_OFFSETS_SCHEMA}
53+
${MESSAGE_BLOCK_LENGTH_TEST}
54+
${GROUP_WITH_DATA_SCHEMA}
55+
${ISSUE835_SCHEMA}
56+
${ISSUE889_SCHEMA}
5057
sbe-jar ${SBE_JAR}
5158
COMMAND
5259
${Java_JAVA_EXECUTABLE}
@@ -60,6 +67,7 @@ add_custom_command(
6067
${GROUP_WITH_DATA_SCHEMA}
6168
${COMPOSITE_ELEMENTS_SCHEMA}
6269
${ISSUE835_SCHEMA}
70+
${ISSUE889_SCHEMA}
6371
)
6472

6573
add_custom_target(codecs DEPENDS ${GENERATED_CODECS})
@@ -74,3 +82,4 @@ sbe_test(GroupWithDataTest codecs)
7482
sbe_test(Rc3OtfFullIrTest codecs)
7583
sbe_test(CompositeElementsTest codecs)
7684
sbe_test(Issue835Test codecs)
85+
sbe_test(Issue889Test codecs)
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
/*
2+
* Copyright 2013-2022 Real Logic Limited.
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
* you may not use this file except in compliance with the License.
6+
* You may obtain a copy of the License at
7+
*
8+
* https://www.apache.org/licenses/LICENSE-2.0
9+
*
10+
* Unless required by applicable law or agreed to in writing, software
11+
* distributed under the License is distributed on an "AS IS" BASIS,
12+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
* See the License for the specific language governing permissions and
14+
* limitations under the License.
15+
*/
16+
17+
#include "gtest/gtest.h"
18+
#include "issue889/LotType.h"
19+
20+
using namespace issue889;
21+
22+
class Issue889Test : public testing::Test
23+
{
24+
};
25+
26+
TEST_F(Issue889Test, shouldGenerateSpecalisedNullValue)
27+
{
28+
EXPECT_EQ(LotType::get(0), LotType::NULL_VALUE);
29+
}

0 commit comments

Comments
 (0)