From 4a57399ab0b41b94afb5ef8815f2863ba2507d65 Mon Sep 17 00:00:00 2001 From: Nixon Enraght-Moony Date: Sun, 20 Feb 2022 22:51:05 +0000 Subject: [PATCH] rustdoc-json: Add test for supertraits --- src/test/rustdoc-json/traits/supertrait.rs | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 src/test/rustdoc-json/traits/supertrait.rs diff --git a/src/test/rustdoc-json/traits/supertrait.rs b/src/test/rustdoc-json/traits/supertrait.rs new file mode 100644 index 00000000000..486a8e713f8 --- /dev/null +++ b/src/test/rustdoc-json/traits/supertrait.rs @@ -0,0 +1,26 @@ +// ignore-tidy-linelength + +#![feature(no_core)] +#![feature(lang_items)] +#![no_core] + +// @set loud_id = supertrait.json "$.index[*][?(@.name=='Loud')].id" +pub trait Loud {} + +// @set very_loud_id = - "$.index[*][?(@.name=='VeryLoud')].id" +// @count - "$.index[*][?(@.name=='VeryLoud')].inner.bounds[*]" 1 +// @is - "$.index[*][?(@.name=='VeryLoud')].inner.bounds[0].trait_bound.trait.inner.id" $loud_id +pub trait VeryLoud: Loud {} + +// @set sounds_good_id = - "$.index[*][?(@.name=='SoundsGood')].id" +pub trait SoundsGood {} + +// @count - "$.index[*][?(@.name=='MetalBand')].inner.bounds[*]" 2 +// @is - "$.index[*][?(@.name=='MetalBand')].inner.bounds[0].trait_bound.trait.inner.id" $very_loud_id +// @is - "$.index[*][?(@.name=='MetalBand')].inner.bounds[1].trait_bound.trait.inner.id" $sounds_good_id +pub trait MetalBand: VeryLoud + SoundsGood {} + +// @count - "$.index[*][?(@.name=='DnabLatem')].inner.bounds[*]" 2 +// @is - "$.index[*][?(@.name=='DnabLatem')].inner.bounds[1].trait_bound.trait.inner.id" $very_loud_id +// @is - "$.index[*][?(@.name=='DnabLatem')].inner.bounds[0].trait_bound.trait.inner.id" $sounds_good_id +pub trait DnabLatem: SoundsGood + VeryLoud {}