summaryrefslogtreecommitdiff
path: root/docs-xml
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2012-09-26 02:57:16 +0200
committerJelmer Vernooij <jelmer@samba.org>2012-10-19 09:10:13 +0200
commitd2f8fe855d0705faf216714cf147038563c0ba7e (patch)
treed2f66c2457f3ea9c6c8a4121e47a3fe80b0cdc07 /docs-xml
parent47902702b3e6390de05f8fca2bc457936af9f5c1 (diff)
downloadsamba-d2f8fe855d0705faf216714cf147038563c0ba7e.tar.gz
tests: Convert find_missing_doc into a unit test.
Diffstat (limited to 'docs-xml')
-rw-r--r--docs-xml/Makefile3
-rwxr-xr-xdocs-xml/scripts/find_missing_doc83
2 files changed, 1 insertions, 85 deletions
diff --git a/docs-xml/Makefile b/docs-xml/Makefile
index b322bed8dc5..f9c60d0fab9 100644
--- a/docs-xml/Makefile
+++ b/docs-xml/Makefile
@@ -263,8 +263,7 @@ $(PEARSONDIR)/%.report.html: $(PEARSONDIR)/%.xml
cd $(<D) && $(XMLLINT) --xinclude --noent --postvalid --noout $(<F)
# Find undocumented parameters
-undocumented: $(SMBDOTCONFDOC)/parameters.all.xml scripts/find_missing_doc scripts/find_missing_manpages
- $(PERL) scripts/find_missing_doc $(SRCDIR)
+undocumented: $(SMBDOTCONFDOC)/parameters.all.xml scripts/find_missing_manpages
$(PERL) scripts/find_missing_manpages $(SRCDIR)/source3
samples: $(DOCBOOKDIR)/Samba3-HOWTO.xml xslt/extract-examples.xsl scripts/indent-smb.conf.pl
diff --git a/docs-xml/scripts/find_missing_doc b/docs-xml/scripts/find_missing_doc
deleted file mode 100755
index d75ef8dcc72..00000000000
--- a/docs-xml/scripts/find_missing_doc
+++ /dev/null
@@ -1,83 +0,0 @@
-#!/usr/bin/python
-
-# Copyright (C) 2007,2012 Jelmer Vernooij <jelmer@samba.org>
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-
-import optparse
-import os
-import re
-
-parser = optparse.OptionParser("source_dir")
-
-(opts, args) = parser.parse_args()
-
-if len(args) == 1:
- topdir = args[0]
-else:
- topdir = "."
-
-# Reading links from manpage
-
-curdir = os.getcwd()
-doc = {}
-
-os.chdir("smbdotconf");
-
-f = os.popen("xsltproc --xinclude --param smb.context ALL generate-context.xsl parameters.all.xml", "r")
-try:
- for l in f.readlines():
- m = re.match('<samba:parameter .*?name="([^"]*?)"', l)
- if m:
- name = m.group(1).replace(" ", "")
- doc[name] = False
-finally:
- f.close()
-
-os.chdir(curdir)
-
-# Reading entries from source code
-
-f = open(os.path.join(topdir, "lib/param/param_table.c"), "r")
-
-# burn through the preceding lines
-while True:
- l = f.readline()
- if l.startswith("static struct parm_struct parm_table"):
- break
-
-for l in f.readlines():
- if re.match("^\s*\}\;\s*$", l):
- break
- # pull in the param names only
- if re.match(".*P_SEPARATOR.*", l):
- continue
- m = re.match("\s*\.label\s*=\s*\"(.*)\".*", l)
- if not m:
- continue
-
- name = m.group(1)
- name = name.replace(" ", "")
-
- if name.lower() in doc:
- doc[name.lower()] = True
- else:
- print "'%s' is not documented" % name
-f.close()
-
-# Try to find missing references
-for key in doc.keys():
- if doc[key] == "FOUND":
- print "'$_' is documented but is not a configuration option"