parent
361faa658c
commit
43f92cb916
4 changed files with 83 additions and 0 deletions
@ -0,0 +1,8 @@ |
|||||||
|
edition = "2023"; |
||||||
|
|
||||||
|
package test; |
||||||
|
|
||||||
|
message EditionsMessage { |
||||||
|
int32 plain_field = 1; |
||||||
|
int32 implicit_presence_field = 2 [features.field_presence = IMPLICIT]; |
||||||
|
} |
@ -0,0 +1,23 @@ |
|||||||
|
// Protocol Buffers - Google's data interchange format
|
||||||
|
// Copyright 2023 Google LLC. All rights reserved.
|
||||||
|
//
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE file or at
|
||||||
|
// https://developers.google.com/open-source/licenses/bsd
|
||||||
|
|
||||||
|
use googletest::prelude::*; |
||||||
|
|
||||||
|
// Tests that an proto file that declares edition="2023" works. Note that this
|
||||||
|
// is _not_ a test for Rust Edition 2023 (which doesn't exist) but instead
|
||||||
|
// Protobuf Edition 2023 (which exists).
|
||||||
|
|
||||||
|
#[test] |
||||||
|
fn check_edition2023_works() { |
||||||
|
let mut msg = edition2023_proto::test::EditionsMessage::new(); |
||||||
|
|
||||||
|
// plain_field supports presence.
|
||||||
|
assert_that!(msg.plain_field_mut().or_default().get(), eq(0)); |
||||||
|
|
||||||
|
// implicit presence fields' _mut() skips FieldEntry.
|
||||||
|
assert_that!(msg.implicit_presence_field_mut().get(), eq(0)); |
||||||
|
} |
Loading…
Reference in new issue