// Copyright (c) 2022, Mysten Labs, Inc. // SPDX-License-Identifier: Apache-2.0 use name_variant::NamedVariant; #[derive(NamedVariant)] enum TestEnum { A, B(), C(i32, i32), D { _name: String, _age: i32 }, VariantTest, } #[test] fn smoke_test() { let x = TestEnum::C(1, 2); assert_eq!(x.variant_name(), "C"); let x = TestEnum::A; assert_eq!(x.variant_name(), "A"); let x = TestEnum::B(); assert_eq!(x.variant_name(), "B"); let x = TestEnum::D { _name: "Jane Doe".into(), _age: 30, }; assert_eq!(x.variant_name(), "D"); let x = TestEnum::VariantTest; assert_eq!(x.variant_name(), "VariantTest"); }