public void TestProperties() { var pairs = new CharacterStringPair(new Dictionary <string, ICharacterString> { { "ben", new CharacterString("3") }, { "chris", new CharacterString("2") }, { "troy", new CharacterString("4") }, { "freddie", new CharacterString("1") }, }); var source = new List <IInteractionComponent> { new InteractionComponent("ben", LanguageMap.EnglishUS("Ben")), new InteractionComponent("chris", LanguageMap.EnglishUS("Chris")), new InteractionComponent("troy", LanguageMap.EnglishUS("Troy")), new InteractionComponent("freddie", LanguageMap.EnglishUS("Freddie")), }; var target = new List <IInteractionComponent> { new InteractionComponent("1", LanguageMap.EnglishUS("Swift Kick in the Grass")), new InteractionComponent("2", LanguageMap.EnglishUS("We got Runs")), new InteractionComponent("3", LanguageMap.EnglishUS("Duck")), new InteractionComponent("4", LanguageMap.EnglishUS("Van Delay Industries")), }; var extensions = new Dictionary <Uri, object> { { new Uri("http://www.example.com/ext"), "ext" } }; var definition = new MatchingInteractionActivityDefinition( new ResponsePattern(pairs), source, target, LanguageMap.EnglishUS("Long Fill-in"), LanguageMap.EnglishUS("Match these people to their kickball team:"), new Uri("http://www.example.com/more"), extensions); Assert.Equal(new ResponsePattern(pairs), definition.CorrectResponsesPattern); Assert.Equal(LanguageMap.EnglishUS("Match these people to their kickball team:"), definition.Description); Assert.Equal(extensions, definition.Extensions); Assert.Equal(Interaction.Matching, definition.InteractionType); Assert.Equal(new Uri("http://www.example.com/more"), definition.MoreInfo); Assert.Equal(LanguageMap.EnglishUS("Long Fill-in"), definition.Name); Assert.Equal(source, definition.Source); Assert.Equal(target, definition.Target); Assert.Equal(new Uri("http://adlnet.gov/expapi/activities/cmi.interaction"), definition.Type); var idefinition = definition as IMatchingInteractionActivityDefinition; Assert.Equal(new ResponsePattern(pairs), idefinition.CorrectResponsesPattern); Assert.Equal(LanguageMap.EnglishUS("Match these people to their kickball team:"), idefinition.Description); Assert.Equal(extensions, idefinition.Extensions); Assert.Equal(Interaction.Matching, idefinition.InteractionType); Assert.Equal(new Uri("http://www.example.com/more"), idefinition.MoreInfo); Assert.Equal(LanguageMap.EnglishUS("Long Fill-in"), idefinition.Name); Assert.Equal(source, idefinition.Source); Assert.Equal(target, idefinition.Target); Assert.Equal(new Uri("http://adlnet.gov/expapi/activities/cmi.interaction"), idefinition.Type); }
public MatchingInteractionActivityDefinition TestValidInit() { var pairs = new CharacterStringPair(new Dictionary <string, ICharacterString> { { "ben", new CharacterString("3") }, { "chris", new CharacterString("2") }, { "troy", new CharacterString("4") }, { "freddie", new CharacterString("1") }, }); var source = new List <IInteractionComponent> { new InteractionComponent("ben", LanguageMap.EnglishUS("Ben")), new InteractionComponent("chris", LanguageMap.EnglishUS("Chris")), new InteractionComponent("troy", LanguageMap.EnglishUS("Troy")), new InteractionComponent("freddie", LanguageMap.EnglishUS("Freddie")), }; var target = new List <IInteractionComponent> { new InteractionComponent("1", LanguageMap.EnglishUS("Swift Kick in the Grass")), new InteractionComponent("2", LanguageMap.EnglishUS("We got Runs")), new InteractionComponent("3", LanguageMap.EnglishUS("Duck")), new InteractionComponent("4", LanguageMap.EnglishUS("Van Delay Industries")), }; var definition1 = new MatchingInteractionActivityDefinition( new ResponsePattern(pairs), source, target, LanguageMap.EnglishUS("Long Fill-in"), LanguageMap.EnglishUS("Match these people to their kickball team:")); var definition2 = new MatchingInteractionActivityDefinition( new ResponsePattern(pairs), source, target, LanguageMap.EnglishUS("Long Fill-in"), LanguageMap.EnglishUS("Match these people to their kickball team:"), new Uri("http://www.example.com/more")); return(new MatchingInteractionActivityDefinition( new ResponsePattern(pairs), source, target, LanguageMap.EnglishUS("Long Fill-in"), LanguageMap.EnglishUS("Match these people to their kickball team:"), new Uri("http://www.example.com/more"), new Dictionary <Uri, object> { { new Uri("http://www.example.com/ext"), "ext" } })); }
public void TestPairToString() { // todo: this is the example given in the docs for interaction definitions // however, this seems to break from the format // for example, `1:` isn't a valid numeric response, but `1[:]` is // also, the pattern for `lunch` is omitted // we should figure out why this is weird var result = "pong[.]1:[,]dg[.]:10[,]lunch[.]"; var cs2 = new CharacterStringPair(new Dictionary <string, ICharacterString> { { "pong", new CharacterStringNumeric(min: 1) }, { "dg", new CharacterStringNumeric(max: 10) }, { "lunch", new CharacterString(true) }, }); // Assert.Equal(result, cs2.ToString()); Assert.True(true); }
public PerformanceInteractionActivityDefinition TestValidInit() { var steps = new List <IInteractionComponent> { new InteractionComponent("pong", LanguageMap.EnglishUS("Net pong matches won")), new InteractionComponent("dg", LanguageMap.EnglishUS("Strokes over par in disc golf at Liberty")), new InteractionComponent("lunch", LanguageMap.EnglishUS("Lunch having been eaten")), }; var pairs = new CharacterStringPair(new Dictionary <string, ICharacterString> { { "pong", new CharacterStringNumeric(min: 1) }, { "dg", new CharacterStringNumeric(max: 10) }, { "lunch", new CharacterString(true) }, }); var def1 = new PerformanceInteractionActivityDefinition( new ResponsePattern(pairs), steps, LanguageMap.EnglishUS("Appendix C"), LanguageMap.EnglishUS("This interaction measures performance over a day of RS sports:")); var def2 = new PerformanceInteractionActivityDefinition( new ResponsePattern(pairs), steps, LanguageMap.EnglishUS("Appendix C"), LanguageMap.EnglishUS("This interaction measures performance over a day of RS sports:"), new Uri("http://example.com/more")); return(new PerformanceInteractionActivityDefinition( new ResponsePattern(pairs), steps, LanguageMap.EnglishUS("Appendix C"), LanguageMap.EnglishUS("This interaction measures performance over a day of RS sports:"), new Uri("http://example.com/more"), new Dictionary <Uri, object> { { new Uri("http://example.com/ext"), "ext" } })); }