dsl_test 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +8 -0
- data/.rspec +1 -0
- data/CHANGELOG.md +5 -0
- data/Gemfile +8 -0
- data/Gemfile.lock +19 -0
- data/README.md +63 -0
- data/Rakefile +8 -0
- data/bin/console +15 -0
- data/bin/setup +8 -0
- data/csv/usuario1.csv +1 -0
- data/csv/usuario8.csv +1 -0
- data/data/Data.csv +82 -0
- data/dsl_test-0.1.0.gem +0 -0
- data/dsl_test.gemspec +40 -0
- data/images/pregunta_abstraccion_bachillerato.jpg +0 -0
- data/images/pregunta_abstraccion_primero_carrera.jpg +0 -0
- data/images/pregunta_descomposicion_bachillerato.jpg +0 -0
- data/images/pregunta_descomposicion_primero_carrera.jpg +0 -0
- data/images/pregunta_dise/303/261o_bachillerato.jpg +0 -0
- data/images/pregunta_dise/303/261o_primero_carrera.jpg +0 -0
- data/images/pregunta_evaluacion_bachillerato.jpg +0 -0
- data/images/pregunta_evaluacion_primero_carrera.jpg +0 -0
- data/images/pregunta_secuenciacion_bachillerato.jpg +0 -0
- data/images/pregunta_secuenciaci/303/263n_primero_carrera.jpg +0 -0
- data/lib/dsl_test.rb +8 -0
- data/lib/dsl_test/Test.rb +145 -0
- data/lib/dsl_test/version.rb +6 -0
- data/views/Test nivel Bachillerato.html +77 -0
- data/views/Test para primero de carrera.html +77 -0
- data/views/test.html +77 -0
- data/views/test.txt +48 -0
- metadata +118 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 15a5ba4b5a7d359901ebafa672b0971b21d9112d45a9cec8b3767cef7dc22f55
|
4
|
+
data.tar.gz: 38f9b94549184842aca200c4df1f2fd90bd588295c9859c539a68f06fda4ccc6
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: f88fc68f67ed94ac1f78816f4f2973e08e300d822cc4e95183e73c6917eb9c5b764722dc956149bd3beffb11d0f592b38be5348e26fdc4946a3ff911339909b3
|
7
|
+
data.tar.gz: b7487ac5e66e868c2356db560c07461440d76e8a25f4dd42fafabcd5e1779a727e95466dad828487b6625af6621d7848401731ab0985816fa5065953abf4d6ae
|
data/.gitignore
ADDED
data/.rspec
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
--require spec_helper
|
data/CHANGELOG.md
ADDED
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
data/README.md
ADDED
@@ -0,0 +1,63 @@
|
|
1
|
+
# DslTest
|
2
|
+
|
3
|
+
Lenguaje de Dominio Específico para la definición de un test.
|
4
|
+
|
5
|
+
|
6
|
+
## Instalación
|
7
|
+
|
8
|
+
Agregar esta línea a el Gemfile de su aplicación:
|
9
|
+
|
10
|
+
```ruby
|
11
|
+
gem 'dsl_test'
|
12
|
+
```
|
13
|
+
|
14
|
+
Luego ejecute:
|
15
|
+
|
16
|
+
$ bundle install
|
17
|
+
|
18
|
+
O instalelo usted mismo:
|
19
|
+
|
20
|
+
$ gem install dsl_test
|
21
|
+
|
22
|
+
## Uso
|
23
|
+
Esta librería permite la definición de un test, el test cuenta con un título principal.
|
24
|
+
La presentación se refiere al modo en el que el test se presenta, se tiene implementado el formato html para la interacción de las respuestas.
|
25
|
+
El resultado es donde se almacenará el resultado del test para la visualición con el usuario, se tiene implementado las opciones de html, texto plano o xlxs.
|
26
|
+
La pregunta viene definida por el enunciado, el tipo de pregunta,la imagen a la que se tiene que pasar la ruta del archivo jpg para su visualización y las respuestas tipo test.
|
27
|
+
|
28
|
+
```
|
29
|
+
@test_bachillerato = Test.new("Test nivel Bachillerato") do
|
30
|
+
presentacion :presentar => "html"
|
31
|
+
resultado :guardar_resultado_en => "csv"
|
32
|
+
pregunta "¿Cuántas veces se debe repetir la secuencia para llevar al 'Pac-Man' hacia el fantasma por el camino señalado?",
|
33
|
+
:tipo => "Descomposición",
|
34
|
+
:imagen => "images/pregunta_descomposicion_bachillerato.jpg",
|
35
|
+
:respuestas => "\na)x 2\nb)x 1\nc)x 4\nd)x 3",
|
36
|
+
pregunta "Seleccione la respuesta correcta",
|
37
|
+
:tipo => "Abstracción",
|
38
|
+
:imagen => "images/pregunta_abstraccion_bachillerato.jpg",
|
39
|
+
:respuestas => "\na)1495\nb)9541\nc)4519\nd)4195",
|
40
|
+
pregunta "Las instrucciones deben llevar al 'Pac-Man' hacia el fantasma por el camino indicado. Se deben indicar los pasos a seguir con las instrucciones dadas.",
|
41
|
+
:tipo => "Diseño algorítmico",
|
42
|
+
:imagen => "images/pregunta_diseño_bachillerato.jpg",
|
43
|
+
:respuestas => "\na)A,C,A,A\nb)A,B,A,A\nc)A,A,C,A\nd)A,A,B,A",
|
44
|
+
pregunta "¿Qué falta en la siguiente secuencia de órdenes para que ‘Pac-Man’ avance por el camino comiendo el número indicado de fresas?",
|
45
|
+
:tipo => "Secuenciación",
|
46
|
+
:imagen => "images/pregunta_secuenciacion_bachillerato.jpg",
|
47
|
+
:respuestas => "\na)1 vez\nb)2 veces\nc)3 veces\nd)5 veces",
|
48
|
+
pregunta "¿Qué figura resulta de las siguientes instrucciones?",
|
49
|
+
:tipo => "Evaluación",
|
50
|
+
:imagen => "images/pregunta_evaluacion_bachillerato.jpg",
|
51
|
+
:respuestas => "\na)rombo\nb)rectángulo\nc)triángulo\nd)cuadrado",
|
52
|
+
end
|
53
|
+
```
|
54
|
+
|
55
|
+
## Desarrollo
|
56
|
+
|
57
|
+
Después de comprobar el repositorio, ejecute `bin/setup` para instalar las dependencias. También puede ejecutar `bin / console` para obtener un mensaje interactivo que le permitirá experimentar.
|
58
|
+
|
59
|
+
Para instalar esta gema en su máquina local, ejecute `bundle exec rake install`. Para lanzar una nueva versión, actualice el número de versión en `version.rb`, y luego ejecute` bundle exec rake release`, que creará una etiqueta git para la versión, enviará git commits y la etiqueta creada, y empujará el `. gem` archivo a [rubygems.org] (https://rubygems.org).
|
60
|
+
|
61
|
+
## Colaboración
|
62
|
+
|
63
|
+
Los informes de errores y las solicitudes de extracción son bienvenidos en GitHub en https://github.com/alu0100547160/dsl_test.
|
data/Rakefile
ADDED
data/bin/console
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
require "bundler/setup"
|
5
|
+
require "dsl_test"
|
6
|
+
|
7
|
+
# You can add fixtures and/or initialization code here to make experimenting
|
8
|
+
# with your gem easier. You can also use a different console, if you like.
|
9
|
+
|
10
|
+
# (If you use this, don't forget to add pry to your Gemfile!)
|
11
|
+
# require "pry"
|
12
|
+
# Pry.start
|
13
|
+
|
14
|
+
require "irb"
|
15
|
+
IRB.start(__FILE__)
|
data/bin/setup
ADDED
data/csv/usuario1.csv
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
usuario1,17,resa,respb,respc,respd,respe
|
data/csv/usuario8.csv
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
usuario8,17,resa,respb,respc,respd,respe
|
data/data/Data.csv
ADDED
@@ -0,0 +1,82 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
|
14
|
+
|
15
|
+
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
usuario8,17,resa,respb,respc,respd,respe
|
24
|
+
usuario1,17,resa,respb,respc,respd,respe
|
25
|
+
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
|
30
|
+
|
31
|
+
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
|
38
|
+
|
39
|
+
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
|
46
|
+
|
47
|
+
|
48
|
+
|
49
|
+
|
50
|
+
|
51
|
+
|
52
|
+
|
53
|
+
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
|
58
|
+
|
59
|
+
|
60
|
+
|
61
|
+
|
62
|
+
|
63
|
+
|
64
|
+
|
65
|
+
|
66
|
+
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
|
71
|
+
|
72
|
+
|
73
|
+
|
74
|
+
|
75
|
+
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
|
80
|
+
|
81
|
+
|
82
|
+
|
data/dsl_test-0.1.0.gem
ADDED
Binary file
|
data/dsl_test.gemspec
ADDED
@@ -0,0 +1,40 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
# coding: utf-8
|
3
|
+
lib = File.expand_path("../lib", __FILE__)
|
4
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
5
|
+
require "dsl_test/version"
|
6
|
+
|
7
|
+
Gem::Specification.new do |spec|
|
8
|
+
spec.name = "dsl_test"
|
9
|
+
spec.version = DslTest::VERSION
|
10
|
+
spec.authors = ["Lisseth Vergaray Del Aguila"]
|
11
|
+
spec.email = ["alu0100547160@ull.edu.es"]
|
12
|
+
|
13
|
+
spec.summary = "Lenguaje de dominio específico para medir la habilidad del pensamiento computacional"
|
14
|
+
spec.description = "Esta DSL ayuda a definir un test con sus devidas preguntas"
|
15
|
+
spec.homepage = "https://github.com/Computational-Thinking/Test-PC-adultos.git"
|
16
|
+
spec.required_ruby_version = Gem::Requirement.new(">= 2.4.0")
|
17
|
+
|
18
|
+
spec.metadata["allowed_push_host"] = "https://rubygems.org"
|
19
|
+
|
20
|
+
spec.metadata["homepage_uri"] = spec.homepage
|
21
|
+
#spec.metadata["source_code_uri"] = "TODO: Put your gem's public repo URL here."
|
22
|
+
#spec.metadata["changelog_uri"] = "TODO: Put your gem's CHANGELOG.md URL here."
|
23
|
+
|
24
|
+
# Specify which files should be added to the gem when it is released.
|
25
|
+
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
26
|
+
spec.files = Dir.chdir(File.expand_path(__dir__)) do
|
27
|
+
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{\A(?:test|spec|features)/}) }
|
28
|
+
end
|
29
|
+
spec.bindir = "exe"
|
30
|
+
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
31
|
+
spec.require_paths = ["lib"]
|
32
|
+
|
33
|
+
# Uncomment to register a new dependency of your gem
|
34
|
+
spec.add_dependency "bundler", "~> 1.5"
|
35
|
+
spec.add_dependency "rake", "~> 12.3.3"
|
36
|
+
spec.add_development_dependency "rspec", "~> 3.0"
|
37
|
+
|
38
|
+
# For more information and examples about making a new gem, checkout our
|
39
|
+
# guide at: https://bundler.io/guides/creating_gem.html
|
40
|
+
end
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/lib/dsl_test.rb
ADDED
@@ -0,0 +1,145 @@
|
|
1
|
+
class Test
|
2
|
+
|
3
|
+
attr_accessor :name, :preguntas, :tipos, :imagenes, :respuestas, :respuesta_correcta, :formato_presentar, :formato_resultado
|
4
|
+
|
5
|
+
def initialize(name, &block)
|
6
|
+
@name = name
|
7
|
+
@preguntas = []
|
8
|
+
@tipos = []
|
9
|
+
@imagenes = []
|
10
|
+
@respuestas = []
|
11
|
+
@formato_presentar = []
|
12
|
+
@formato_resultado = []
|
13
|
+
|
14
|
+
|
15
|
+
if block_given?
|
16
|
+
if block.arity == 1
|
17
|
+
yield self
|
18
|
+
puts "yield self"
|
19
|
+
else
|
20
|
+
instance_eval(&block)
|
21
|
+
puts "instance_eval"
|
22
|
+
puts block.arity
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
def presentacion( options = {})
|
28
|
+
@formato_presentar << options[:presentar]
|
29
|
+
|
30
|
+
end
|
31
|
+
|
32
|
+
def resultado( options = {})
|
33
|
+
@formato_resultado << options[:guardar_resultado_en]
|
34
|
+
end
|
35
|
+
|
36
|
+
def pregunta(texto, options = {})
|
37
|
+
@preguntas << texto
|
38
|
+
@tipos << options[:tipo]
|
39
|
+
@imagenes << options[:imagen]
|
40
|
+
@respuestas << options[:respuestas]
|
41
|
+
end
|
42
|
+
|
43
|
+
def to_js
|
44
|
+
|
45
|
+
end
|
46
|
+
|
47
|
+
def to_html(name)
|
48
|
+
fileHtml = File.new("./views/#{@name}.html", "w+")
|
49
|
+
fileHtml.puts "<!DOCTYPE html>"
|
50
|
+
fileHtml.puts "<html lang='es-ES'>"
|
51
|
+
fileHtml.puts "<head>"
|
52
|
+
fileHtml.puts "<meta charset='UTF-8'>"
|
53
|
+
fileHtml.puts "<link rel=\"stylesheet\" href=\"test.css\">"
|
54
|
+
fileHtml.puts "<meta http-equiv='X-UA-Compatible' content='IE=edge'>"
|
55
|
+
fileHtml.puts "<meta name='viewport' content='width=device-width, initial-scale=1.0'>"
|
56
|
+
fileHtml.puts "<title>Documento</title>"
|
57
|
+
fileHtml.puts "</head>"
|
58
|
+
fileHtml.puts "<body>"
|
59
|
+
fileHtml.puts "<h1>#@name</h1>"
|
60
|
+
fileHtml.puts "<form action=\"\">"
|
61
|
+
fileHtml.puts "<label for=\"id_usuario\">Identificador:</label>"
|
62
|
+
fileHtml.puts "<input required type=\"text\" id=\"id_usuario\" name=\"id_usuario\">"
|
63
|
+
fileHtml.puts "<label for=\"edad\">Edad:</label>"
|
64
|
+
fileHtml.puts "<input required type=\"text\" id=\"edad\" name=\"edad\">"
|
65
|
+
@preguntas.each_with_index do |pregunta, index|
|
66
|
+
fileHtml.puts "<h3>#{index + 1}) #{pregunta}</h3>"
|
67
|
+
fileHtml.puts "<h3>#{@tipos[index]}</h3>"
|
68
|
+
fileHtml.puts "<img alt='Imagen pregunta #{index + 1}' src='../#{@imagenes[index]}'>"
|
69
|
+
respuestasLocal = @respuestas[index].split("\n")
|
70
|
+
fileHtml.puts "<input type ='radio' id='answer#{index + 1}_1' name='answer1' value='#{respuestasLocal[1]}' required>"
|
71
|
+
fileHtml.puts "<label for=\"answer1\">#{respuestasLocal[1]}</label><br>"
|
72
|
+
fileHtml.puts "<input type='radio' id='answer#{index + 1}_2' name='answer2' value='#{respuestasLocal[2]}' required>"
|
73
|
+
fileHtml.puts "<label for=\"answer2\">#{respuestasLocal[2]}</label><br>"
|
74
|
+
fileHtml.puts "<input type='radio' id='answer#{index + 1}_3' name='answer3' value='#{respuestasLocal[3]}' required>"
|
75
|
+
fileHtml.puts "<label for=\"answer3\">#{respuestasLocal[3]}</label><br>"
|
76
|
+
fileHtml.puts "<input type='radio' id='answer#{index + 1}_4' name='answer4' value='#{respuestasLocal[4]}' required>"
|
77
|
+
fileHtml.puts "<label for=\"answer4\">#{respuestasLocal[4]}</label><br>"
|
78
|
+
end
|
79
|
+
fileHtml.puts "<button type=\"submit\" onclick=\"submitForm(event)\">Enviar</button>"
|
80
|
+
fileHtml.puts "<script type=\"text/javascript\" src=\"./lib/dsl_test/index.js\"></script>"
|
81
|
+
fileHtml.puts "</form>"
|
82
|
+
fileHtml.puts "\t"
|
83
|
+
fileHtml.puts "</body>"
|
84
|
+
fileHtml.puts "</html>"
|
85
|
+
fileHtml.close()
|
86
|
+
|
87
|
+
fileHtml
|
88
|
+
end
|
89
|
+
|
90
|
+
def to_s
|
91
|
+
output = @name
|
92
|
+
output << "\n#{'=' * @name.size}\n\n"
|
93
|
+
@preguntas.each_with_index do |pregunta, index|
|
94
|
+
output << "#{index + 1}) #{pregunta}\n"
|
95
|
+
output << " #{@tipos[index]}\n"
|
96
|
+
output << " #{@imagenes[index]}\n"
|
97
|
+
output << " #{@respuestas[index]}\n"
|
98
|
+
output << "\n"
|
99
|
+
end
|
100
|
+
output
|
101
|
+
end
|
102
|
+
|
103
|
+
def to_texto
|
104
|
+
file = File.new("./views/test.txt", "w+")
|
105
|
+
file.puts "#@name"
|
106
|
+
file.puts "#{'=' * @name.size}\n\n"
|
107
|
+
@preguntas.each_with_index do |pregunta, index|
|
108
|
+
file.puts "#{index + 1}) #{pregunta}\n"
|
109
|
+
file.puts " #{@tipos[index]}\n"
|
110
|
+
file.puts " #{@imagenes[index]}\n"
|
111
|
+
file.puts " #{@respuestas[index]}\n"
|
112
|
+
file.puts "\n"
|
113
|
+
end
|
114
|
+
file
|
115
|
+
end
|
116
|
+
|
117
|
+
def to_csv(id,edad,respuestas = [])
|
118
|
+
filecsv = File.new("./csv/#{id}.csv", "w+")
|
119
|
+
filecsv.write "#{id}"
|
120
|
+
filecsv.write ","
|
121
|
+
filecsv.write "#{edad}"
|
122
|
+
filecsv.write ","
|
123
|
+
respuestas.each_with_index do |x, index|
|
124
|
+
filecsv.write x
|
125
|
+
if index <= respuestas.size - 2
|
126
|
+
filecsv.write ","
|
127
|
+
end
|
128
|
+
end
|
129
|
+
|
130
|
+
filecsv
|
131
|
+
end
|
132
|
+
|
133
|
+
def concatenar_csv
|
134
|
+
data = File.new("./data/Data.csv", "a")
|
135
|
+
#crea array de string con los elementos del directorio
|
136
|
+
archivos = Dir.children("./csv")
|
137
|
+
archivos.each_with_index do |filename,index|
|
138
|
+
File.open("./csv/#{filename}","r") {|file|
|
139
|
+
data.write file.read
|
140
|
+
data.write "\n"
|
141
|
+
}
|
142
|
+
end
|
143
|
+
|
144
|
+
end
|
145
|
+
end
|
@@ -0,0 +1,77 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html lang='es-ES'>
|
3
|
+
<head>
|
4
|
+
<meta charset='UTF-8'>
|
5
|
+
<link rel="stylesheet" href="test.css">
|
6
|
+
<meta http-equiv='X-UA-Compatible' content='IE=edge'>
|
7
|
+
<meta name='viewport' content='width=device-width, initial-scale=1.0'>
|
8
|
+
<title>Documento</title>
|
9
|
+
</head>
|
10
|
+
<body>
|
11
|
+
<h1>Test nivel Bachillerato</h1>
|
12
|
+
<form action="">
|
13
|
+
<label for="id_usuario">Identificador:</label>
|
14
|
+
<input required type="text" id="id_usuario" name="id_usuario">
|
15
|
+
<label for="edad">Edad:</label>
|
16
|
+
<input required type="text" id="edad" name="edad">
|
17
|
+
<h3>1) ¿Cuántas veces se debe repetir la secuencia para llevar al 'Pac-Man' hacia el fantasma por el camino señalado?</h3>
|
18
|
+
<h3>Descomposición</h3>
|
19
|
+
<img alt='Imagen pregunta 1' src='../images/pregunta_descomposicion_bachillerato.jpg'>
|
20
|
+
<input type ='radio' id='answer1_1' name='answer1' value='a)x 2' required>
|
21
|
+
<label for="answer1">a)x 2</label><br>
|
22
|
+
<input type='radio' id='answer1_2' name='answer2' value='b)x 1' required>
|
23
|
+
<label for="answer2">b)x 1</label><br>
|
24
|
+
<input type='radio' id='answer1_3' name='answer3' value='c)x 4' required>
|
25
|
+
<label for="answer3">c)x 4</label><br>
|
26
|
+
<input type='radio' id='answer1_4' name='answer4' value='d)x 3' required>
|
27
|
+
<label for="answer4">d)x 3</label><br>
|
28
|
+
<h3>2) Seleccione la respuesta correcta</h3>
|
29
|
+
<h3>Abstracción</h3>
|
30
|
+
<img alt='Imagen pregunta 2' src='../images/pregunta_abstraccion_bachillerato.jpg'>
|
31
|
+
<input type ='radio' id='answer2_1' name='answer1' value='a)1495' required>
|
32
|
+
<label for="answer1">a)1495</label><br>
|
33
|
+
<input type='radio' id='answer2_2' name='answer2' value='b)9541' required>
|
34
|
+
<label for="answer2">b)9541</label><br>
|
35
|
+
<input type='radio' id='answer2_3' name='answer3' value='c)4519' required>
|
36
|
+
<label for="answer3">c)4519</label><br>
|
37
|
+
<input type='radio' id='answer2_4' name='answer4' value='d)4195' required>
|
38
|
+
<label for="answer4">d)4195</label><br>
|
39
|
+
<h3>3) Las instrucciones deben llevar al 'Pac-Man' hacia el fantasma por el camino indicado. Se deben indicar los pasos a seguir con las instrucciones dadas.</h3>
|
40
|
+
<h3>Diseño algorítmico</h3>
|
41
|
+
<img alt='Imagen pregunta 3' src='../images/pregunta_diseño_bachillerato.jpg'>
|
42
|
+
<input type ='radio' id='answer3_1' name='answer1' value='a)A,C,A,A' required>
|
43
|
+
<label for="answer1">a)A,C,A,A</label><br>
|
44
|
+
<input type='radio' id='answer3_2' name='answer2' value='b)A,B,A,A' required>
|
45
|
+
<label for="answer2">b)A,B,A,A</label><br>
|
46
|
+
<input type='radio' id='answer3_3' name='answer3' value='c)A,A,C,A' required>
|
47
|
+
<label for="answer3">c)A,A,C,A</label><br>
|
48
|
+
<input type='radio' id='answer3_4' name='answer4' value='d)A,A,B,A' required>
|
49
|
+
<label for="answer4">d)A,A,B,A</label><br>
|
50
|
+
<h3>4) ¿Qué falta en la siguiente secuencia de órdenes para que ‘Pac-Man’ avance por el camino comiendo el número indicado de fresas?</h3>
|
51
|
+
<h3>Secuenciación</h3>
|
52
|
+
<img alt='Imagen pregunta 4' src='../images/pregunta_secuenciacion_bachillerato.jpg'>
|
53
|
+
<input type ='radio' id='answer4_1' name='answer1' value='a)1 vez' required>
|
54
|
+
<label for="answer1">a)1 vez</label><br>
|
55
|
+
<input type='radio' id='answer4_2' name='answer2' value='b)2 veces' required>
|
56
|
+
<label for="answer2">b)2 veces</label><br>
|
57
|
+
<input type='radio' id='answer4_3' name='answer3' value='c)3 veces' required>
|
58
|
+
<label for="answer3">c)3 veces</label><br>
|
59
|
+
<input type='radio' id='answer4_4' name='answer4' value='d)5 veces' required>
|
60
|
+
<label for="answer4">d)5 veces</label><br>
|
61
|
+
<h3>5) ¿Qué figura resulta de las siguientes instrucciones?</h3>
|
62
|
+
<h3>Evaluación</h3>
|
63
|
+
<img alt='Imagen pregunta 5' src='../images/pregunta_evaluacion_bachillerato.jpg'>
|
64
|
+
<input type ='radio' id='answer5_1' name='answer1' value='a)rombo' required>
|
65
|
+
<label for="answer1">a)rombo</label><br>
|
66
|
+
<input type='radio' id='answer5_2' name='answer2' value='b)rectángulo' required>
|
67
|
+
<label for="answer2">b)rectángulo</label><br>
|
68
|
+
<input type='radio' id='answer5_3' name='answer3' value='c)triángulo' required>
|
69
|
+
<label for="answer3">c)triángulo</label><br>
|
70
|
+
<input type='radio' id='answer5_4' name='answer4' value='d)cuadrado' required>
|
71
|
+
<label for="answer4">d)cuadrado</label><br>
|
72
|
+
<button type="submit" onclick="submitForm(event)">Enviar</button>
|
73
|
+
<script type="text/javascript" src="./lib/dsl_test/index.js"></script>
|
74
|
+
</form>
|
75
|
+
|
76
|
+
</body>
|
77
|
+
</html>
|
@@ -0,0 +1,77 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html lang='es-ES'>
|
3
|
+
<head>
|
4
|
+
<meta charset='UTF-8'>
|
5
|
+
<link rel="stylesheet" href="test.css">
|
6
|
+
<meta http-equiv='X-UA-Compatible' content='IE=edge'>
|
7
|
+
<meta name='viewport' content='width=device-width, initial-scale=1.0'>
|
8
|
+
<title>Documento</title>
|
9
|
+
</head>
|
10
|
+
<body>
|
11
|
+
<h1>Test para primero de carrera</h1>
|
12
|
+
<form action="">
|
13
|
+
<label for="id_usuario">Identificador:</label>
|
14
|
+
<input required type="text" id="id_usuario" name="id_usuario">
|
15
|
+
<label for="edad">Edad:</label>
|
16
|
+
<input required type="text" id="edad" name="edad">
|
17
|
+
<h3>1) Las instrucciones deben llevar al ‘Pac-Man’ hacia el fantasma por el camino indicado, ¿En qué paso de las instrucciones hay un error?</h3>
|
18
|
+
<h3>Descomposición</h3>
|
19
|
+
<img alt='Imagen pregunta 1' src='../images/pregunta_descomposicion_primero_carrera.jpg'>
|
20
|
+
<input type ='radio' id='answer1_1' name='answer1' value='a)Paso D' required>
|
21
|
+
<label for="answer1">a)Paso D</label><br>
|
22
|
+
<input type='radio' id='answer1_2' name='answer2' value='b) Paso A' required>
|
23
|
+
<label for="answer2">b) Paso A</label><br>
|
24
|
+
<input type='radio' id='answer1_3' name='answer3' value='c)Paso B' required>
|
25
|
+
<label for="answer3">c)Paso B</label><br>
|
26
|
+
<input type='radio' id='answer1_4' name='answer4' value='d)Paso C' required>
|
27
|
+
<label for="answer4">d)Paso C</label><br>
|
28
|
+
<h3>2) Seleccione la respuesta correcta</h3>
|
29
|
+
<h3>Abstracción</h3>
|
30
|
+
<img alt='Imagen pregunta 2' src='../images/pregunta_abstraccion_primero_carrera.jpg'>
|
31
|
+
<input type ='radio' id='answer2_1' name='answer1' value='a)☼▼↕ ►@◄↕▼☼' required>
|
32
|
+
<label for="answer1">a)☼▼↕ ►@◄↕▼☼</label><br>
|
33
|
+
<input type='radio' id='answer2_2' name='answer2' value='b)RECONOCER' required>
|
34
|
+
<label for="answer2">b)RECONOCER</label><br>
|
35
|
+
<input type='radio' id='answer2_3' name='answer3' value='c)@◄↕▼☼☼▼↕ ►' required>
|
36
|
+
<label for="answer3">c)@◄↕▼☼☼▼↕ ►</label><br>
|
37
|
+
<input type='radio' id='answer2_4' name='answer4' value='d)ERCONOCRE' required>
|
38
|
+
<label for="answer4">d)ERCONOCRE</label><br>
|
39
|
+
<h3>3) Se debe indicar cuántas y qué instrucciones se deben seguir para llevar al ‘Pac-Man’ hacia el fantasma.</h3>
|
40
|
+
<h3>Diseño algorítmico</h3>
|
41
|
+
<img alt='Imagen pregunta 3' src='../images/pregunta_diseño_primero_carrera.jpg'>
|
42
|
+
<input type ='radio' id='answer3_1' name='answer1' value='a)↓→ x 4' required>
|
43
|
+
<label for="answer1">a)↓→ x 4</label><br>
|
44
|
+
<input type='radio' id='answer3_2' name='answer2' value='b)→↓ x 5' required>
|
45
|
+
<label for="answer2">b)→↓ x 5</label><br>
|
46
|
+
<input type='radio' id='answer3_3' name='answer3' value='c)↓↓ x 5' required>
|
47
|
+
<label for="answer3">c)↓↓ x 5</label><br>
|
48
|
+
<input type='radio' id='answer3_4' name='answer4' value='d)↓→ x 5' required>
|
49
|
+
<label for="answer4">d)↓→ x 5</label><br>
|
50
|
+
<h3>4) ¿Qué instrucciones llevan al ‘Pac-Man’ hacia el fantasma por el camino marcado?</h3>
|
51
|
+
<h3>Secuenciación</h3>
|
52
|
+
<img alt='Imagen pregunta 4' src='../images/pregunta_secuenciación_primero_carrera.jpg'>
|
53
|
+
<input type ='radio' id='answer4_1' name='answer1' value='a) A' required>
|
54
|
+
<label for="answer1">a) A</label><br>
|
55
|
+
<input type='radio' id='answer4_2' name='answer2' value='b) B' required>
|
56
|
+
<label for="answer2">b) B</label><br>
|
57
|
+
<input type='radio' id='answer4_3' name='answer3' value='c) C' required>
|
58
|
+
<label for="answer3">c) C</label><br>
|
59
|
+
<input type='radio' id='answer4_4' name='answer4' value='d) D' required>
|
60
|
+
<label for="answer4">d) D</label><br>
|
61
|
+
<h3>5) ¿Qué figura resulta de ejecutar las instrucciones, teniendo en cuenta la posición del niño ?</h3>
|
62
|
+
<h3>Evaluación</h3>
|
63
|
+
<img alt='Imagen pregunta 5' src='../images/pregunta_evaluacion_primero_carrera.jpg'>
|
64
|
+
<input type ='radio' id='answer5_1' name='answer1' value='a) Círculo' required>
|
65
|
+
<label for="answer1">a) Círculo</label><br>
|
66
|
+
<input type='radio' id='answer5_2' name='answer2' value='b) Cuadrado' required>
|
67
|
+
<label for="answer2">b) Cuadrado</label><br>
|
68
|
+
<input type='radio' id='answer5_3' name='answer3' value='c) Triángulo' required>
|
69
|
+
<label for="answer3">c) Triángulo</label><br>
|
70
|
+
<input type='radio' id='answer5_4' name='answer4' value='d) Rombo' required>
|
71
|
+
<label for="answer4">d) Rombo</label><br>
|
72
|
+
<button type="submit" onclick="submitForm(event)">Enviar</button>
|
73
|
+
<script type="text/javascript" src="./lib/dsl_test/index.js"></script>
|
74
|
+
</form>
|
75
|
+
|
76
|
+
</body>
|
77
|
+
</html>
|
data/views/test.html
ADDED
@@ -0,0 +1,77 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html lang='es-ES'>
|
3
|
+
<head>
|
4
|
+
<meta charset='UTF-8'>
|
5
|
+
<link rel="stylesheet" href="test.css">
|
6
|
+
<meta http-equiv='X-UA-Compatible' content='IE=edge'>
|
7
|
+
<meta name='viewport' content='width=device-width, initial-scale=1.0'>
|
8
|
+
<title>Documento</title>
|
9
|
+
</head>
|
10
|
+
<body>
|
11
|
+
<h1>Test nivel Bachillerato</h1>
|
12
|
+
<form action="">
|
13
|
+
<label for="id_usuario">Identificador:</label>
|
14
|
+
<input required type="text" id="id_usuario" name="id_usuario">
|
15
|
+
<label for="edad">Edad:</label>
|
16
|
+
<input required type="text" id="edad" name="edad">
|
17
|
+
<h3>1) ¿Cuántas veces se debe repetir la secuencia para llevar al 'Pac-Man' hacia el fantasma por el camino señalado?</h3>
|
18
|
+
<h3>Descomposición</h3>
|
19
|
+
<img alt='Imagen pregunta 1' src='../images/pregunta_descomposicion_bachillerato.jpg'>
|
20
|
+
<input type ='radio' id='answer1_1' name='answer1' value='a)x 2' required>
|
21
|
+
<label for="answer1">a)x 2</label><br>
|
22
|
+
<input type='radio' id='answer1_2' name='answer2' value='b)x 1' required>
|
23
|
+
<label for="answer2">b)x 1</label><br>
|
24
|
+
<input type='radio' id='answer1_3' name='answer3' value='c)x 4' required>
|
25
|
+
<label for="answer3">c)x 4</label><br>
|
26
|
+
<input type='radio' id='answer1_4' name='answer4' value='d)x 3' required>
|
27
|
+
<label for="answer4">d)x 3</label><br>
|
28
|
+
<h3>2) Seleccione la respuesta correcta</h3>
|
29
|
+
<h3>Abstracción</h3>
|
30
|
+
<img alt='Imagen pregunta 2' src='../images/pregunta_abstraccion_bachillerato.jpg'>
|
31
|
+
<input type ='radio' id='answer2_1' name='answer1' value='a)1495' required>
|
32
|
+
<label for="answer1">a)1495</label><br>
|
33
|
+
<input type='radio' id='answer2_2' name='answer2' value='b)9541' required>
|
34
|
+
<label for="answer2">b)9541</label><br>
|
35
|
+
<input type='radio' id='answer2_3' name='answer3' value='c)4519' required>
|
36
|
+
<label for="answer3">c)4519</label><br>
|
37
|
+
<input type='radio' id='answer2_4' name='answer4' value='d)4195' required>
|
38
|
+
<label for="answer4">d)4195</label><br>
|
39
|
+
<h3>3) Las instrucciones deben llevar al 'Pac-Man' hacia el fantasma por el camino indicado. Se deben indicar los pasos a seguir con las instrucciones dadas.</h3>
|
40
|
+
<h3>Diseño algorítmico</h3>
|
41
|
+
<img alt='Imagen pregunta 3' src='../images/pregunta_diseño_bachillerato.jpg'>
|
42
|
+
<input type ='radio' id='answer3_1' name='answer1' value='a)A,C,A,A' required>
|
43
|
+
<label for="answer1">a)A,C,A,A</label><br>
|
44
|
+
<input type='radio' id='answer3_2' name='answer2' value='b)A,B,A,A' required>
|
45
|
+
<label for="answer2">b)A,B,A,A</label><br>
|
46
|
+
<input type='radio' id='answer3_3' name='answer3' value='c)A,A,C,A' required>
|
47
|
+
<label for="answer3">c)A,A,C,A</label><br>
|
48
|
+
<input type='radio' id='answer3_4' name='answer4' value='d)A,A,B,A' required>
|
49
|
+
<label for="answer4">d)A,A,B,A</label><br>
|
50
|
+
<h3>4) ¿Qué falta en la siguiente secuencia de órdenes para que ‘Pac-Man’ avance por el camino comiendo el número indicado de fresas?</h3>
|
51
|
+
<h3>Secuenciación</h3>
|
52
|
+
<img alt='Imagen pregunta 4' src='../images/pregunta_secuenciacion_bachillerato.jpg'>
|
53
|
+
<input type ='radio' id='answer4_1' name='answer1' value='a)1 vez' required>
|
54
|
+
<label for="answer1">a)1 vez</label><br>
|
55
|
+
<input type='radio' id='answer4_2' name='answer2' value='b)2 veces' required>
|
56
|
+
<label for="answer2">b)2 veces</label><br>
|
57
|
+
<input type='radio' id='answer4_3' name='answer3' value='c)3 veces' required>
|
58
|
+
<label for="answer3">c)3 veces</label><br>
|
59
|
+
<input type='radio' id='answer4_4' name='answer4' value='d)5 veces' required>
|
60
|
+
<label for="answer4">d)5 veces</label><br>
|
61
|
+
<h3>5) ¿Qué figura resulta de las siguientes instrucciones?</h3>
|
62
|
+
<h3>Evaluación</h3>
|
63
|
+
<img alt='Imagen pregunta 5' src='../images/pregunta_evaluacion_bachillerato.jpg'>
|
64
|
+
<input type ='radio' id='answer5_1' name='answer1' value='a)rombo' required>
|
65
|
+
<label for="answer1">a)rombo</label><br>
|
66
|
+
<input type='radio' id='answer5_2' name='answer2' value='b)rectángulo' required>
|
67
|
+
<label for="answer2">b)rectángulo</label><br>
|
68
|
+
<input type='radio' id='answer5_3' name='answer3' value='c)triángulo' required>
|
69
|
+
<label for="answer3">c)triángulo</label><br>
|
70
|
+
<input type='radio' id='answer5_4' name='answer4' value='d)cuadrado' required>
|
71
|
+
<label for="answer4">d)cuadrado</label><br>
|
72
|
+
<button type="submit" onclick="submitForm(event)">Enviar</button>
|
73
|
+
<script type="text/javascript" src="./lib/dsl_test/index.js"></script>
|
74
|
+
</form>
|
75
|
+
|
76
|
+
</body>
|
77
|
+
</html>
|
data/views/test.txt
ADDED
@@ -0,0 +1,48 @@
|
|
1
|
+
Test nivel Bachillerato
|
2
|
+
=======================
|
3
|
+
|
4
|
+
1) ¿Cuántas veces se debe repetir la secuencia para llevar al 'Pac-Man' hacia el fantasma por el camino señalado?
|
5
|
+
Descomposición
|
6
|
+
images/pregunta_descomposicion_bachillerato.jpg
|
7
|
+
|
8
|
+
a)x 2
|
9
|
+
b)x 1
|
10
|
+
c)x 4
|
11
|
+
d)x 3
|
12
|
+
|
13
|
+
2) Seleccione la respuesta correcta
|
14
|
+
Abstracción
|
15
|
+
images/pregunta_abstraccion_bachillerato.jpg
|
16
|
+
|
17
|
+
a)1495
|
18
|
+
b)9541
|
19
|
+
c)4519
|
20
|
+
d)4195
|
21
|
+
|
22
|
+
3) Las instrucciones deben llevar al 'Pac-Man' hacia el fantasma por el camino indicado. Se deben indicar los pasos a seguir con las instrucciones dadas.
|
23
|
+
Diseño algorítmico
|
24
|
+
images/pregunta_diseño_bachillerato.jpg
|
25
|
+
|
26
|
+
a)A,C,A,A
|
27
|
+
b)A,B,A,A
|
28
|
+
c)A,A,C,A
|
29
|
+
d)A,A,B,A
|
30
|
+
|
31
|
+
4) ¿Qué falta en la siguiente secuencia de órdenes para que ‘Pac-Man’ avance por el camino comiendo el número indicado de fresas?
|
32
|
+
Secuenciación
|
33
|
+
images/pregunta_secuenciacion_bachillerato.jpg
|
34
|
+
|
35
|
+
a)1 vez
|
36
|
+
b)2 veces
|
37
|
+
c)3 veces
|
38
|
+
d)5 veces
|
39
|
+
|
40
|
+
5) ¿Qué figura resulta de las siguientes instrucciones?
|
41
|
+
Evaluación
|
42
|
+
images/pregunta_evaluacion_bachillerato.jpg
|
43
|
+
|
44
|
+
a)rombo
|
45
|
+
b)rectángulo
|
46
|
+
c)triángulo
|
47
|
+
d)cuadrado
|
48
|
+
|
metadata
ADDED
@@ -0,0 +1,118 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: dsl_test
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.2.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Lisseth Vergaray Del Aguila
|
8
|
+
autorequire:
|
9
|
+
bindir: exe
|
10
|
+
cert_chain: []
|
11
|
+
date: 2021-03-22 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.5'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.5'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 12.3.3
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 12.3.3
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rspec
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '3.0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '3.0'
|
55
|
+
description: Esta DSL ayuda a definir un test con sus devidas preguntas
|
56
|
+
email:
|
57
|
+
- alu0100547160@ull.edu.es
|
58
|
+
executables: []
|
59
|
+
extensions: []
|
60
|
+
extra_rdoc_files: []
|
61
|
+
files:
|
62
|
+
- ".gitignore"
|
63
|
+
- ".rspec"
|
64
|
+
- CHANGELOG.md
|
65
|
+
- Gemfile
|
66
|
+
- Gemfile.lock
|
67
|
+
- README.md
|
68
|
+
- Rakefile
|
69
|
+
- bin/console
|
70
|
+
- bin/setup
|
71
|
+
- csv/usuario1.csv
|
72
|
+
- csv/usuario8.csv
|
73
|
+
- data/Data.csv
|
74
|
+
- dsl_test-0.1.0.gem
|
75
|
+
- dsl_test.gemspec
|
76
|
+
- images/pregunta_abstraccion_bachillerato.jpg
|
77
|
+
- images/pregunta_abstraccion_primero_carrera.jpg
|
78
|
+
- images/pregunta_descomposicion_bachillerato.jpg
|
79
|
+
- images/pregunta_descomposicion_primero_carrera.jpg
|
80
|
+
- images/pregunta_diseño_bachillerato.jpg
|
81
|
+
- images/pregunta_diseño_primero_carrera.jpg
|
82
|
+
- images/pregunta_evaluacion_bachillerato.jpg
|
83
|
+
- images/pregunta_evaluacion_primero_carrera.jpg
|
84
|
+
- images/pregunta_secuenciacion_bachillerato.jpg
|
85
|
+
- images/pregunta_secuenciación_primero_carrera.jpg
|
86
|
+
- lib/dsl_test.rb
|
87
|
+
- lib/dsl_test/Test.rb
|
88
|
+
- lib/dsl_test/version.rb
|
89
|
+
- views/Test nivel Bachillerato.html
|
90
|
+
- views/Test para primero de carrera.html
|
91
|
+
- views/test.html
|
92
|
+
- views/test.txt
|
93
|
+
homepage: https://github.com/Computational-Thinking/Test-PC-adultos.git
|
94
|
+
licenses: []
|
95
|
+
metadata:
|
96
|
+
allowed_push_host: https://rubygems.org
|
97
|
+
homepage_uri: https://github.com/Computational-Thinking/Test-PC-adultos.git
|
98
|
+
post_install_message:
|
99
|
+
rdoc_options: []
|
100
|
+
require_paths:
|
101
|
+
- lib
|
102
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
103
|
+
requirements:
|
104
|
+
- - ">="
|
105
|
+
- !ruby/object:Gem::Version
|
106
|
+
version: 2.4.0
|
107
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
108
|
+
requirements:
|
109
|
+
- - ">="
|
110
|
+
- !ruby/object:Gem::Version
|
111
|
+
version: '0'
|
112
|
+
requirements: []
|
113
|
+
rubyforge_project:
|
114
|
+
rubygems_version: 2.7.6
|
115
|
+
signing_key:
|
116
|
+
specification_version: 4
|
117
|
+
summary: Lenguaje de dominio específico para medir la habilidad del pensamiento computacional
|
118
|
+
test_files: []
|