<commit_before>using Uno;
using Uno.UX;
using Uno.Testing;
using Uno.Collections;
using Uno.Compiler;
using Fuse.Navigation;

using FuseTest;

namespace Fuse.Models.Test
{
	public class ModelTest : ModelTestBase
	{

		[Test]
		public void Args_Each()
		{
			var e = new UX.Model.Args.Each();
			using (var root = TestRootPanel.CreateWithChild(e))
			{
				root.StepFrameJS();
				Assert.AreEqual("(foo),(bar),(baz)", GetRecursiveText(e));
				Assert.AreEqual(3, e.innerInstanceCount.Value);
				Assert.AreEqual(1, e.outerInstanceCount.Value);
			}
		}

		[Test]
		public void Args_ScrollView()
		{
			var e = new UX.Model.Args.ScrollView();
			using (var root = TestRootPanel.CreateWithChild(e))
			{
				root.StepFrameJS();
				Assert.AreEqual(0, e.scrollView.ScrollPosition.Y);

				e.doScroll.Perform();
				root.StepFrameJS();
				Assert.AreEqual(1337, e.scrollView.ScrollPosition.Y);
				Assert.AreEqual(1, e.instanceCount.Value);
			}
		}

		[Test]
		public void Args_Single()
		{
			var e = new UX.Model.Args.Single();
			using (var root = TestRootPanel.CreateWithChild(e))
			{
				root.StepFrameJS();
				Assert.AreEqual("hello!", e.output.StringValue);
				Assert.AreEqual(1, e.instanceCount.Value);

				e.input.Value = "goodbye";
				root.StepFrameJS();
				Assert.AreEqual("goodbye!", e.output.StringValue);
				Assert.AreEqual(2, e.instanceCount.Value);
			}
		}
		
		[Test]
		public void NestedArray()
		{
			var e = new UX.Model.NestedArray();
			using(var root = TestRootPanel.CreateWithChild(e))
			{<commit_msg>Rename tests<commit_after>using Uno;
using Uno.UX;
using Uno.Testing;
using Uno.Collections;
using Uno.Compiler;
using Fuse.Navigation;

using FuseTest;

namespace Fuse.Models.Test
{
	public class ModelTest : ModelTestBase
	{

		[Test]
		public void ArgsEach()
		{
			var e = new UX.Model.Args.Each();
			using (var root = TestRootPanel.CreateWithChild(e))
			{
				root.StepFrameJS();
				Assert.AreEqual("(foo),(bar),(baz)", GetRecursiveText(e));
				Assert.AreEqual(3, e.innerInstanceCount.Value);
				Assert.AreEqual(1, e.outerInstanceCount.Value);
			}
		}

		[Test]
		public void ArgsScrollView()
		{
			var e = new UX.Model.Args.ScrollView();
			using (var root = TestRootPanel.CreateWithChild(e))
			{
				root.StepFrameJS();
				Assert.AreEqual(0, e.scrollView.ScrollPosition.Y);

				e.doScroll.Perform();
				root.StepFrameJS();
				Assert.AreEqual(1337, e.scrollView.ScrollPosition.Y);
				Assert.AreEqual(1, e.instanceCount.Value);
			}
		}

		[Test]
		public void ArgsSingle()
		{
			var e = new UX.Model.Args.Single();
			using (var root = TestRootPanel.CreateWithChild(e))
			{
				root.StepFrameJS();
				Assert.AreEqual("hello!", e.output.StringValue);
				Assert.AreEqual(1, e.instanceCount.Value);

				e.input.Value = "goodbye";
				root.StepFrameJS();
				Assert.AreEqual("goodbye!", e.output.StringValue);
				Assert.AreEqual(2, e.instanceCount.Value);
			}
		}
		
		[Test]
		public void NestedArray()
		{
			var e = new UX.Model.NestedArray();
			using(var root = TestRootPanel.CreateWithChild(e))
			{
{'fraction_non_alphanumeric': 0.14397905759162305, 'fraction_numerical': 0.006544502617801047, 'mean_word_length': 3.535608308605341, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6187309', 'n_tokens_mistral': 1302, 'n_tokens_neox': 1089, 'n_words': 191}