summaryrefslogtreecommitdiff
path: root/tests/objects/member-initializer-property-owned-setter.vala
blob: 8f65b7b3d8e803a12f2798509f62fd4a27644cf2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
class Bar : Object {
}

class Foo : Object {
	public string[] faz { get; owned set; }
	public Bar bar { get; owned set; }
}

void main() {
	string[] sa = { "foo", "bar" };
	var o = new Bar ();

	var foo = new Foo () {
		faz = sa,
		bar = o
	};

	assert (foo.faz[1] == "bar");
	assert (foo.bar.ref_count == 2);
	assert (sa[0] == "foo");
	assert (o.ref_count == 2);
}